DsClientMakeSpnForTargetServerW 函式 (ntdsapi.h)
DsClientMakeSpnForTargetServer函式會建構服務主體名稱 (SPN) ,以識別要用於驗證的特定伺服器。
語法
NTDSAPI DWORD DsClientMakeSpnForTargetServerW(
[in] LPCWSTR ServiceClass,
[in] LPCWSTR ServiceName,
[in, out] DWORD *pcSpnLength,
[out] LPWSTR pszSpn
);
參數
[in] ServiceClass
Null 終止字串的指標,其中包含服務所定義的服務類別。 這可以是服務唯一的任何字串。
[in] ServiceName
Null 終止字串的指標,其中包含 DNS) 主機名稱 (辨別名稱服務。 這可以是完整名稱或網際網路標準格式的 IP 位址。
不建議使用 ServiceName 的 IP 位址,因為這可能會造成安全性問題。 在建構 SPN 之前,IP 位址必須透過 DNS 名稱解析轉譯為電腦名稱稱。 DNS 名稱解析可能遭到詐騙,並將預期的電腦名稱稱取代為未經授權的電腦名稱稱。
[in, out] pcSpnLength
在專案上, DWORD 值的指標包含 pszSpn 緩衝區的大小,以字元為單位。 在輸出時,此參數會接收復制到 pszSpn 緩衝區的字元數,包括終止 的 Null。
[out] pszSpn
接收 SPN 的字串緩衝區指標。
傳回值
此函式會傳回標準 Windows 錯誤碼。
備註
使用此函式時,請提供服務類別和 DNS 主機名稱的一部分。
此函式是 DsMakeSpn 函式的簡化版本。 ServiceName是透過 DNS 解析而成為標準。
不支援 GUID 型 DNS 名稱。 建構時,簡化的 SPN 如下所示:
ServiceClass / ServiceName / ServiceName
實例名稱部分 (第二個位置) 一律設為預設值。 不會使用埠和查閱者欄位。
注意
ntdsapi.h 標頭會根據 UNICODE 預處理器常數的定義,將 DsClientMakeSpnForTargetServer 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程式碼,可能會導致編譯或執行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
最低支援的用戶端 | Windows Vista |
最低支援的伺服器 | Windows Server 2008 |
目標平臺 | Windows |
標頭 | ntdsapi.h |
程式庫 | Ntdsapi.lib |
DLL | Ntdsapi.dll |