DsClientMakeSpnForTargetServerA 函式 (ntdsapi.h)
DsClientMakeSpnForTargetServer 函式會建構服務主體名稱 (SPN),以識別要用於驗證的特定伺服器。
語法
NTDSAPI DWORD DsClientMakeSpnForTargetServerA(
[in] LPCSTR ServiceClass,
[in] LPCSTR ServiceName,
[in, out] DWORD *pcSpnLength,
[out] LPSTR pszSpn
);
參數
[in] ServiceClass
包含服務所定義之服務類別之 Null 終止字串的指標。 這可以是服務唯一的任何字串。
[in] ServiceName
包含辨別名稱服務 (DNS) 主機名之 Null 終止字串的指標。 這可以是因特網標準格式的完整名稱或IP位址。
不建議針對 ServiceName 使用 IP 位址,因為這可能會造成安全性問題。 建構SPN之前,IP位址必須透過 DNS 名稱解析轉譯為電腦名稱。 DNS 名稱解析有可能遭到詐騙,將預期的計算機名稱取代為未經授權的計算機名稱。
[in, out] pcSpnLength
[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 |
目標平臺 | 窗戶 |
標頭 | ntdsapi.h |
連結庫 | Ntdsapi.lib |
DLL | Ntdsapi.dll |