LDAP et description de comptes utilisateur - VB/VBA/VBS - Programmation
Marsh Posté le 17-11-2005 à 13:56:00
Tu veux parler de tous les attributs d'un groupe (obligatoires (8) et optionnels(99)) ?
Marsh Posté le 17-11-2005 à 15:06:41
En fait non, je cherche tout ce qu'il peut y avoir derrière objetMember.XXX
Marsh Posté le 18-11-2005 à 13:58:46
erf!
derrière objetMember.XXX tu peux avoir pas mal de choses.
Tout d'abord, tu peux avoir un objet de même classe, ici, en l'occurence, un groupe (groupes imbriqués->script recursif). Puis des objets de classe distinctes (user, computer...) que peut contenir ce groupe.
Pour chaque classe, tu peux exploiter un objmember.xxx.
La liste des xxx (obligatoires, optionnels, hérités ou spécifiques à la classe) que tu peux récupérer sont définis dans les classes du schéma.
Pour visualiser ces xxx, outre un script spécifique, tu peux exploiter le composant logiciel enfichable (snap-in) "Schéma Active Directory" non installé par défaut et nécessite un regsvr32 schmmgmt.dll.
Donc en premier lieu, sans filtre (objGroup.Filter=Array("user" ) par exemple), teste la classe de l'objet.
exemple:
if objmember.class="user" then
with objmember
Mes= "Mail:" & vbtab & .mail & vblf
Mes=Mes & "Sam:" & vbtab & .samaccountname & vblf
Mes=Mes & "Sté:" & vbtab & .company & vblf
Mes=Mes & "NAff:" & vbtab & .displayName & vblf
Mes=Mes & "TelD:" & vbtab & .homePhone & vblf
Mes=Mes & "Add:" & vbtab & .homePostalAddress
'Mes=Mes & ....
End with
wscript.echo mes
end if
attention les xxx peuvent avoir différentes syntaxes (DirectoryString, Integer, OctetString, DN...) à valeur simple ou valeur multiples.
Bref! la littérature ne manque pas...
Marsh Posté le 18-11-2005 à 16:04:57
OK merci pour la réponse.
Je fais comment pour installer 'snap-in'
merci
Marsh Posté le 18-11-2005 à 16:24:35
Démarrer, Exécuter, regsvr32 schmmgmt.dll OK
oups! oublié la suite:
Après enregistrement de la dll:
Démarrer, Exécuter, mmc /a
Puis dans la console, ajouter le snap-in "Schéma Active Directory"
Sauver la console.
Marsh Posté le 21-11-2005 à 12:56:46
BRAVO
MERCI 1000 FOIS
J'ai enfin trouvé grasse à vous merci encore
Il ne me reste plus qu'a trouver une commande LDAP pour interroger un utilisateur du domaine afin d'en extraire l'info que je cherche
MERCI
Marsh Posté le 17-11-2005 à 10:49:14
bonjour,
Voila, j'ai créé un petit vbs pour extraire de l'AD les information des utilisateur. Le pb c'est que je ne sais pas les récupérer. Ici je récupère SAMAccountName et Name, mais je ne sais pas récupérer le reste. Je cherche la liste du contenue du groupe.
Set objGroup = GetObject ("LDAP://CN=GGD-Z-DansEtab-Etab01",OU=OUG-GGD-Z01",OU=OUG-GGD-Z,OU=OUG,DC=ABC,DC=FR" )
For each objMember in objGroup.Members
Wscript.Echo objMember.SAMAccountName & vbtab & replace(mid(objMember.Name, 4, len(objMember.Name)), "\", "" )
Merci de votre aide