SecMakeSPNEx2-Funktion (ntifs.h)
SecMakeSPNEx2 erstellt eine Dienstanbieternamenzeichenfolge, die verwendet werden kann, wenn sie mit bestimmten Sicherheitsdienstanbietern kommuniziert.
Syntax
KSECDDDECLSPEC NTSTATUS SecMakeSPNEx2(
[in] IN PUNICODE_STRING ServiceClass,
[in] IN PUNICODE_STRING ServiceName,
[in, optional] IN PUNICODE_STRING InstanceName,
[in, optional] IN USHORT InstancePort,
[in, optional] IN PUNICODE_STRING Referrer,
[in, optional] IN PUNICODE_STRING InTargetInfo,
[in, out] IN OUT PUNICODE_STRING Spn,
[out, optional] OUT PULONG TotalSize,
[in] IN BOOLEAN Allocate,
[in] IN BOOLEAN IsTargetInfoMarshaled
);
Parameter
[in] ServiceClass
Ein Zeiger auf eine Unicode-Zeichenfolge, die die Dienstklasse für den Sicherheitsdienstanbieter angibt.
[in] ServiceName
Ein Zeiger auf eine Unicode-Zeichenfolge, die den Dienstnamen für den Sicherheitsdienstanbieter angibt.
[in, optional] InstanceName
Ein Zeiger auf eine optionale Unicode-Zeichenfolge, die den instance Namen angibt, der zum Herstellen einer Verbindung mit dem Sicherheitsdienstanbieter verwendet wird.
[in, optional] InstancePort
Portnummer für eine instance des Diensts. Verwenden Sie 0 für den Standardport. Wenn dieser Parameter null ist, enthält der SPN keine Portnummer.
[in, optional] Referrer
Zeiger auf eine konstante NULL-endende Zeichenfolge, die den DNS-Namen des Hosts angibt, der eine IP-Adressreferenz erteilt hat. Dieser Parameter wird ignoriert, es sei denn, der Parameter ServiceName gibt eine IP-Adresse an.
[in, optional] InTargetInfo
Ein Zeiger auf eine NULL-endende Zeichenfolge, die das Ziel des Kontexts angibt.
[in, out] Spn
Ein Zeiger auf eine Unicode-Zeichenfolge, die die Zeichenfolge des Sicherheitsdienstanbieternamens empfängt, die von dieser Funktion erstellt wird.
[out, optional] TotalSize
Zeiger auf eine ULONG, die die tatsächliche Länge des erstellten SPNs empfängt, einschließlich des abschließenden NULL-Zeichens.
[in] Allocate
Eine boolesche Variable, die angibt, ob der Arbeitsspeicher, der zum Speichern der Spn-Unicode-Zeichenfolge verwendet wird, von dieser Funktion zugeordnet werden soll. Wenn dieser Parameter TRUE ist, wird der Arbeitsspeicher für Spn aus dem ausgelagerten Pool zugewiesen.
[in] IsTargetInfoMarshaled
Eine boolesche Variable, die angibt, dass der Aufrufer eine gemarshallte InTargetInfo-Struktur bereitgestellt hat. Wenn IsTargetInfoMarshaled TRUE ist, zeigt InTargetInfo-Buffer> auf eine Zeichenfolgendarstellung der CREDENTIAL_TARGET_INFORMATION-Struktur, wie sie von der CredMarshalTargetInfo-Funktion zurückgegeben wird.
Rückgabewert
SecMakeSPNEx2 gibt bei Erfolg STATUS_SUCCESS oder einen der folgenden Fehlercodes bei Einem Fehler zurück.
Rückgabecode | Beschreibung |
---|---|
STATUS_BUFFER_OVERFLOW | Der Allocate-Parameter wurde auf false festgelegt, und eine der folgenden Bedingungen ist aufgetreten: (1) Der Parameter Spn war ein NULL-Zeiger. (2) Die maximale Länge für den Unicode-Zeichenfolgenparameter von Spn war zu klein. |
STATUS_INVALID_PARAMETER | Die Gesamtlänge des Spn-Parameters überschreitet 65535 Bytes. |
STATUS_NO_MEMORY | Der Allocate-Parameter wurde auf true festgelegt, aber bei der Speicherbelegungsanforderung ist ein Fehler aufgetreten. |
Hinweise
SecMakeSPNEx2 ist eine erweiterte Version von SecMakeSPNEx.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista |
Unterstützte Mindestversion (Server) | Windows Server 2008 |
Zielplattform | Universell |
Header | ntifs.h (include Ntifs.h, FltKernel.h) |
Bibliothek | Ksecdd.lib |
IRQL | <= APC_LEVEL |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für