Question
création multi user AD
- Gaëtan Mandon
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
- Messages : 10
- Remerciements reçus 0
je vais vous passer les détails mais je suis nouveau ET sur ce forum, ET sur powershell... (Et dans le monde du scripting...
Actuellement en formation afin de devenir Technicien réseau, j'ai choisi d'aborder un thème afin de clore cette formation, que ni mon formateur ni moi, ni personne de mon entourage ne maîtrise.
Ain d'expliquer succinctement, je précise que le but final de ce projet de fin de formation n'est pas la réalisation proprement dite mais la conduite de projet.
Ayant d'autres thèmes à gérer, et étant perdu je me tourne donc vrs des personnes compétentes.
Présentation faite, voilà ma recherche.
(je précise que je ne cherche pas une solution \"clé en main\" mais plutôt comprendre pour pouvoir adapter)
Dans notre groupe, nous devons monter un AD et un Exchange, nous avons + de 100 utilisateurs et je voudrais automatiser la création des users via un script powershell.
Je voudrai me baser sur un tableur ou un csv.
dans le tableau excel nous trouverons donc les noms, prénoms, groupes, OU, l'admin AD n'ayant qu'à remplir ce tableau et executer le script pour créer les utilisateurs.
les OU, groupes pourront êtres crées soit à la main, soit via le script.
J'ai trouvé quelques explications sur la création d'1 user, d'1 groupe, d'1 OU... le déplacement d'1 user....
mais malheureusement rien d'aussi \"complet\". J'ai du mal à comprendre comment indiquer où checher ses ressources, quelles sont les données...
bref je suis un peu perdu et même si la réalisation en elle même n'est pas importante, pour moi et ma connaissance perso j'aimerai comprendre et faire ce script.
J'imagine que pour certains d'entre vous ce que je demande semble simple, ou pas d'ailleurs car je ne sais pas ce qu'il est possible de faire ou pas.. si un script peut automatiser autant de choses..
je me tourne donc vers vous afin que vous aiguillez mes recherches, voire même me forunir quelques pstes..
il faudrait que je crée également une variable pour les adresses mails..
comme je vous l'ai dit, je ne cherche pas un script tout fait, mais plutôt un script commenté, adaptable, des pistes pour mes recherches.. tout en prenant en compte que je n'ai que 2 semaines pour réaliser ce projet.
j'espère que vous pourrez éclairer mes lanternes et m'aider à entrer dans le merveilleux monde de Powershell.
merci par avance.
edit: petite précision, peut-être importante: l’environnement de travail sera windows 2008 r2, exchange 2010, windows 7.<br><br>Message édité par: corly, à: 24/11/11 09:59
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
- Messages : 6311
- Remerciements reçus 68
corly écrit:
tout en prenant en compte que je n'ai que 2 semaines pour réaliser ce projet.
Connais-tu le développement et la notion d'objet ?
corly écrit:
Saisir dans un tableur et exporter les données dans un fichier csv.Je voudrai me baser sur un tableur ou un csv.
corly écrit:
Déjà définir ta structure de données, pour te faciliter les choses une feuille excel par objet à créer OU,groupe et User. Donc trois fichiers.dans le tableau excel nous trouverons donc les noms, prénoms, groupes, OU, l'admin AD n'ayant qu'à remplir ce tableau et executer le script pour créer les utilisateurs.
corly écrit:
Il est possible de faire de l'assemblage, mais pour débuter sous PS ce n'est pas le mieux, ne serais-ce que pour adapter le code.J'ai trouvé quelques explications sur la création d'1 user, d'1 groupe, d'1 OU... le déplacement d'1 user....
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Gaëtan Mandon
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
- Messages : 10
- Remerciements reçus 0
Connais-tu le développement et la notion d'objet ?
j'avoue qu'en 7 mois de formation on n'a pas eu le temps de trop approfondir le sujet, j'arrive à peu près à analyser certains codes pas trop compliqués, mais créer un code entier je n'en suis sûrement pas cabable..
peut-être devrais je faire un script création, un script déplacement dans groupe, un pour le déplacement dans les OU... je ne sais pas ce qui est le mieux..
Pour ce qui est de la notion d'objet, j'en ai saisi le sens en suivant votre cours.
Saisir dans un tableur et exporter les données dans un fichier csv.
ça je sais faire ^^
Déjà définir ta structure de données, pour te faciliter les choses une feuille excel par objet à créer OU,groupe et User. Donc trois fichiers.
c'est vrai que je pensais tout mettre dans le même car j'avais trouvé un script en anglais pour la création de multi users qui comportait 1 colonne nom et 1 colonne prénom.. je pensais qu'il était \"facile\" d'adapter ça à plus de colonnes.
Je suis très motivé et je suis les cours que vous mettez à disposition, malheureusement comme je l'ai dit, le temps nous est compté sachant que nous devons en + faire les docs qui vont avec (je m'inspire d'ailleurs de vos cours).
Vous qui êtes expert, quelle solution \"facilement\" applicable et compréhensible par un débutant comme moi me conseillez vous.?
Sur quels cours devrais je me baser pour faire ceci?
quelle méthode suivre?
je vous remercie.
Connexion ou Créer un compte pour participer à la conversation.
- Richard Lazaro
- Hors Ligne
- Membre platinium
-
- Messages : 530
- Remerciements reçus 0
Tout d'abord en PowerShell, je vois deux étapes :
Définir l'environnement où on travaille :
- PowerShell 1 ou 2
- Les outils de manipulation de l'active Directory (Quest Active Roles ou ADSI ou Module AD présent sous Windows 2008 R2)
Puis la structure des données d'input.
Puis de la documentation
Puis l'algo
Puis le codage
Pour te donner une idée, un script comme ça quand on débute PowerShell, je dirais qu'il faut une bonne semaine avec de l'autoformation.
Un scripteur confirmé fait cela en une journée grand max (je prend large).
J'ai pas trop le temps d'aller sur le forum, mais si tu veux une aide via mail (alert que je peux voir ^^) je suis là.
Bien Cordialement,
Richard Lazaro.
Think-MS : (Get-Life).Days | %{ Learn-More }
\\"Problems cannot be solved by the same level of thinking that created them.\\" - Albert Einstein
Connexion ou Créer un compte pour participer à la conversation.
- Gaëtan Mandon
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
- Messages : 10
- Remerciements reçus 0
merci pour votre réponse. J'aimerai beaucoup avoir votre aide, par mail si c'est plus simple. Communiquez moi là et je vous contacterez.
Pour répondre à vos questions:
Je travaillerai sous Windows 2008 R2 et le rôle AD, avec PowerShell 2.
pour le reste, tout cela est flou....
plus d'infos par mail?
vous pouvez me contacter à Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.
quand vous parlez d'autoformation, vous prenez en compte que le débutant a très peu de connaissances (et c'est d'ailleurs pour en savoir plus que j'ai choisi ce thème)?
merci
edit: en guise d'exemple, voilà un script que j'ai pu trouver pour la création multi utilisateurs via un csv, mais malgré les modifications effectuées (nom de domaine surtout), l'opération censée être simple et créer les utilisateurs dans une OU nommée \"test\" ne fonctionne pas...
je vous colle le script afn que vous puissiez me dire ce qui ne va pas dans ce script. et comment l'améliorer pour mes \"besoins\".
merci
le csv est un xls enregistré sous csv (point virgule), bien placé dans le dossier c:\test. Les colonnes étant nommées FirstName et LastName (pour être sûr qu'il n'y ai pas de pb a ce niveau là...
$objOU=[ADSI]“LDAP://OU=test000,DC=valence,DC=local”
$dataSource=import-csv “C:\test\users.csv”
foreach($dataRecord in $datasource) {
$cn=$dataRecord.FirstName + ” ” + $dataRecord.LastName
$sAMAccountName=$dataRecord.FirstName + “.” + $dataRecord.LastName
$givenName=$dataRecord.FirstName
$sn=$dataRecord.LastName
$sAMAccountName=$sAMAccountName.ToLower()
$displayName=$sn + “, ” + $givenName
$userPrincipalName=$sAMAccountName + “@valence.local”
$objUser=$objOU.Create(“utilisateurs”,”CN=”+$cn)
$objUser.Put(“sAMAccountName”,$sAMAccountName)
$objUser.Put(“userPrincipalName”,$userPrincipalName)
$objUser.Put(“displayName”,$displayName)
$objUser.Put(“givenName”,$givenName)
$objUser.Put(“sn”,$sn)
$objUser.SetInfo()
$objUser.SetPassword(“P@assw0rd”)
$objUser.psbase.InvokeSet(“AccountDisabled”,$false)
$objUser.SetInfo()
}<br><br>Message édité par: corly, à: 24/11/11 18:55
Connexion ou Créer un compte pour participer à la conversation.
- Gaëtan Mandon
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
- Messages : 10
- Remerciements reçus 0
rouvé dans un répertoire de module.\"
et lorsque j'essaie par www.microsoft.com/downloads/details.aspx...97-be3e-1d24c1cf0dda j'ai un message d'erreur qui me signale que ça ne s'applique pas à moi..
alors je fais les mises à jour, là je fais des tests sur mon ordi perso, en vm mais il ne virtualise pas le 64bits alors je suis obligé de le faire en windows server 2008 32bits...
je fais les maj et je reviens pour en dire +.
sinon, j'ai trouvé un tuto qui a l'air intéressant, je ne sais pas si je peux faire de la \"pub\" (mais sinon on me corrigera) danstoncloud.com/blogs/bastien/archive/2...wershell-et-csv.aspx
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- création multi user AD