Freigeben über


DsClientMakeSpnForTargetServerA-Funktion (ntdsapi.h)

Die DsClientMakeSpnForTargetServer-Funktion erstellt einen Dienstprinzipalnamen (Service Principal Name, SPN), der einen bestimmten Server identifiziert, der für die Authentifizierung verwendet werden soll.

Syntax

NTDSAPI DWORD DsClientMakeSpnForTargetServerA(
  [in]      LPCSTR ServiceClass,
  [in]      LPCSTR ServiceName,
  [in, out] DWORD  *pcSpnLength,
  [out]     LPSTR  pszSpn
);

Parameter

[in] ServiceClass

Zeiger auf eine null-beendete Zeichenfolge, die die Vom Dienst definierte Klasse des Diensts enthält. Hierbei kann es sich um eine beliebige Zeichenfolge handeln, die für den Dienst eindeutig ist.

[in] ServiceName

Zeiger auf eine NULL-beendete Zeichenfolge, die den DNS-Hostnamen (Distinguished Name Service) enthält. Dies kann entweder ein vollqualifizierter Name oder eine IP-Adresse im Internetstandardformat sein.

Die Verwendung einer IP-Adresse für ServiceName wird nicht empfohlen, da dies zu einem Sicherheitsproblem führen kann. Bevor der SPN erstellt wird, muss die IP-Adresse durch DNS-Namensauflösung in einen Computernamen übersetzt werden. Es ist möglich, dass die DNS-Namensauflösung spooft wird, indem der beabsichtigte Computername durch einen nicht autorisierten Computernamen ersetzt wird.

[in, out] pcSpnLength

Zeiger auf einen DWORD-Wert , der bei einem Eintrag die Größe des puffers pszSpn in Zeichen enthält. Bei der Ausgabe empfängt dieser Parameter die Anzahl der Zeichen, die in den Puffer pszSpn kopiert wurden, einschließlich der beendenden NULL.

[out] pszSpn

Zeiger auf einen Zeichenfolgenpuffer, der den SPN empfängt.

Rückgabewert

Diese Funktion gibt Standardmäßige Windows-Fehlercodes zurück.

Hinweise

Geben Sie bei Verwendung dieser Funktion die Dienstklasse und einen Teil eines DNS-Hostnamens an.

Diese Funktion ist eine vereinfachte Version der DsMakeSpn-Funktion . Der ServiceName wird kanonisch gemacht, indem über DNS aufgelöst wird.

GUID-basierte DNS-Namen werden nicht unterstützt. Bei der Erstellung sieht der vereinfachte SPN wie folgt aus:

ServiceClass / ServiceName / ServiceName

Der instance Namensteil (zweite Position) ist immer auf den Standardwert festgelegt. Die Port- und Verweisfelder werden nicht verwendet.

Hinweis

Der ntdsapi.h-Header definiert DsClientMakeSpnForTargetServer als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code 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
Unterstützte Mindestversion (Client) Windows Vista
Unterstützte Mindestversion (Server) Windows Server 2008
Zielplattform Windows
Kopfzeile ntdsapi.h
Bibliothek Ntdsapi.lib
DLL Ntdsapi.dll

Weitere Informationen

Domänencontroller und Replikationsverwaltungsfunktionen

DsMakeSpn