Script VBS

Script VBS - Windows & Software

Marsh Posté le 06-01-2005 à 14:25:34    

Bonjour,
 
 
J'ai hésité à poster ça dans la section script, pis je me suis dit que ça concernait plus l'administration.
Alors voilà, je dispose d'un fichier txt contenant sur chacune de ses lignes :  
- un login
- un mot de passe
- une description
 
Je souhaite ajouter ces utilisateurs sur mon domaine AD. J'ai fait le script suivant (généré à partir du txt) :  
Set oRoot   = GetObject("LDAP://rootDSE" )
Set oDomain = GetObject("LDAP://" &  oRoot.Get("defaultNamingContext" ))
 
Set oOU=oDomain.Create("organizationalUnit","ou=Internet" )
oOU.Put "Description", "Utilisateurs internet"
oOU.SetInfo
 
Set oUser = oOU.Create("User", "cn=5499998" )
oUser.Put "sAMAccountName", "5499998"
oUser.Put "Description", "Utilisateur test"
oUser.SetInfo
 
oUser.SetPassword "199998"
 
oUser.AccountDisabled = False
oUser.SetInfo
 
 
Set oUser = oOU.Create("User", "cn=54X99999" )
oUser.Put "sAMAccountName", "5499999"
oUser.Put "Description", "Utilisateur test"
oUser.SetInfo
 
oUser.SetPassword "in45h61fo"
 
oUser.AccountDisabled = False
oUser.SetInfo

 
Ca marche sans problème, si ce n'est qu'il est possible qu'un moment ou un autre les utilisateurs changent de mots de passe, à ce moment j'ai un fichier txt mis à jour, mais mon script ne fonctionne plus (normal les users existent déja). Comment mettre à jour les mots de passe sans passer par la création de users ?
 
Merciiii !!

Reply

Marsh Posté le 06-01-2005 à 14:25:34   

Reply

Marsh Posté le 06-01-2005 à 14:35:12    

ben faut verifier si le user existe déjà, dans ce cas tu le supprimer et tu en crée un nouvo

Reply

Marsh Posté le 06-01-2005 à 14:42:13    

Et comment on fait ça ?
Pis je veux pas le supprimer je veux juste modifier son mot de passe...


Message édité par moldar le 06-01-2005 à 15:28:05
Reply

Marsh Posté le 07-01-2005 à 14:50:08    

J'avance un peu :
 
Set oRoot   = GetObject("LDAP://rootDSE" )
Set oDomain = GetObject("LDAP://" &  oRoot.Get("defaultNamingContext" ))
Set objNetwork = CreateObject("Wscript.Network" )
 
 
Set oOU = GetObject("LDAP://ou=Internet, dc=DOMAINE, dc=local" )
 
objNetwork = GetObject("LDAP://cn=5499998, ou=Internet, dc=DOMAINE, dc=local" )
If objNetwork="" Then  
 Set oUser = oOU.create("User", "cn=5499998" )
 oUser.Put "sAMAccountName", "5499998"
 oUser.Put "Description", "Utilisateur test2"
 oUser.SetPassword "nouveau"
 oUser.AccountDisabled = False
 oUser.SetInfo
Else
 oUser.SetPassword "nouveau"
 oUser.Put "Description", "Utilisateur mis à jour"
 oUser.AccountDisabled = False
 oUser.SetInfo
 
End IF

 
... mais mon test ne marche pas (il ne peut pas mettre le résultat de la commande getobject dans une variable si l'objet en question n'existe pas).
Donc ma question est la suivante, comment tester l'existance d'un utilisateur ?
 
merci !!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed