Erreur script VBS Active directory Windows Server 2003 - Infrastructures serveurs - Systèmes & Réseaux Pro
Marsh Posté le 14-02-2010 à 15:46:10
Set objUser = GetObject("LDAP://OU=groupe,dc=Matthieu,dc=local" )
objUser.SetPassword "P@ssw0rd"
Tu veux mettre un mot de passe à une OU, ça va pas marcher ça ..., faut le mettre sur l'utilisateur.
Marsh Posté le 14-02-2010 à 19:04:10
Merci de ta réponse, oui je souhaite mettre un mot de passe à tous les utilisateurs de mon UO.
en fait pour faire simple je voudrais mettre un mot de passe unique que j'aurais choisi, à tous les "users" de mon domaine, puis qu'ils le changent par eux même.
Marsh Posté le 15-02-2010 à 07:18:10
Il te manque quelque chose entre
Set objUser = GetObject("LDAP://OU=groupe,dc=Matthieu,dc=local" )
et
objUser.SetPassword "P@ssw0rd"
je pense qu'il te faut un "for each" pour qu'il passe tous les objet.
regarde ici
http://gallery.technet.microsoft.c [...] ter/en-us/
et vb script
Marsh Posté le 14-02-2010 à 15:16:17
Bonjour à tous, j'ai pris un script vbs trouvé sur votre site il me semble, la création des utilisateurs se fait bien dans mon AD, j'ai juste un petit soucis :
Error : Object doesn't support this property or method : 'objUser.SetPassword'
code : 800A01B6
Source: Microsoft VBScript runtime error
En fait je dois supprimer ce petit morceau de code pour que le script fonctionne. Sachant que je ne suis pas développeur, si quelqu'un pourrait me guider cela serait sympa.
Je vous met le script quand même mais je pense pas qu'il y aient d'erreurs vu qu'il n'est pas de moi
'========================================================================
' Script de création de comptes utilisateurs dans le conteneur "Users" a partir d'un fichier Excel
'========================================================================
'========================================================================
' Déclaration des variables
'========================================================================
Dim oexapp, oexwk, oexws, owshshell, ocellule, objOU, i
dim nom, prenom, loggin, mdp, bureau, messagerie, ville, liste
liste = ""
'========================================================================
' Accès au fichier Excel contenant les données des utilisateurs a créer
'========================================================================
set oexapp = wscript.createobject("Excel.Application" )
set owshshell = wscript.createobject("wscript.shell" )
oexapp.visible = false
set oexwk = oexapp.workbooks.open( "C:\Documents and Settings\Administrator\Desktop\AD\listeB.xls" )
set oexws = oexwk.activesheet
'========================================================================
' Boucle d'extraction des données Excel ligne par ligne [~détail~]
'========================================================================
i = 2
Do until oexapp.cells(i,7).value = ""
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' Assignation de chaque colonne Excel dans une variable
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nom = oexapp.cells(i,1).value
prenom = oexapp.cells(i,2).value
ville = oexapp.cells(i,3).value
mdp = oexapp.cells(i,4).value
bureau = oexapp.cells(i,5).value
loggin = oexapp.cells(i,6).value
messagerie = oexapp.cells(i,7).value
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' Choix du domaine et du conteneur d'Active Directory
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Set objDomain = GetObject("LDAP://OU=groupe,dc=Matthieu,dc=local" )
Set objCN = GetObject("LDAP://OU=groupe, dc=Matthieu,dc=local" )
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' Création de l'utilisateur "# i" et assignation des valeurs: loggin, nom, prénom, bureau _
' messagerie, ville et password
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Set objUser = objCN.Create("user", "CN=" & Nom & " " & Prenom)
objUser.Put "UserPrincipalName", loggin
objUser.Put "sn", nom
objUser.Put "givenName", prenom
objUser.Put "Name", Nom & " " & Prenom
objUser.Put "displayName", Nom & " " & Prenom
objUser.Put "physicalDeliveryOfficeName", bureau
objUser.Put "mail", messagerie
objUser.Put "l", ville
objUser.SetInfo
Set objUser = GetObject("LDAP://OU=groupe,dc=Matthieu,dc=local" )
objUser.SetPassword "P@ssw0rd"
objUser.SetInfo
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' Placement de l'utilisateur dans le groupe "Utilisa. du domaine"
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Set objCN = GetObject("LDAP://OU=groupe,dc=Matthieu,dc=local" )
Set objGroup = GetObject("LDAP://OU=groupe, dc=Matthieu, dc=local" )
objGroup.Put "UserPrincipalName", "groupe"
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' Activation du compte
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Set objUser = GetObject("LDAP://cn=" & nom & " " & prenom & ", OU=groupe, dc=Matthieu, dc=local" )
objUser.AccountDisabled = FALSE
objUser.SetInfo
liste = liste + nom & ", "
i = i+1
Loop
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' Récapitulatif des utilisateurs crées via la variable "liste"
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MsgBox "Les utilisateurs " & liste & " ont été créés et activés."