L'objectif de ce script est de créer un utilisateur dans le domaine SSO de vCenter
<#
. AUTEUR : Antoine JOVELIN
. FONCTION : Créer un utilisateur dans le domaine SSO de vCenter
. UTILISATION :
- Lancer le script
#>
cls
# Declaration des fonctions
$herestring = @"
***** L'INSTALLATION A ECHOUEE *****
POUR INSTALLER LE MODULE VMWARE.VSPHERE.SSOADMIN :
1- RECUPERER LE MODULE DEPUIS CE LIEN : "https://psg-prod-centralus.cloudapp.net/packages/VMware.vSphere.SsoAdmin/"
2- COPIER LE CONTENU DE L'ARCHIVE DANS "C:\Users\NOM_DU_USER\Documents\WindowsPowerShell\Modules"
3- RELANCER LE SCRIPT
"@
function verifSsoAdmin {
if($MyModules.name -contains "VMware.vSphere.SsoAdmin"){
Write-Host "Le module VMware.vSphere.SsoAdmin est installé. Le script va continuer" -ForegroundColor Green
}else{
Write-Host "Le module VMware.vSphere.SsoAdmin n'est PAS installé. Le script ne pourra pas continuer" -ForegroundColor Yellow
do{
$reponse = Read-Host " Installer le module VMware.vSphere.SsoAdmin ? [oui/non] "
Switch ($reponse){
oui{
Install-Module -name VMware.vSphere.SsoAdmin -Scope CurrentUser -Confirm:$false -Force
if($MyModules -notcontains "VMware.vSphere.SsoAdmin"){
Write-Host $herestring -ForegroundColor red
sleep 3
Write-Host " Fin du script dans quelques secondes" -ForegroundColor yellow
1..5 | Sort-Object -Descending | %{Start-Sleep -Seconds 1;Write-Host " $_ " -ForegroundColor yellow}
Write-Host;
exit
}
}
non{
Write-Host " Fin du script dans quelques secondes" -ForegroundColor yellow
1..5 | Sort-Object -Descending | %{Start-Sleep -Seconds 1;Write-Host " $_ " -ForegroundColor yellow}
Write-Host;
exit
}
}
}while(($reponse -ne "oui") -and ($reponse -ne "non"))
}
}
function vcenter-SSOconnect{
$VC = Read-Host -Prompt " Entrer le FQDN de vCenter "
$cred = Get-Credential
Write-Host;
Write-Host -ForegroundColor cyan "Connexion au domaine SSO de $VC. Merci de patienter..."
Connect-SsoAdminServer -Server $VC -User $cred.UserName -Password $cred.Password -SkipCertificateCheck
Write-Host;
}
function vcenter-SSOdisconnect{
Write-Host;
Write-Host -ForegroundColor cyan "Déconnexion du domaine SSO..."
Disconnect-SsoAdminServer -Server $Global:DefaultSSoAdminServers
Write-Host;
}
# Verification des modules et connexion au domaine SSO
Write-Host " Vérification des modules nécessaires " -ForegroundColor Cyan
1..3 | Sort-Object -Descending | %{Start-Sleep -Seconds 1}
$MyModules = Get-Module -ListAvailable | select name
Write-Host;
verifSsoAdmin
Write-Host;
vcenter-SSOconnect
# Debut du script
Write-Host;
Write-Host -fore cyan "
#######################################################
# Créer un utilisateur dans le domaine SSO de vCenter #
#######################################################"
Write-Host;
$UserName = Read-Host -Prompt " Entrer le compte de l'utilisateur "
$UserPassword = Read-Host -Prompt " Entrer le Password de l'utilisateur (Doit avoir entre 8-20 Car, Minimum 1 Maj, 1 Num et 1 Car Special) "
$UserFirstName = Read-Host -Prompt " Entrer le Prenom de l'utilisateur "
$UserLastName = Read-Host -Prompt " Entrer le Nom de famille de l'utilisateur "
$UserDescription = Read-Host -Prompt " Entrer une description "
Write-Host;
New-SsoPersonUser -user $UserName -Password $UserPassword -FirstName $UserFirstName -LastName $UserLastName -Description $UserDescription
# Fin du script et deconnexion du domaine SSO
Write-Host;
vcenter-SSOdisconnect