Bonjour,

 

Voici un script très simple qui vous permet de créer des comptes utilisateurs et des groupes avec PowerShell.

 

. Le scénario est le suivant :

Un fichier contenant les utilisateurs Names.txt

Un fichier contenant les groupes Groups.txt

Le script powershell CreateGroup.ps1 crée des groupes dans OU1

Le script powershell CreateUserFromList.ps1 crée des utilisateur dans OU1

Le script AddMemberInGroup.ps1 permet d'ajouter les users dans des groupes.

 

 

Dans names.txt

account1

Julia

John

Roxanna

Kim

Huu-Duc

 

Dans groups.txt

group1

group2

group3

group4

group5

 

Script CreateUserFromList.ps1

$InputUsers = Get-Content .\names.txt
$GroupsOU = [ADSI] 'LDAP://localhost:389/OU=OU1,DC=lhorn,DC=com'
Foreach ($Line in $InputUsers)
{
    $User = $GroupsOU.create('User','CN=' + $Line)
    $User.SetInfo()
    $User.Put('DisplayName', $Line)
    $User.SetInfo()
}

 

Script powershell CreateGroup.ps1

$InputGroups = Get-Content .\groups.txt

$GroupsOU = [ADSI] 'LDAP://localhost:389/OU=OU1,DC=lhorn,DC=com'

Foreach ($Line in $InputGroups)

{

$User = $GroupsOU.Create('Group','CN=' + $Line)

$User.SetInfo()

$User.Put('displayname', $Line)

$User.SetInfo()

}

 

Contenu de AddMemberInGroup.ps1

$InputUser = Get-Content .\names.txt

$objContainer = [ADSI] "LDAP//localhost:389/OU=OU1,DC=lhorn,DC=com"

Foreach ($Line in $InputUser)

{

$group = [ADSI]'LDAP://localhost:389/CN=group1,OU=OU1,DC=lhorn,DC=com'

$group.Member.Add('CN=' + $Line + ',OU=OU1,DC=lhorn,DC=com')

$group.SetInfo()

}

 

Exécution des scripts

PS C:\temp> .\createUserFromList.ps1

clip_image002

PS C:\temp> .\CreateGroup.ps1

clip_image004

PS C:\temp> .\AddMemberInGroup.ps1

0

1

2

3

4

5

 

On peut voir que dans Group1, on a des comptes utilisateurs en question.

clip_image006