Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Uma partição de diretório de aplicativos é representada por um objeto domainDNS com um instanceType valor de atributo de DS_INSTANCETYPE_IS_NC_HEAD combinado com DS_INSTANCETYPE_NC_IS_WRITEABLE. Este objeto domainDNS representa a raiz da partição de diretório de aplicativos (NC head) e é nomeado de forma semelhante a uma partição de domínio regular, por exemplo, "DC=dynamicdata,DC=fabrikam,DC=com", que corresponde a um nome DNS de "dynamicdata.fabrikam.com". Uma partição de diretório de aplicativos pode, portanto, ser instanciada em qualquer lugar onde uma partição de domínio possa ser instanciada. Não há nenhum nome NetBIOS associado a uma partição de diretório de aplicativos.
É possível aninhar partições de diretório de aplicativos, isto é, uma partição de diretório de aplicativos pode ter partições de diretório de aplicativos filhas. Pesquisas com escopo de subárvore enraizado em um cabeçalho de partição de diretório de aplicativos gerarão referências de continuação para as partições de diretório de aplicativos filho.
Uma réplica de partição de diretório de aplicativos só pode ser criada em um controlador de domínio que esteja sendo executado no Windows Server 2003 e posterior e somente enquanto a função FSMO Domain-Naming estiver mantida por um controlador de domínio do Windows Server 2003 e posterior. Em uma floresta mista que tenha controladores de domínio do Windows Server 2003 e controladores de domínio de nível inferior (controladores de domínio do Windows 2000 ou controladores de domínio primários do Windows NT 4.0), uma tentativa de criar uma réplica de partição de diretório de aplicativos em um controlador de domínio de nível inferior falhará.
Uma partição de diretório de aplicativos também tem um objeto crossRef correspondente no contêiner Partitions da partição de configuração. O crossRef pode ser pré-criado manualmente antes de criar o objeto domainDNS. O objeto crossRef pré-criado deve ter os valores de atributo mostrados na tabela a seguir ou a criação da partição falhará. Se o objeto crossRef não existir, o servidor do Ative Directory criará um quando a partição de diretório de aplicativos for criada.
| Atributo | Descrição |
|---|---|
| dnsRoot | Contém o caminho DNS do controlador de domínio no qual a partição de diretório de aplicativos será criada. |
| Ativado | Contém FALSE. |
| nCName | Contém o nome distinto da partição. No exemplo acima, esse atributo conteria "DC=dynamicdata,DC=mydomain,DC=com". |
Para criar uma nova partição de diretório de aplicativos com sua primeira réplica, execute as seguintes etapas
Associe-se ao namespace da nova partição, especificando o controlador de domínio que hospedará a partição do diretório de aplicativos no ADsPath. Por exemplo, para criar uma partição com um ADsPath de "DC=dynamicdata,DC=mydomain,DC=com", a ligação ADsPath seria "LDAP://<controlador de domínio>/DC=mydomain,DC=com", onde "<controlador de domínio>" é o nome DNS do controlador de domínio que hospedará a partição.
A operação de ligação deve especificar as opções rápida e de delegação. A opção rápida permite que a associação seja bem-sucedida mesmo que o namespace não exista. A opção de delegação é necessária para permitir que o controlador de domínio entre em contato com o titular da função FSMO Domain-Naming usando as mesmas credenciais.
A versão do sistema do controlador de domínio deve ser o sistema operacional Windows Server 2003 e posterior.
Crie um objeto domainDNS com um nome apropriado para a partição, por exemplo, "DC=dynamicdata", para representar o cabeçalho de contexto de nomenclatura para a nova partição. O objeto domainDNS deve ter um atributo instanceType com um valor de 5 (DS_INSTANCETYPE_IS_NC_HEAD | DS_INSTANCETYPE_NC_IS_WRITEABLE). O atributo instanceType só pode ser definido no momento da criação porque é um atributo somente do sistema.
Quando o objeto domainDNS é criado, o servidor do Ative Directory executará as seguintes etapas:
Procura um objeto crossRef no contêiner Partitions que tenha um valor de atributo nCName que corresponda ao nome distinto da partição e, se uma correspondência for encontrada, modifica o objeto crossRef para representar a partição de diretório de aplicativos. Se um objeto de crossRef correspondente não for encontrado, o servidor do Active Directory criará um novo objeto crossRef para representar a partição de diretório de aplicativos.
A tabela a seguir lista atributos importantes do objeto crossRef.
Atributo Descrição nCName Contém o nome distinto da partição. dnsRoot Contém o nome DNS da partição. msDS-NC-Replica-Locations O nome distinto do nTDSDSA objeto do controlador de domínio para a primeira réplica é adicionado a esse atributo. Inicie uma sincronização da partição de configuração e aguarde a conclusão. Isso permite que o aplicativo cliente modifique os parâmetros de configuração para a partição de diretório de aplicativos recém-criada enquanto estiver vinculado ao mesmo controlador de domínio usado para criar a partição de diretório de aplicativos.
Crie o objeto domainDNS com os sinalizadores DS_INSTANCETYPE_IS_NC_HEAD e DS_INSTANCETYPE_NC_IS_WRITEABLE definidos na propriedade instanceType. A propriedade instanceType pode também conter outros indicadores particulares.
Preencha o atributo ms-DS-Has-Master-NCs do objeto nTDSDSA para o controlador de domínio de destino com o nome distinto da partição de diretório de aplicativos recém-criada.
Quando a partição de diretório de aplicativos é criada, ou quando uma nova réplica da partição de diretório de aplicativos é adicionada e totalmente sincronizada, o servidor do Ative Directory registra corretamente a réplica com NetLogon e DNS. Para obter mais informações e uma lista dos registros SRV registrados, consulte Localizando um servidor host de partição de diretório de aplicativos.
Para obter mais informações sobre como criar uma partição de diretório de aplicativos, consulte código de exemplo para criar uma partição de diretório de aplicativos.
Localizando o contêiner de partições
O nome distinto do contêiner Partições pode ser encontrado de duas maneiras. O primeiro é mais complicado de executar, mas sempre fornecerá um resultado preciso:
- Ligue-se ao RootDSE e obtenha o atributo de configurationNamingContext .
- Utilize o atributo configurationNamingContext para ligar ao container de configuração.
- Procure no contêiner de configuração um objeto que seja do tipo crossRefContainer.
- Obtenha o valor do atributo distinguishedName do objeto crossRefContainer. Este será o nome distinto do contêiner Partições.
Para obter mais informações e um exemplo de código que mostra esse método para localizar o contêiner Partitions, consulte a função GetPartitionsDNSearch em Código de exemplo para localizar o contêiner de partições.
O segundo método é mais fácil de implementar, mas depende de o contenedor Partitions ter um nome distinguido relativo específico. Atualmente, não é possível alterar o nome do contêiner Partições, mas se esse recurso for adicionado no futuro, o procedimento abaixo não funcionará corretamente se o contêiner Partições tiver sido renomeado.
- Ligue-se ao RootDSE e obtenha o atributo configurationNamingContext .
- Combine a cadeia "CN=Partitions" com o atributo configurationNamingContext para criar o nome distinto do contentor Partitions. O nome distinto terá o formato "CN=Partitions,<configuration DN>".
Para obter mais informações e um exemplo de código que mostra este método para localizar o contentor de partições, consulte a função GetPartitionsDNManual em Código de exemplo para localizar o contentor de partições.