none
Erreur script powershell (ajout d'utilisateurs) RRS feed

  • Question

  • Bonjour,

    J'ai actuellement un problème avec mon script d'ajout d'utilisateurs:

    $Users = Import-Csv -Delimiter ";" -Path "C:\user.csv"            
    foreach ($User in $Users)            
    {            
        $Displayname = $User.'Firstname' + " " + $User.'Lastname'            
        $UserFirstname = $User.'Firstname'            
        $UserLastname = $User.'Lastname'   
        $OU = $User.'OU'            
        $SAM = $User.'SAM'            
        $UPN = $User.'Firstname' + "." + $User.'Lastname' + "@" + $User.'Maildomain'            
        $Description = $User.'Description'            
        $Password = $User.'Password'          
        New-ADUser -Name "$Displayname" -DisplayName "$Displayname" -SamAccountName $SAM -UserPrincipalName $UPN -GivenName "$UserFirstname" -Surname "$UserLastname" -AccountPassword (ConvertTo-SecureString $Password -AsPlainText -Force) -Enabled $true -Path $OU -ChangePasswordAtLogon $false –PasswordNeverExpires $true           
    }

    L'erreur:

    PS C:\> C:\newuser.ps1
    New-ADUser : The object name has bad syntax
    At C:\newuser.ps1:12 char:5
    +     New-ADUser -Name "$Displayname" -DisplayName '$Displayname' -SamAccountName  ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : NotSpecified: (CN=arnaud Berton,Users:String) [New-ADUser], ADException
        + FullyQualifiedErrorId : ActiveDirectoryServer:8335,Microsoft.ActiveDirectory.Management.Commands.NewADUser
     

    PS C:\> C:\newuser.ps1
    New-ADUser : The object name has bad syntax
    At C:\newuser.ps1:12 char:5
    +     New-ADUser -Name "$Displayname" -DisplayName "$Displayname" -SamAccountName  ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : NotSpecified: (CN=arnaud Berton,Users:String) [New-ADUser], ADException
        + FullyQualifiedErrorId : ActiveDirectoryServer:8335,Microsoft.ActiveDirectory.Management.Commands.NewADUser

    Le fichier CSV: user.csv

    Lastname;Firstname;SAM;OU;Password;Maildomain
    Berton;arnaud;Arnaud;Users;Berox1234;berton.local

    Merci d'avance

    lundi 17 août 2015 14:14

Toutes les réponses

  • Bonjour,

    J'ai actuellement un problème avec mon script d'ajout d'utilisateurs:

    $Users = Import-Csv -Delimiter ";" -Path "C:\user.csv"            
    foreach ($User in $Users)            
    {            
        $Displayname = $User.'Firstname' + " " + $User.'Lastname'            
        $UserFirstname = $User.'Firstname'            
        $UserLastname = $User.'Lastname'   
        $OU = $User.'OU'            
        $SAM = $User.'SAM'            
        $UPN = $User.'Firstname' + "." + $User.'Lastname' + "@" + $User.'Maildomain'            
        $Description = $User.'Description'            
        $Password = $User.'Password'          
        New-ADUser -Name "$Displayname" -DisplayName "$Displayname" -SamAccountName $SAM -UserPrincipalName $UPN -GivenName "$UserFirstname" -Surname "$UserLastname" -AccountPassword (ConvertTo-SecureString $Password -AsPlainText -Force) -Enabled $true -Path $OU -ChangePasswordAtLogon $false –PasswordNeverExpires $true           
    }

    L'erreur:

    PS C:\> C:\newuser.ps1
    New-ADUser : The object name has bad syntax
    At C:\newuser.ps1:12 char:5
    +     New-ADUser -Name "$Displayname" -DisplayName '$Displayname' -SamAccountName  ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : NotSpecified: (CN=arnaud Berton,Users:String) [New-ADUser], ADException
        + FullyQualifiedErrorId : ActiveDirectoryServer:8335,Microsoft.ActiveDirectory.Management.Commands.NewADUser
     

    PS C:\> C:\newuser.ps1
    New-ADUser : The object name has bad syntax
    At C:\newuser.ps1:12 char:5
    +     New-ADUser -Name "$Displayname" -DisplayName "$Displayname" -SamAccountName  ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : NotSpecified: (CN=arnaud Berton,Users:String) [New-ADUser], ADException
        + FullyQualifiedErrorId : ActiveDirectoryServer:8335,Microsoft.ActiveDirectory.Management.Commands.NewADUser

    Le fichier CSV: user.csv

    Lastname;Firstname;SAM;OU;Password;Maildomain
    Berton;arnaud;Arnaud;Users;Berox1234;berton.local

    Merci d'avance

    Bonjour Arnaud,

    Ta colonne OU est sensé contenir le DistinguishedName de ton OU, ex : OU=MyUsers,DC=MyDomain,DC=COM


    Blog
    Scripts

    lundi 17 août 2015 15:02
  • Bonjour Emmanuel,

    Merci pour ta réponse

    Donc si je comprend je doit modifier mon fichier csv comme cela :

    Lastname;Firstname;SAM;OU;Password;Maildomain
    Berton;arnaud;Arnaud;OU=Users,DC=berton,DC=local;Berox1234;berton.local

    Cordialement,

    Arnaud

    mardi 18 août 2015 09:51
  • J'ai modifié comme indiqué au-dessus et j'obtiens cette erreur :

    New-ADUser : Directory object not found
    At C:\newuser.ps1:12 char:5
    +     New-ADUser -Name "$Displayname" -DisplayName "$Displayname" -SamAccountName  ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : ObjectNotFound: (CN=arnaud Berto...berton,DC=local:String) [New-ADUser], ADIdentityNotFoundException
        + FullyQualifiedErrorId : ActiveDirectoryCmdlet:Microsoft.ActiveDirectory.Management.ADIdentityNotFoundException,Microsoft.ActiveDirectory.Management.Commands.NewADUser
     

    mardi 18 août 2015 09:55
  • Bonjour Emmanuel,

    Merci pour ta réponse

    Donc si je comprend je doit modifier mon fichier csv comme cela :

    Lastname;Firstname;SAM;OU;Password;Maildomain
    Berton;arnaud;Arnaud;OU=Users,DC=berton,DC=local;Berox1234;berton.local

    Cordialement,

    Arnaud

    Essaie plutôt avec :

    Lastname;Firstname;SAM;OU;Password;Maildomain
    Berton;arnaud;Arnaud;CN=Users,DC=berton,DC=local;Berox1234;berton.local

    Users est un container et non une OU :)


    Blog
    Scripts

    mercredi 19 août 2015 10:59