Script de création automatisation

Messages postés
60
Date d'inscription
samedi 8 mai 2010
Statut
Membre
Dernière intervention
24 février 2012
- - Dernière réponse : cs_dauphins14
Messages postés
60
Date d'inscription
samedi 8 mai 2010
Statut
Membre
Dernière intervention
24 février 2012
- 12 oct. 2011 à 19:50
bonjour,
je ne sais pas si je suis dans le bon thème.
Je dois créer un script d'automatisation enfin de créer des OU , des groupes et utilisateurs. J'ai peux crée des OU ,utilisateurs et groupes. J'aimerais savoir comment insérer un utilisateurs dans un groupe?
Je vous joins mon code.
Cordialement ET merci par avance. C'est assez urgent


' Déclarations des variables et des objets
'Get the domain
Dim dse, domain
Dim OU, NewOu, SubOU, ParentOU
Dim Groupe, NewGroup, SamAccountName
Dim Utilisateur, Prenom, Nom, NewUser
Set dse = GetObject("LDAP://RootDSE")
Set domain = GetObject( "LDAP://" & "xx")


If msgbox ("Ce script permet de créer des OU, des groupes et des utilisateurs dans " _
& "un domaine active directory." & VBCRLF & "L'auteur n'est en aucun cas responsable d'une mauvaise " _
& "manipulation qui pourrait engendrer une perte " _
& "dans la base d'active directory.", VbExclamation + VbYesNo, "Message aux administrateurs") = VbYes then




' Création des OU
on error resume next

Do
If msgbox("Voulez vous créer une nouvelle OU (Unité d'Organisation) ", VbInformation + VbYesNo, "Message") = VbYes then
OU = InputBox("Veuillez entrer le nom de la nouvelle organisation à créer")
Set NewOU = Domain.Create("organizationalUnit", "OU=" & OU)
NewOU.SetInfo

' Création des sous OU
Set SubOU = NewOU.Create("organizationalUnit","OU=Utilisateurs")
SubOU.SetInfo
Set SubOU = NewOU.Create("organizationalUnit","OU=Ordinateurs")
SubOU.SetInfo
Set SubOU = NewOU.Create("organizationalUnit","OU=Imprimantes")
SubOU.SetInfo
Set SubOU = NewOU.Create("organizationalUnit","OU=Groupes")
SubOU.SetInfo
msgbox "L'organisation " & OU & " a bien été créée !", VbInformation, "Création d'une OU"
Else
Exit Do
End If

Loop Until msgbox("Voulez vous créer une nouvelle OU (Unité d'Organisation)", VbInformation + VbYesNo, "Message") = VbNo

' Création des groupes
do
If msgbox("Voulez vous créer un nouveau groupe", VbInformation + VbYesNo, "Message") = VbYes then
OU = inputbox("Veuillez saisir l'unité d'organisation dans laquelle vous voulez créer le groupe !")
set ParentOU = Domain.GetObject("organizationalUnit", "OU=" & OU)
ParentOu.SetInfo
Set SubOU = ParentOU.GetObject("organizationalUnit","OU=Groupes")
SubOU.SetInfo

Groupe = inputbox("Veuillez entrer le nom du groupe")

set NewGroup = SubOU.Create("group","CN=" & Groupe)



samAccountName = InputBox("Nom de groupe (Avant l'installation de windows 2000)")

NewGroup.Put "samAccountName", samAccountName
NewGroup.SetInfo
msgbox "Le groupe " & Groupe & " a bien été crée !", VbInformation, "Création de groupe"
Else
Exit Do
End if


loop Until msgbox("Voulez vous créer un nouveau groupe", VbInformation + VbYesNo, "Message") = VbNo
Else

' Création des utilisateurs dans le sous Ou ' Utilisateurs' de l'OU parent

Do
If msgbox("Voulez vous créer un nouvel utilisateur", VbInformation + VbYesNo, "Message") = VbYes then
OU = inputbox("Veuillez saisir l'unité d'organisation dans laquelle vous voulez créer l'utilisateur !")
set ParentOU = Domain.GetObject("organizationalUnit", "OU=" & OU)
ParentOu.SetInfo
groupes= inputbox("Veuillez saisir le groupe dans laquelle vous voulez créer l'utilisateur !")

Set SubOU = ParentOU.GetObject("organizationalUnit","OU=Utilisateurs")
SubOU.SetInfo


Utilisateur = InputBox("Veuillez entrer un nom d'utilisateur, minimum de 8 lettres " _
& "et de la forme : " & VBCRLF & "Exemple : Marcel Dupont => mdupont")

Set NewUser = SubOU.create("User", "CN=" & Utilisateur)




Prenom = InputBox("Prénom de l'utilisateur")
Nom = InputBox("Nom de l'utilisateur")

samAccountName = InputBox("Nom de l'utilisateur (avant installation de windows 2000)")

NewUser.Put "GivenName", Prenom
NewUser.Put "displayName", Nom

NewUser.Put "samAccountName",Utilisateur
NewUser.Put "userPrincipalName", Utilisateur & "@btsig1.local"
NewUser.SetInfo
NewUser.SetInfo
Newuser.accountdisabled = FALSE
NewUser.SetInfo

msgbox "L'utilisateur " & Utilisateur & " a bien été crée !", VbInformation, "Création d'utilisateur"
Else
Exit Do
End if

Loop Until msgbox("Voulez vous créer un nouvel utilisateur", VbInformation + VbYesNo, "Message") = VbNo



Wscript.quit(0)

End if
msgbox("Merci. L'OU, les groupes et les utilisateurs sont bien installés sur Active Directory.")
msgbox("Les utilisateurs n'ont pas de mot de passe")

Dauphins14
Afficher la suite 

2 réponses

Messages postés
47
Date d'inscription
mardi 29 avril 2003
Statut
Membre
Dernière intervention
22 mai 2012
1
0
Merci
Bonjour,

je crois me souvenir d'une fonction PutEx :
objGroupe.PutEx 3, "member", Array(objUtilisateur.distinguishedName)

Regarde sur le MSDN, je pense que tu va trouver ton bonheur.

A+

Sbt.
Commenter la réponse de cs_Sbt
Messages postés
60
Date d'inscription
samedi 8 mai 2010
Statut
Membre
Dernière intervention
24 février 2012
0
Merci
bonjour,
j'aimerais savoir comment insérer un utilisateur dans un groupe. Par rapport aux choix de l'administrateur qui a été crée précédemment ?
merci par avance. c'est urgent.
Dauphins14
Commenter la réponse de cs_dauphins14