SecMakeSPNEx 函式 (ntifs.h)
SecMakeSPNEx 會建立服務提供者名稱字串,可在與特定安全性服務提供者通訊時使用。
語法
KSECDDDECLSPEC NTSTATUS SecMakeSPNEx(
[in] IN PUNICODE_STRING ServiceClass,
[in] IN PUNICODE_STRING ServiceName,
[in] IN PUNICODE_STRING InstanceName,
[in, optional] IN USHORT InstancePort,
[in, optional] IN PUNICODE_STRING Referrer,
[in, optional] IN PUNICODE_STRING TargetInfo,
[in, out] IN OUT PUNICODE_STRING Spn,
[out, optional] OUT PULONG Length,
[in] IN BOOLEAN Allocate
);
參數
[in] ServiceClass
Unicode 字串的指標,指定安全性服務提供者的服務類別。
[in] ServiceName
Unicode 字串的指標,指定安全性服務提供者的服務名稱。
[in] InstanceName
選擇性 Unicode 字串的指標,指定與安全性服務提供者聯機的實例名稱。
[in, optional] InstancePort
服務的實例埠號碼。 針對預設埠使用 0。 如果此參數為零,SPN 不會包含埠號碼。
[in, optional] Referrer
常數 Null 終止字串的指標,指定提供 IP 位址轉介之主機的 DNS 名稱。 除非 ServiceName 參數指定 IP 位址,否則會忽略此參數。
[in, optional] TargetInfo
表示內容目標的 Null 終止字串指標。
[in, out] Spn
Unicode 字串的指標,用來儲存此函式所建立的安全性服務提供者名稱字串。
[out, optional] Length
ULONG 的指標,接收所建立SPN的實際長度,包括終止 Null 字元。
[in] Allocate
布爾值變數,指出此函式是否應該配置儲存 Spn Unicode 字串的記憶體。 如果此參數為 true,Spn 的記憶體將會從分頁集區配置。
傳回值
SecMakeSPNEx 會在成功時傳回STATUS_SUCCESS,或在失敗時傳回下列其中一個錯誤碼。
傳回碼 | Description |
---|---|
STATUS_BUFFER_OVERFLOW | Allocate 參數已設定為 false,且發生下列其中一個條件: (1) Spn 參數是 NULL 指標。 (2) Spn Unicode 字串參數的最大長度太小。 |
STATUS_INVALID_PARAMETER | Spn 參數的總長度超過 65535 個字節。 |
STATUS_NO_MEMORY | Allocate 參數已設定為 true,但記憶體配置要求失敗。 |
備註
SecMakeSPNEx 是一種增強版 的 SecMakeSPN。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 此函式僅是 Windows XP |
目標平台 | Universal |
標頭 | ntifs.h (包括 Ntifs.h、FltKernel.h) |
程式庫 | Ksecdd.lib |
IRQL | <= APC_LEVEL |