PowerShell -> Script to add users accounts / script pour ajouter des comptes utilisateurs

Bonjour

Microsoft fournit avec Windows 2008 R2 son propre module PowerShell pour Active Directory.
Pour ceux qui ne dispose pas de contrôleurs de domaine Windows 2008 R2, vous pouvez utiliser le module PowerShell Quest pour Active Directory (ActiveRoles Management Shell for Active Directory).
Il est gratuit et téléchargeable à cette adresse :
http://www.quest.com/powershell/activeroles-server.aspx
Ce dernier fonctionne très bien (testé de très nombreuses fois).
Pour les amateurs de scripts, ci dessous un exemple de code pour créer des comptes utilisateurs avec la commande PowerShell Quest New-QADUser et SET-QADuser.
Pour plus d’informations sur la commande New-SQADuser : Get-Help New-QADUser -examples
Comme on n’a pas toutes les options avec la commande New-QADuser je fais un pipe avec la commande Set-QADuser.

# Create 100 accounts with this caracteristics :
# Expiration date : 1er aout 2011.
# Password never expire and no change of password at first logon.
# Differents passwords for each account.
# Connexion to DC
Connect-QADService nom_contrôleur_domaine
# Variable
$boucle = 1;
$nbaccounttocreate = 101;
$ParentContainer = “OU=Users,OU=FR,DC=MSREPORT,DC=LOCAL”;
$description = “Test Account”;
$EmployeeType = “System”;
$StreetAddress = “route des Gardes”;
$PostalCode = “92000”;
$City = “Meudon”;
$Company = “Msreport France”;
do
{
        $DisplayName = “it_msreport” + $boucle;
        $SamAccountname = “it_msreport” + $boucle;
        $UserPrincipalName = “$SamAccountname” + “@msreport.local”;
        $Password = “GeihposM” + $boucle;
        $email = $SamAccountname + “@msreport.free.fr”; 
        # Command to create user
        new-QADUser -ParentContainer $ParentContainer -DisplayName $DisplayName -description $description -StreetAddress $StreetAddress -PostalCode $PostalCode -City $City -Company $Company -name $SamAccountname -sAMAccountName $SamAccountname -UserprincipalName $UserPrincipalName -UserPassword $Password -Email $email -ObjectAttributes @{EmployeeType = “Test”;C=”FR”} | Set-QADuser -PasswordNeverExpires $true -AccountExpires 01/08/2011 -Manager “gmmathieu”;
        $boucle = $boucle + 1;
}
# Manage the number of loop.
while ($boucle -lt 101)

A+

Guillaume MATHIEU
PROSERVIA
La connaissance s’accroît quand on la partage.
http://msreport.free.fr

A propos Guillaume Mathieu

Directeur Technique chez Flexsi
Ce contenu a été publié dans Windows Server 2008. Vous pouvez le mettre en favoris avec ce permalien.

Laisser un commentaire