2010-12-30 2 views
0

J'ai créé un parentDomain ADDomain1 ayant un enfant ADDomain2. Dans ADDomain2, j'ai créé un groupe 'Common Users' dans lequel j'ai des utilisateurs à la fois de ADDomain1 et ADDomain2, mais quand je fais une recherche de répertoire pour un utilisateur ADDomain1 dans ADDomain2 il ne retuen aucun résultat. voici un codeRechercher un utilisateur dans un autre domaine Active Directory

DirectorySearcher directorySearcher = new DirectorySearcher(); 

DirectoryEntry directoryEntry = new DirectoryEntry("LDAP://ADDomain2","UserName","Password"); 
directoryEntry.Path = "LDAP://ADDOMAIN2/DC=ADDOMAIN2,DC=ADDOMAIN1,DC=WAVEDOMAIN"; 
directorySearcher.SearchRoot = directoryEntry; 
      directorySearcher.FindOne(); 
directorySearcher.PageSize = 1000; 
      directorySearcher.Filter = "(&(objectCategory=person)(name=ADDOMAIN1User))"; 
SearchResultCollection results = directorySearcher.FindAll(); 

Mais quand je recherche l'utilisateur ADDOMAIN2 il renvoie des résultats.

Une idée?

Thanx

+0

Je ne pense pas que vos utilisateurs de ADDOMAIN1 feront partie de ADDOMAIN2 - donc vous ne les trouverez pas dans ce domaine ... ce sont deux domaines distincts - leurs objets ne sont pas répliqué du domaine oen à l'autre ... Je pense que c'est "comme conçu" –

+0

Mais quand je cherche des utilisateurs communs de groupe, je reçois les deux utilisateurs AD1 et AD2 dans son membre – BreakHead

+0

Mais quand je recherche des utilisateurs communs du groupe «Je reçois les utilisateurs AD1 et AD2 dans ses membres. – BreakHead

Répondre

0

Je ne sais pas DirectoryEntry, ça marche avec UserPrincipal? AD2 est-il un catalogue global?

Exemple:

using System.DirectoryServices.AccountManagement; 
var ctx = new PrincipalContext(ContextType.Domain, "ADDOMAIN2"); 
var usr = UserPrincipal.FindByIdentity(ctx, IdentityType.SamAccountName, "whatever"); 
// you can also find the GroupPrincipal and get its members 
+0

Parlez-vous de 'GroupScope' ?? Le groupe Uesrs commun est défini sur 'Domain Locale'. – BreakHead

+0

Je ne comprends pas votre question. Quoi qu'il en soit, je voulais créer un PrincipalContext, puis essayer UserPrincipal.FindByIdentity. C'est semblable à ce que vous faites, mais à un niveau d'abstraction plus élevé, j'aime beaucoup mieux. – fejesjoco

+0

Thanx fejesjoco, y at-il un exemple pour cela auquel je peux me référer ?? – BreakHead

Questions connexes