Compartilhar via


Função DsBindWithSpnA (ntdsapi.h)

A função DsBindWithSpn é associada a um controlador de domínio usando as credenciais especificadas e um SPN (nome de entidade de serviço) específico para autenticação mútua.

Essa função é fornecida para onde o controle completo é necessário para autenticação mútua. Não use essa função se você espera que o DsBind encontre um servidor para você, pois os SPNs são específicos do computador e é improvável que o SPN fornecido corresponda ao servidor que dsBind localiza para você. Fornecer um argumento ServicePrincipalNameNULL resulta em um comportamento idêntico a DsBindWithCred.

Sintaxe

NTDSAPI DWORD DsBindWithSpnA(
  [in, optional] LPCSTR                   DomainControllerName,
  [in, optional] LPCSTR                   DnsDomainName,
  [in, optional] RPC_AUTH_IDENTITY_HANDLE AuthIdentity,
  [in, optional] LPCSTR                   ServicePrincipalName,
  [out]          HANDLE                   *phDS
);

Parâmetros

[in, optional] DomainControllerName

Ponteiro para uma cadeia de caracteres terminada em nulo que contém o nome DNS totalmente qualificado do domínio ao qual associar. Para obter mais informações, consulte a descrição DomainControllerName no tópico DsBind .

[in, optional] DnsDomainName

Ponteiro para uma cadeia de caracteres terminada em nulo que contém o nome DNS totalmente qualificado do domínio ao qual associar. Para obter mais informações, consulte a descrição DnsDomainName no tópico DsBind .

[in, optional] AuthIdentity

Contém um valor RPC_AUTH_IDENTITY_HANDLE que representa as credenciais a serem usadas para a associação. O

A função DsMakePasswordCredentials é usada para obter esse valor. Se esse parâmetro for NULL, as credenciais do thread de chamada serão usadas.

DsUnBind deve ser chamado antes de liberar esse identificador com a função DsFreePasswordCredentials .

[in, optional] ServicePrincipalName

Ponteiro para uma cadeia de caracteres terminada em nulo que especifica o Nome da Entidade de Serviço a ser atribuída ao cliente. Passar NULL em ServicePrincipalName é equivalente a uma chamada para a função DsBindWithCred .

[out] phDS

Endereço de um valor HANDLE que recebe o identificador de associação. Para fechar esse identificador, passe-o para a função DsUnBind .

Retornar valor

Retorna ERROR_SUCCESS se tiver êxito ou um código de erro do Windows ou RPC, caso contrário. Veja a seguir os códigos de erro mais comuns.

Comentários

Observação

O cabeçalho ntdsapi.h define DsBindWithSpn como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista
Servidor mínimo com suporte Windows Server 2008
Plataforma de Destino Windows
Cabeçalho ntdsapi.h
Biblioteca Ntdsapi.lib
DLL Ntdsapi.dll

Confira também

Funções de gerenciamento de replicação e controlador de domínio

DsBind

DsBindWithCred

DsUnBind