Question

Si je pose une requête (je prévois d'utiliser SDS.P) sur le catalogue global, quel doit être le chemin de départ pour pouvoir effectuer une recherche sur l'ensemble du CPG?

Je souhaite énumérer tous les utilisateurs du CPG, par exemple. Disons que mon gc a des utilisateurs pour 3 domaines (un parent, deux enfants):

TEST.COM
   ONE.TEST.COM
   TWO.TEST.COM

et je suis sur un ordinateur dans ONE.TEST.COM. Je ne veux pas coder en dur DC = XXX, DC = yyy, je voudrais déterminer cela au moment de l'exécution.

TIA! -Est-ce que

Était-ce utile?

La solution

Voici un exemple de fonction qui interroge le catalogue global:

class Program
    {

        static void Main()
        {

            DirectoryEntry entry = new DirectoryEntry("GC://dcserver.domain.local",
                                                       "utility",
                                                       "somepassword",
                                                       AuthenticationTypes.Secure );

            const string searchString = "(&(objectCategory=person)(objectClass=user))";

            DirectorySearcher searcher = new DirectorySearcher(entry, 
                                                               searchString, 
                                                               new string[] { "sAMAccountName", "cn" } );

            SearchResultCollection resultCollection = searcher.FindAll( );

            foreach ( SearchResult result in resultCollection )
            {
                Console.WriteLine( result.Path + "\n" + 
                                   result.Properties["cn"][0] + "\n" + 
                                   result.Properties["samaccountname"][0]  );
            }

            Console.ReadLine( );

        }
   }
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top