Suchen nach Benutzern in mehreren Active Directory-Domänen
Ich verwende das System.DirectoryServices.AccountManagement, um Nachschlagefunktionen für Benutzer bereitzustellen.
Das Unternehmen verfügt über mehrere regionenspezifische AD-Domänen: AMR, EUR, JPN usw.
Folgendes funktioniert für die EUR-Domain, gibt jedoch (natürlich) keine Benutzer aus den anderen Domains zurück:
var context = new PrincipalContext(ContextType.Domain, "mycorp.com", "DC=eur,DC=mycorp,DC=com");
var query = new UserPrincipal(GetContext());
query.Name = "*Bloggs*";
var users = new PrincipalSearcher(query).FindAll().ToList();
Wenn ich jedoch auf das gesamte Verzeichnis ziele, gibt es keine Benutzer von zurückirgendein der regionenspezifischen Domains:
var context = new PrincipalContext(ContextType.Domain, "mycorp.com", "DC=mycorp,DC=com");
Wie durchsuche ich das gesamte Verzeichnis?
Aktualisieren
Lesen Sie weiter unter "Funktionsweise von Active Directory-Suchen":
http://technet.microsoft.com/en-us/library/cc755809(v=ws.10).aspx
Wenn ich den Servernamen als Suffix mit Port 3268 bezeichne, wird nach dem globalen Katalog gesucht:
var context = new PrincipalContext(ContextType.Domain, "mycorp.com:3268", "DC=mycorp,DC=com");
Es ist jedoch sehr, sehr langsam. Vorschläge zur Verbesserung der Leistung?