Sdílet prostřednictvím


Vytvoření oddílu adresáře aplikace

Oddíl adresáře aplikace je reprezentován objektem domainDNS s atributem instanceType s hodnotou DS_INSTANCETYPE_IS_NC_HEAD v kombinaci s DS_INSTANCETYPE_NC_IS_WRITEABLE. Tento domainDNS objekt představuje kořen oddílu adresáře aplikace (HEAD) a má název podobný běžnému oddílu domény, například "DC=dynamicdata,DC=fabrikam,DC=com", který odpovídá názvu DNS "dynamicdata.fabrikam.com". Oddíl adresáře aplikace lze tedy spustit kdekoli, kde lze spustit oddíl domény. K oddílu adresáře aplikace není přidružený žádný název NetBIOS.

Je možné vnořit oddíly adresářů aplikací, což znamená, že oddíl adresáře aplikací může mít vlastní podřízené oddíly. Hledání s kořenem podstromu v hlavní části oddílu adresáře aplikace vygeneruje odkazy na pokračování na oddíly adresáře podřízené aplikace.

Repliku oddílu adresáře aplikace je možné vytvořit pouze na řadiči domény, který běží v systému Windows Server 2003 a novějším a pouze v době, kdy je role Domain-Naming FSMO uložena řadičem domény se systémem Windows Server 2003 a novějším. Ve smíšené doménové struktuře, která má řadiče domény systému Windows Server 2003 i řadiče domény nižší úrovně (řadiče domény systému Windows 2000 nebo primární řadiče domény systému Windows NT 4.0), pokus o vytvoření repliky oddílu adresáře aplikace na řadiči domény nižší úrovně selže.

Oddíl adresáře aplikace má také odpovídající crossRef objektu v kontejneru Partitions konfiguračního oddílu. Před vytvořením objektu domainDNS je možné předem ručně vytvořit crossRef. Předem vytvořený objekt crossRef musí mít hodnoty atributů uvedené v následující tabulce nebo vytvoření oddílu selže. Pokud objekt crossRef neexistuje, server služby Active Directory ho vytvoří při vytvoření oddílu adresáře aplikace.

Atribut Popis
dnsRoot Obsahuje cestu DNS řadiče domény, na které se vytvoří oddíl adresáře aplikace.
Povoleno Obsahuje FALSE.
nCName Obsahuje rozlišovací název oddílu. V předchozím příkladu by tento atribut obsahoval "DC=dynamicdata,DC=mydomain,DC=com".

 

Chcete-li vytvořit nový oddíl adresáře aplikace s jeho první replikou, proveďte následující kroky

  1. Vytvořte vazbu k oboru názvů pro nový oddíl a určete řadič domény, který bude hostitelem oddílu adresáře aplikace v ADsPathu. Pokud například chcete vytvořit oddíl s ADsPath "DC=dynamicdata,DC=mydomain,DC=com", vazba ADsPath by byla "LDAP://<řadič domény>/DC=mydomain,DC=com", kde "<řadič domény>" je název DNS řadiče domény, který bude hostovat oddíl.

    Operace vazby musí určovat možnosti rychlého a delegování. Rychlá možnost umožňuje úspěšné vytvoření vazby i v případě, že obor názvů neexistuje. Aby mohl řadič domény kontaktovat držitele role FSMO označeného jako Domain-Naming pomocí stejných přihlašovacích údajů, je nutné povolit možnost delegování.

    Systémová verze řadiče domény musí být operační systém Windows Server 2003 a novější.

  2. Vytvořte objekt domainDNS s odpovídajícím názvem oddílu, například DC=dynamicdata, který představuje hlavní název kontextu pro nový oddíl. Objekt domainDNS musí mít atribut instanceType s hodnotou 5 (DS_INSTANCETYPE_IS_NC_HEAD | DS_INSTANCETYPE_NC_IS_WRITEABLE). Atribut instanceType lze nastavit pouze při vytváření, protože se jedná o atribut pouze systémový.

Po vytvoření objektu domainDNS provede server služby Active Directory následující kroky:

  1. Vyhledá objekt crossRef v kontejneru Partitions, který má hodnotu atributu nCName, která odpovídá rozlišujícímu názvu oddílu a pokud se najde shoda, upraví objekt crossRef tak, aby představoval oddíl adresáře aplikace. Pokud se nenajde odpovídající objekt crossRef, vytvoří server služby Active Directory nový objekt crossRef představující oddíl adresáře aplikace.

    Následující tabulka uvádí důležité atributy crossRef objektu.

    Atribut Popis
    nCName Obsahuje rozlišující název oddílu.
    dnsRoot Obsahuje název DNS oddílu.
    msDS-NC-Replica-Locations Rozlišující název nTDSDSA objektu řadiče domény pro první repliku se přidá do tohoto atributu.

     

  2. Zahajte synchronizaci konfiguračního oddílu a počkejte na dokončení. Díky tomu může klientská aplikace upravovat parametry konfigurace pro nově vytvořený oddíl adresáře aplikace, zatímco je svázán se stejným řadičem domény, který se používá k vytvoření oddílu adresáře aplikace.

  3. Vytvořte objekt domainDNS s příznaky DS_INSTANCETYPE_IS_NC_HEAD a DS_INSTANCETYPE_NC_IS_WRITEABLE nastavenými ve vlastnosti instanceType. Vlastnost instanceType může obsahovat i jiné, privátní příznaky.

  4. Naplňte ms-DS-Has-Master-NCs atributu nTDSDSA objektu cílového řadiče domény rozlišujícím názvem nově vytvořeného oddílu adresáře aplikace.

Při vytvoření oddílu adresáře aplikace nebo při přidání a úplné synchronizaci nové repliky oddílu adresáře aplikace server Active Directory správně zaregistruje repliku do NetLogonu a DNS. Další informace a seznam registrovaných záznamů SRV naleznete v tématu Vyhledání hostitelského serveru oddílu adresáře aplikace.

Další informace o vytvoření oddílu adresáře aplikace naleznete v tématu Příklad kódu pro vytvoření oddílu adresáře aplikace.

Vyhledání kontejneru oblastí

Rozlišující název kontejneru Partitions najdete jedním ze dvou způsobů. První je složitější provést, ale vždy poskytne přesný výsledek:

  1. Vytvořte vazbu na RootDSE a získejte atribut configurationNamingContext.
  2. Pomocí atributu configurationNamingContext vytvořte vazbu na kontejner konfigurace.
  3. Vyhledejte v kontejneru konfigurace objekt, který je typu crossRefContainer.
  4. Získejte hodnotu atributu distinguishedName objektu crossRefContainer. Bude to rozlišující název kontejneru Partitions.

Další informace a příklad kódu, který ukazuje tuto metodu pro nalezení kontejneru Oddílů, naleznete ve funkci GetPartitionsDNSearch v dokumentu Příklad kódu pro nalezení kontejneru Oddílů.

Druhá metoda je jednodušší implementovat, ale spoléhá na kontejner Partitions s konkrétním relativním rozlišujícím názvem. V současné době není možné změnit název kontejneru Partitions, ale pokud je tato funkce přidána v budoucnu, následující postup nebude fungovat správně, pokud byl kontejner Partitions přejmenován.

  1. Vytvořte vazbu na RootDSE a získejte atribut configurationNamingContext.
  2. Zkombinujte řetězec CN=Partitions, následovaný atributem configurationNamingContext a vytvořte rozlišující název kontejneru Partitions. Rozlišující název bude ve tvaru CN=Partitions,<configuration DN>.

Pro více informací a ukázku kódu, který demonstruje tuto metodu pro vyhledání kontejneru Partitions, viz funkce GetPartitionsDNManual v Příklad kódu pro umístění kontejneru Partitions.