Question Compte AD CSV et espaces

Plus d'informations
il y a 12 ans 9 mois #15071 par Thomas
Compte AD CSV et espaces a été créé par Thomas
Bonjour,

Je souhaite créer des comptes AD via un script powershell. Les données dsont importées via un fichier csv. Les comptes sont bien créés mais j'obtiens des résultats étranges.
Tous les champs se remplissent à l'exception du champ sn (nom de famille).
De plus, le script génère un ou plusieurs espaces avant de saisir les données dans certains champs (CN, display name, givenName, samaccountname). Les espaces ne sont pas générés sur tous les comptes.. Au final, je ne peux me loguer avec certains comptes à cause des espaces.

Pour que les accents soient pris en comptes, j'encode le fichier csv en UTF-8. J'ai créé le fichier csv avec Excel 2010, mais je n'arrive pas à l'encoder en UTF-8. Je suis obligé de l'ouvrir avec le bloc note et de l'encode en UTF-8.

Si quelqu'un a une idée..

Merci d'avance.

Voici la structure du fichier csv:
sn givenname displayname name samaccountname userprincipalname password department

Voici le script:
Importation du fichier .CSV

echo \" Importation du fichier CSV \"

$utilisateurs = Import-Csv -path \"C:\Add_User_Powershell\comptes.csv\" -Delimiter ';'



# Création de líutilisateur



foreach($utilisateurs in $utilisateurs)

{

$pass = $utilisateurs.password

$sn = $utilisateurs.sn

$givenname = $utilisateurs.givenname

$displayname = $utilisateurs.displayname

$name = $utilisateurs.name

$loginWin2000 = $utilisateurs.samaccountname

$login = $utilisateurs.userprincipalname

$mail = $utilisateurs.mail

$ou = \" CN=Users,DC=sdis57,DC=fr \"

$password = $utilisateurs.password

$service = $utilisateurs.department


echo \" Création de líutilisateur $displayname \"



new-ADUser -name \" $name \" -givenname \" $givenname \" -Surname \" $sn \" -displayname \" $displayname \" -samaccountname \" $loginWin2000 \" -userPrincipalName \"$login\" -department \"$service\" -emailaddress \" $mail \" -enabled 1 ñaccountpassword (convertto-securestring $password -asplaintext -force)



echo \" Utilisateur $displayname crée \"

}

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 12 ans 9 mois #15129 par darphboubou
Réponse de darphboubou sur le sujet Re:Compte AD CSV et espaces
tu peux nous donner un exemple sur ton fichier CSV.

Pour info pour ma part, les espace je les garde que pour ma part je manipule le nom a savoi pour:

-surname :je garde le nom comme indiqué dans le csv

par contre pour le

-samaccountname : j'opère des modification sur la chaine de caractere
exemple
[code:1]
$sam = $utilisateurs.samaccountname
$samaccountname=$sam.Replace('-','').replace(' ','')
[/code:1]

Comme ça plus d'espace ou de - dans le samaccount name créé

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 12 ans 9 mois #15133 par Thomas
Réponse de Thomas sur le sujet Re:Compte AD CSV et espaces
Bonjour,

Merci pour votre aide. Etant assez pressé et ne trouvant pas de solution, j'ai utilisé un autre script assez proche mais fonctionnant parfaitement.

J'ai créé un fichier csv identique et, avec ce script, ça fonctionne..

Merci encore.

Le voici:
#ImportADusers
$Users = Import-Csv -Delimiter \";\" -Path \".\liste-comptes.csv\"
foreach ($User in $Users)
{
    $ou = \"CN=Users,DC=sdis57,DC=fr\"
    $pass = $User.Password
$login = $User.userprincipalname
$loginwin2000= $User.samaccountname
     New-ADUser -Name $User.ID -samaccountname $loginwin2000 -surname $User.sn -givenname $User.givenname -displayname $User.displayname -userprincipalname $login -AccountPassword (ConvertTo-SecureString $pass -AsPlainText -force) -ChangePasswordAtLogon $true -Enabled $true -Path $ou -department $User.department
}

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.038 secondes
Propulsé par Kunena