Condividi tramite


Funzione DsBindWithSpnA (ntdsapi.h)

La funzione DsBindWithSpn viene associata a un controller di dominio usando le credenziali specificate e un nome SPN (Service Principal Name) specifico per l'autenticazione reciproca.

Questa funzione viene fornita per dove è necessario il controllo completo per l'autenticazione reciproca. Non usare questa funzione se si prevede che DsBind trovare automaticamente un server, perché i nomi SPN sono specifici del computer ed è improbabile che il nome SPN specificato corrisponda al server che DsBind trova automaticamente. Se si specifica un argomento NULLServicePrincipalName si ottiene un comportamento identico a DsBindWithCred.

Sintassi

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
);

Parametri

[in, optional] DomainControllerName

Puntatore a una stringa con terminazione Null contenente il nome DNS completo del dominio a cui eseguire l'associazione. Per altre informazioni, vedere la descrizione DomainControllerName nell'argomento DsBind .

[in, optional] DnsDomainName

Puntatore a una stringa con terminazione Null contenente il nome DNS completo del dominio a cui eseguire l'associazione. Per altre informazioni, vedere la descrizione DnsDomainName nell'argomento DsBind.

[in, optional] AuthIdentity

Contiene un valore RPC_AUTH_IDENTITY_HANDLE che rappresenta le credenziali da usare per l'associazione. Le

funzione DsMakePasswordCredentials viene usata per ottenere questo valore. Se questo parametro è NULL, vengono usate le credenziali del thread chiamante.

DsUnBind deve essere chiamato prima di liberare questo handle con la funzione DsFreePasswordCredentials.

[in, optional] ServicePrincipalName

Puntatore a una stringa con terminazione Null che specifica il nome dell'entità servizio da assegnare al client. Il passaggio di NULL in ServicePrincipalName equivale a una chiamata alla funzione DsBindWithCred.

[out] phDS

Indirizzo di un HANDLE valore che riceve l'handle di associazione. Per chiudere questo handle, passarlo alla funzione DsUnBind .

Valore restituito

Restituisce ERROR_SUCCESS in caso di esito positivo o di un codice di errore Windows o RPC in caso contrario. Di seguito sono riportati i codici di errore più comuni.

Osservazioni

Nota

L'intestazione ntdsapi.h definisce DsBindWithSpn come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows Vista
server minimo supportato Windows Server 2008
piattaforma di destinazione Finestre
intestazione ntdsapi.h
libreria Ntdsapi.lib
dll Ntdsapi.dll

Vedere anche

controller di dominio e funzioni di gestione della replica

DsBind

DsBindWithCred

DsUnBind