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
|
Dim objConnection, objCommand, objRecordSet, sgid_valid, nom, value
value=lcase(CreateObject("WScript.Shell").ExpandEnvironmentStrings ("%USERNAME%") )
Set objConnection = CreateObject("ADODB.Connection")
objConnection.Open "Provider=ADsDSOObject;"
Set objCommand = CreateObject("ADODB.Command")
objCommand.ActiveConnection = objConnection
objCommand.CommandText = "<GC://dc=ZA,dc=IF,dc=ATCSG,dc=NET>;(&(objectCategory=user) (samAccountName=" & value & ")); distinguishedName ;subtree "
Set objRecordSet = objCommand.Execute
Do Until objRecordSet.EOF
LDAPPAth =objRecordSet.Fields("distinguishedName").value
objRecordSet.MoveNext
Loop
On Error Resume Next
Set objUser = GetObject("LDAP://"& LDAPPAth &"")
arrMemberOf = objUser.GetEx("memberOf")
For Each Group in arrMemberOf
Set objGroup = GetObject("LDAP://" & Group)
objGroup.GetInfo
GroupsarrMembersOf = objGroup.GetEx("memberOf")
For Each strMemberOf in GroupsarrMembersOf
If strMemberOf <> "" Then
ArrGroup=Split(Group,",")
ArrGroupMember=Split(strMemberOf,"," )
WScript.Echo Mid(ArrGroup(0),4)
End If
Next
Next |
Partager