Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Globální katalog je prostor názvů, který obsahuje data adresáře pro všechny domény v doménové struktuře. Globální katalog obsahuje částečnou repliku každého adresáře domény. Obsahuje položku pro každý objekt v podnikové doménové struktuře, ale neobsahuje všechny vlastnosti každého objektu. Místo toho obsahuje pouze vlastnosti zadané pro zahrnutí do globálního katalogu.
Globální katalog je uložený na konkrétních serverech v celém podniku. Jako servery globálního katalogu můžou sloužit jenom řadiče domény. Správci určují, jestli daný řadič domény obsahuje globální katalog pomocí služby Active Directory Sites and Services Manager.
Chcete-li vytvořit vazbu na globální katalog s rozhraním ADSI, použijte moniker "GC:".
Existují dva způsoby, jak se připojit ke globálnímu katalogu a provést hledání v lese:
- Vytvořte vazbu k kořenovému objektu organizace a prohledejte všechny domény v doménové struktuře.
- Vytvořte vazbu na konkrétní objekt a vyhledejte ho a jeho podřízené objekty. Pokud například vytvoříte vazbu na doménu, která má pod sebou dvě domény ve stromové struktuře lesa, můžete prohledávat všechny tři domény. Mějte na paměti, že rozlišující název objektu, na který se má vytvořit vazba, je přesně stejný jako rozlišující název použitý k vytvoření vazby na obor názvů LDAP:. Pamatujte, že "LDAP:" je úplná replika jedné domény a že "GC:" je částečná replika všech domén v lesu.
Stejně jako u monikeru LDAP:, můžete použít bezserverovou vazbu nebo vytvořit vazbu na konkrétní server globálního katalogu. Pokud hledáte v aktuálním síťovém lese, použijte bezserverové napojení. Pokud ale hledáte v jiném lese, zadejte název domény nebo server globálního katalogu, ke kterému se má připojit, například v následujících příkladech.
Vytvoření vazby pomocí názvu domény:
GC://fabrikam.com
Vytvoření vazby pomocí názvu serveru:
GC://servername
Můžete také vytvořit vazbu na konkrétní objekt v rámci globálního katalogu. Chcete-li vytvořit vazbu k objektu prodeje v doméně fabrikam, použijte následující formát.
GC://fabrikam.com/DC=sales,DC=fabrikam,DC=com
Pokud chcete vytvořit vazbu k objektu prodeje na serveru, použijte následující formát.
GC://servername.fabrikam.com/DC=sales,DC=fabrikam,DC=com
Prohledat celý les
- Vytvořte vazbu na kořen oboru názvů Global Catalogu.
- Vytvoření výčtu kontejneru globálního katalogu Kontejner globálního katalogu obsahuje jeden objekt, který můžete použít k prohledávání celého lesa.
- K provedení hledání použijte objekt v kontejneru. V jazyce C/C++ zavolejte QueryInterface získat ukazatel IDirectorySearch na objekt, abyste mohli použít rozhraní IDirectorySearch k provedení hledání. V jazyce Visual Basic použijte objekt vrácený z výčtu v dotazu ADO.
Pokud chcete zobrazit výčet serverů globálního katalogu v lokalitě, pomocí následujícího řetězce filtru proveďte vyhledávání podstromu LDAP "cn=<vaší lokalita>,cn=sites,<DN konfiguračního jmenného kontextu>".
(&(objectCategory=nTDSDSA)(options:1.2.840.113556.1.4.803:=1))
Tento filtr používá LDAP_MATCHING_RULE_BIT_AND porovnávací operátor pravidla (1.2.840.113556.1.4.803) k vyhledání nTDSDSA objektů, které mají v bitové masce atributu možnosti nastavený nízký pořadový bit. Bit s nízkým pořadím, který odpovídá NTDSDSA_OPT_IS_GC konstantě definované v Ntdsapi.h, identifikuje nTDSDSA objekt serveru globálního katalogu. Další informace o pravidlech shody naleznete v tématu Syntaxe filtru vyhledávání.
Nadřazený objekt nTDSDSA je objekt serveru a vlastnost dNSHostName objektu serveru je název DNS serveru globálního katalogu.
Nelze použít #define konstanty, jako jsou NTDSDSA_OPT_IS_GC a LDAP_MATCHING_RULE_BIT_AND přímo v řetězci filtru hledání. Tyto konstanty ale můžete použít jako argumenty pro funkci, jako je například swprintf_s k vložení konstantních hodnot do řetězce filtru.
Globální katalog nepředstavuje celou strukturu lesního stromu. Například můžete očekávat, že následující příklad kódu provede výčet všech domén v lese a všech podřízených objektů v každé doméně. Ve skutečnosti vyjmenuje všechny domény v lesu, ale žádný z těchto doménových objektů neobsahuje žádné podřízené objekty. Jedná se o omezení globálního katalogu.
Dim oGC As IADs
Dim oDomain As IADs
Dim oChild As IADs
Set oGC = GetObject("GC:")
For Each oDomain In oGC
' Print the name of the domain.
Debug.Print oDomain.Name
' Enumerate the child objects of the domain.
For Each oChild In oDomain
Debug.Print oChild.Name
Next
Next
Chcete-li tento problém opravit, je nutné vytvořit vazbu na každý objekt domény a potom vytvořit výčet podřízených objektů každé domény. Správná technika je znázorněna v následujícím příkladu kódu.
Dim oGC As IADs
Dim oDomainEnum As IADs
Dim oDomainBind As IADs
Dim oChild As IADs
Set oGC = GetObject("GC:")
For Each oDomainEnum In oGC
' Print the name of the domain.
Debug.Print oDomainEnum.Name
' Bind to the domain.
Set oDomainBind = GetObject("LDAP://" + oDomainEnum.Name)
' Enumerate the child objects of the domain.
For Each oChild In oDomainBind
Debug.Print oChild.Name
Next
Next
Další informace a příklady kódu, které ukazují, jak prohledávat celý les, najdete v části Příklad kódu pro vyhledávání lesa.