[SharePoint 2013] [PS] Comptes Gérés à la volée
Tout d'abord, créer les profils dans AD + les fichiers sécurisés de sauvegarde des credentials:
#Utilisation: créer un compte AD à la volée et sauvegarder ses credentials dans un fichier texte
#Usage: .\CreateUserandCred.ps1 -user <SamAccountName> -pwd <userpassword> -domain <userdomain> -credfile <cred file full path>
#puis dans Sharepoint: .\New-SPManagedAccount_cred.ps1 <SamAccountName>@<userdomain> <SamAccountName cred file full path>
#exemple:
#cd C:\deploy
#.\CreateUserandCred.ps1 -user papy -pwd P@ssw0rd!?12345 -domain contoso.com -credfile C:\deploy\papy.txt
param($user,$pwd,$domain,$credfile)
Set-ExecutionPolicy unrestricted -force
[object] $objCred = $null
$UserPrincipalName = "$user@$domain"
$password = ConvertTo-SecureString -String $pwd -AsPlainText -Force
New-ADUser -Name $user -SamAccountName $user -UserPrincipalName $UserPrincipalName -Type "User"
Set-ADAccountPassword -Identity $user -NewPassword $password -Reset
Enable-ADAccount -Identity $user
Set-ADAccountControl -Identity $user -CannotChangePassword $true -PasswordNeverExpires $true
Set-ADUser -Identity $user -ChangePasswordAtLogon $false
[System.Security.SecureString] $strPass = ConvertTo-SecureString -String $pwd -AsPlainText -Force
$objCred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList ($UserPrincipalName, $strPass)
$objCred.Password | ConvertFrom-SecureString | Set-Content $credfile
Puis, sur le serveur SharePoint 2013 dans le Powershell SharePoint, importer les comptes à partir des fichiers crédentials associés:
#Utilisation: créer un compte géré SharePoint à la volée et à partir de ses credentials sauvegardés au préalable dans un fichier texte donné.
#Usage: dans Sharepoint: .\New-SPManagedAccount_cred.ps1 <SamAccountName>@<userdomain> <SamAccountName cred file full path>
#exemple:
#cd C:\deploy
#.\New-SPManagedAccount_cred.ps1 papy@contoso.com C:\deploy\papy.txt
Param($User,$File)
Set-ExecutionPolicy unrestricted -force
$credential = ""
$password = Get-Content $File | ConvertTo-SecureString
$credential = New-Object System.Management.Automation.PsCredential($user,$password)
New-SPManagedAccount –Credential $credential
Pour aller plus loin:
Utiliser un fichier csv contenant les infos:
- user
- password
- domain
- fullpath fichier de stockage des creds
Et là vous pouvez créer pleins pleins de chose "à la volée"... plutôt que le prompt de login/mot de passe (get-credential) à chaque fois....
/image%2F0881799%2F20140610%2Fob_a8c7fe_logo2.jpg)
Commenter cet article