1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
| '------------------------------------------------
'------------------------------------------------
' MODIFICATION DU HOMEDIR DES USERS DANS AD
'------------------------------------------------
'------------------------------------------------
Option Explicit
'------------------------------------------------
' Déclaration des variables
'------------------------------------------------
Dim objFSO, objTextFile, objConnection, objCommand,objUser
Const ADS_SCOPE_SUBTREE = 2
Const ForReading = 1
Const ForWriting = 2
'------------------------------------------------
' OU concernée
'------------------------------------------------
ou_concernee = "OU = Utilisateurs, OU=Tests, DC=toto"
'------------------------------------------------
' serveur de Homedir concerné
'------------------------------------------------
serveur_homedir = "SERVEUR"
'------------------------------------------------
' Type d'objet à traiter
'------------------------------------------------
type_objet = "user"
'------------------------------------------------
'Nom du fichier dont les utilisateurs ont un mauvais
'home et/ou un mauvais loginNT
'------------------------------------------------
'Set objFSO = CreateObject("Scripting.FileSytemObject")
'Set objTextfile = objFSO.OpenTextFile_
'("Sharenok.csv", ForAppending, True)
'------------------------------------------------
' Déclaration des variables de la boucle
'------------------------------------------------
varNomUser = split(varligne, ";")(0)
varAncienPartage = split(varligne,";")(1)
varNouveauPartage = split(varligne,";")(2)
'------------------------------------------------
' Nom du fichier de LOGS
'------------------------------------------------
'Set objTextfile = objFSO.OpenTextFile_
'("Modif_AD.log", ForAppending, True)
'------------------------------------------------
' Connection à AD
'------------------------------------------------
Set objConnection = CreateObject("ADOBD.Connection")
Set objCommand = CreateObject("ADOBD.Command")
objConnection.Provider = "ADsDSObject"
objConnection.Open = "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection
objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
objCommand.CommandText = _
"SELECT DistinguishedName FROM 'LDAP://" & ou_concernee & "WHERE objectClass='" & type_object & "'"
'------------------------------------------------
' Modification
'------------------------------------------------
objUser.SetInfoOpen ("g:\iu_opera\audit_siege\Scripts\sharenok.csv") For Input As #1
'------------------------------------------------
' Lecture du fichier ligne par ligne
'------------------------------------------------
Do While Not EOF(1)
Input #1, varLigne
'------------------------------------------------
' Si correspondance AD et Liste du fichier csv
'------------------------------------------------
If NOM_USER = varNomUser Then
Set objUser = GetObject _
("LDAP://CN='" & NOM_USER & "," & ou_concernee & "'")
'------------------------------
'Nouveau chemin vers le HomeDir
objUser.Put "HomeDirectory","\\'" & serveur_homedir & "\" & varNouveauPartage"'"
objUser.SetInfo
End If
Loop
Close #1 |
Partager