2016-02-05 3 views
1

J'essaie d'obtenir tous les membres d'un groupe dans deux différents domaines Active Directory (AD) de la même société. Pour ce faire, je reçois d'abord le nom distinctif complet (DN) de chaque groupe à partir de l'éditeur d'attributs ADUC (Active Directory Users and Computers) tel que spécifié here.

Le premier groupe DN est:

*CN=first-group,OU=organization-unit-name,DC=first,DC=company,DC=com* 

Le deuxième groupe DN est:

*CN=second-group,OU=$Customer,OU=one,OU=two,OU=three,OU=four,DC=second,DC=company,DC=com* 

Puis-je utiliser les deux filtres de requête LDAP suivants en C# (je les ai aussi essayé dans ADUC).

Pour le domaine first.company.com et j'applique le filtre suivant du premier groupe :

*(&(objectCategory=*)(memberOf=CN=first-group,OU=organization-unit-name,DC=first,DC=company,DC=com))* 

Et je reçois 123 comme prévu Résultats/

Pour le domaine second.entreprise.com et le secondes groupe I appliquer le filtre suivant:

*(&(objectCategory=*)(memberof=second-group,OU=$Customer,OU=one,OU=two,OU=three,OU=four,DC=second,DC=company,DC=com))* 

Mais maintenant, je reçois un seul résultat. plus en détail moi-même. Ce n'est pas ce qui était attendu.

Je connais d'autres moyens pour trouver le résultat attendu dans le ADUC en cliquant dans l'onglet Membres, une fois la sélection du secondes groupe mais j'ai besoin d'un filtre LDAP pour le faire parce que je veux faire obtenir les résultats en C# .

Est-ce que quelqu'un sait ce que fait le client $? Qu'est-ce que le dollar signifie en général dans un filtre LDAP?

J'ai essayé le filtre sans Ou = $ Client mais il ne renvoie aucun résultat.

Merci pour votre aide!

Répondre

0

Il y a deux LDAP Queries that will work for Microsoft Active Directory: Résout tous les membres (y compris imbriqués) groupes de sécurité (nécessite au moins Windows 2003 SP2)

(memberOf:1.2.840.113556.1.4.1941:=CN=GroupOne,OU=Security Groups,OU=Groups,DC=YOURDOMAIN,DC=NET) 

Ou pour récupérer uniquement les utilisateurs:

(&(objectClass=user)(memberof:1.2.840.113556.1.4.1941:=CN=GroupOne,OU=Security Groups,OU=Groups,DC=YOURDOMAIN,DC=NET) 

Si vous ne Voulez membres directs, supprimez le ": 1.2.840.113556.1.4.1941:" à partir de chaque requête.

Dans un filtre LDAP, le $ signifie "$". (c'est-à-dire c'est juste un caractère)

+0

Merci pour la réponse sur le signe du dollar. C'est clair maintenant. Cependant, je ne comprends toujours pas pourquoi le groupe qui a plus de membres que moi, montre une telle entrée de DN qui ne retourne que lorsque j'applique le filtre mentionné ci-dessus. – aragorn

+0

Avez-vous coché Autorisations? – jwilleke

+0

Du côté AD manager, vous voulez dire? Si non, je n'ai pas depuis que je n'ai pas accès à ce niveau d'information. Mais je devrais avoir la bonne autorisation puisque je peux récupérer cette information sur l'interface graphique d'ADUC avec mes identifiants de compte. – aragorn