Freigeben über


DsBindWithSpnA-Funktion (ntdsapi.h)

Die DsBindWithSpn--Funktion wird mithilfe der angegebenen Anmeldeinformationen und eines bestimmten Dienstprinzipalnamens (SPN) für die gegenseitige Authentifizierung an einen Domänencontroller gebunden.

Diese Funktion wird bereitgestellt, für die vollständige Kontrolle für die gegenseitige Authentifizierung erforderlich ist. Verwenden Sie diese Funktion nicht, wenn Sie erwarten, dass DsBind- einen Server für Sie finden, da SPNs computerspezifisch sind, und es ist unwahrscheinlich, dass der von Ihnen bereitgestellte SPN mit dem Server übereinstimmt, der DsBind für Sie findet. Das Bereitstellen eines NULLServicePrincipalName Argument führt zu einem Verhalten, das mit DsBindWithCredidentisch ist.

Syntax

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

Parameter

[in, optional] DomainControllerName

Zeiger auf eine mit Null beendete Zeichenfolge, die den vollqualifizierten DNS-Namen der Domäne enthält, an die eine Bindung hergestellt werden soll. Weitere Informationen finden Sie in der beschreibung DomainControllerName im thema DsBind.

[in, optional] DnsDomainName

Zeiger auf eine mit Null beendete Zeichenfolge, die den vollqualifizierten DNS-Namen der Domäne enthält, an die eine Bindung hergestellt werden soll. Weitere Informationen finden Sie in der beschreibung DnsDomainName im thema DsBind.

[in, optional] AuthIdentity

Enthält einen RPC_AUTH_IDENTITY_HANDLE Wert, der die Anmeldeinformationen darstellt, die für die Bindung verwendet werden sollen. Das

DsMakePasswordCredentials Funktion wird verwendet, um diesen Wert abzurufen. Wenn dieser Parameter NULL-ist, werden die Anmeldeinformationen des aufrufenden Threads verwendet.

DsUnBind- muss aufgerufen werden, bevor dieses Handle mit der DsFreePasswordCredentials--Funktion freigegeben wird.

[in, optional] ServicePrincipalName

Zeigen Sie auf eine mit Null beendete Zeichenfolge, die den Dienstprinzipalnamen angibt, der dem Client zugewiesen werden soll. Das Übergeben NULL- in ServicePrincipalName- entspricht einem Aufruf der funktion DsBindWithCredWithCred.

[out] phDS

Adresse eines HANDLE Werts, der das Bindungshandle empfängt. Um dieses Handle zu schließen, übergeben Sie es an die DsUnBind--Funktion.

Rückgabewert

Gibt ERROR_SUCCESS zurück, wenn ein Windows- oder RPC-Fehlercode andernfalls erfolgreich war. Im Folgenden finden Sie die am häufigsten verwendeten Fehlercodes.

Bemerkungen

Anmerkung

Der ntdsapi.h-Header definiert DsBindWithSpn als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows Vista
mindestens unterstützte Server- Windows Server 2008
Zielplattform- Fenster
Header- ntdsapi.h
Library Ntdsapi.lib
DLL- Ntdsapi.dll

Siehe auch

Domänencontroller- und Replikationsverwaltungsfunktionen

DsBind-

DsBindWithCred

DsUnBind-