Bonjour,
j'aimerais savoir comment il faut faire pour obtenir un utilisateur et le ou les groupes dans lesquels un utilisateur se trouve.
Je n'arrive pas à trouver un script pour faire cela.
Merci à l'avance,
Idril Elendil
Bonjour,
j'aimerais savoir comment il faut faire pour obtenir un utilisateur et le ou les groupes dans lesquels un utilisateur se trouve.
Je n'arrive pas à trouver un script pour faire cela.
Merci à l'avance,
Idril Elendil
Bonjour.obtenir un utilisateur et le ou les groupes dans lesquels un utilisateur se trouve
Tu peux donner plus de précision? là je comprends pas ce que tu recherches
Bonjour,
j'aimerais connaître le nom du ou des groupes d'un utilisateur (le ou les groupes dont l'utilisateur fait partie) dont j'ai le nom d'utilisateur. Ainsi, avec le ou les noms trouvés, je pourrai vérifier si un des groupes de l'utilisateur en est un que je cherche.
Ou est-ce plus simple d'obtenir le groupe recherché et de vérifier si un de ses membres utilisateurs est l'utilisateur dont j'ai le nom d'utilisateur?
J'espère avoir été un peu plus clair,
Merci d'avance,
Idril Elendil
Groupe... de discussion?
Groupe... ethnique?
Bon, sérieusement, si tu ne donnes pas plus d'info, tu ne recevras pas plus de réponses.
On peut supposer qu'il s'agit d'AD mais ça pourrait tout aussi bien être des utilisateurs NT4.
Bonjour,
désolé de ne pas être plus clair je commence dans les forums...
Il s'agit d'Active Directory et je cherche les groupes utilisateurs d'un utilisateur. Je ne sais pas s'il y a une différence entre un groupe de discussion et ethnique. Pour moi un groupe utilisateur est, par exemple: Administrateurs, Administrateurs d'impression, GrpMecanique (un groupe créé par quelqu'un pouvant le faire).
Les groupes utilisateurs peuvent être dans d'autres groupes et/ou dans des unités d'organisation.
Je veux juste les noms des différents groupes auxquels un utilisateur est membre ou bien obtenir le nom de tous les utilisateurs d'un certain groupe. C'est tout.
Je ne sais pas si j'ai été assez clair, n'hésitez pas à me poser d'autres questions,
Merci d'avance,
Idril Elendil
Ok là j'ai mieux compris.
Je te poste un bout d'un script que j'ai créé. Il liste sous forme d'un HTML (sous IE) tous les membres (triés par ordre alphabétique) du groupe AD que tu as tapé au lancement du script.
tu as juste à modifier ton nom de Domaine là où c'est écrit, normalement.
Ce qui peut t'intéresser c'est que t'as pas à rentrer à chaque recherche le "distinguishedname" de ton groupe.
Voilà j'espère que ça va t'aider.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 Set objFSO = CreateObject("Scripting.FileSystemObject") Set objDSE = GetObject("LDAP://rootDSE") strMessage = "Ce script liste les membres d'un groupe Active Directory. " & VbCrLf & VbCrLf & "Entrer le nom du groupe : " strTitle = "Nom du groupe" strGroupName = InputBox(strMessage, strTitle) If strGroupName = "" Then WScript.Quit End If Set objConnection = CreateObject("ADODB.Connection") objConnection.Open "Provider=ADsDSOObject;" Set objCommand = CreateObject("ADODB.Command") objCommand.ActiveConnection = objConnection 'CETTE LIGNE EST A MODIFIER AVEC TON PROPRE NOM DE DOMAINE : objCommand.CommandText = "<GC://dc=TONDOMAINE(à remplacer par ton nom de domaine),dc=com(ou fr ou net ...)>;(&(objectCategory=group)(cn=" & strGroupName & "))" & ";distinguishedName;subtree" Set objRecordSet = objCommand.Execute strGroupDN = objRecordSet.Fields("distinguishedName") objConnection.Close If Err.Number <> 0 Then WScript.Echo "Le groupe entré n'existe pas" WScript.Quit End If Set objGroup = GetObject ("LDAP://" & strGroupDN) Redim arrMemberArguments(2) i = 0 For each objMember in objGroup.Members Redim Preserve arrMembers(i+1) arrMemberArguments(0) = UCase(objMember.cn) arrMemberArguments(1) = UCase(objMember.sAMAccountName) arrMembers(i) = arrMemberArguments i = i + 1 Next nbrMembres = i ' Tri par insertion: For i = 0 To UBound(arrMembers) - 2 posmini = i For j = i+1 To UBound(arrMembers) - 1 If (arrMembers(j)(0) < arrMembers(posmini)(0)) Then posmini = j End If Next temp = arrMembers(posmini) arrMembers(posmini) = arrMembers(i) arrMembers(i) = temp Next Set objExplorer = WScript.CreateObject("InternetExplorer.Application", "IE_") With objExplorer .Navigate "about:" .Toolbar = 0 .StatusBar = 0 .Width = 800 .Height = 600 .Left = 150 .Top = 50 .Visible = 1 End With Set objDocument = objExplorer.Document objDocument.Open objDocument.WriteLn "<html><head><style>body{font-family:Verdana}</style><title>Membres du groupe: " & strGroupName & "</title></head><body><h3>Membres du groupe " & strGroupName & " :</h3><br><br><table align = center border=""1""><tr><td><h4>Nom d'utilisateur</h4></td><td><h4>Login</h4></td></tr>" For i = 0 To UBound(arrMembers) - 1 objDocument.WriteLn "<tr><td>" & arrMembers(i)(0) & "</td><td>" & arrMembers(i)(1) & "</td></tr>" Next objDocument.WriteLn "</table><br><br> Nombre d'utilisateurs appartenants à ce groupe : " & nbrMembres & "</body></html>"
Tu peux aussi essayer de le modifier pour rentrer le nom d'un utilisateur et lister tous ses groupes d'appartenance
Bonjour,
merci beaucoup pour le script. C'est merveilleux!! Ça fonctionne!! En plus c'est très clair de compréhension.
Je vais essayer de le modifier pour entrer un nom d'utilisateur et obtenir ses groupes d'appartenance.
Merci encore
Idril Elendil
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager