DsBindWithSpnA 函式 (ntdsapi.h)
DsBindWithSpn 函式會使用指定的認證和特定的服務主體名稱 (SPN) 系結至域控制器,以進行相互驗證。
此函式適用於相互驗證所需的完整控制位置。 如果您預期 DsBind 為您尋找伺服器,請勿使用此函式,因為 SPN 是電腦特定的,而且您提供的 SPN 不太可能符合您 DsBind 找到的伺服器。 提供 NULLServicePrincipalName 自變數會導致行為與 DsBindWithCred相同。
語法
NTDSAPI DWORD DsBindWithSpnA(
[in, optional] LPCSTR DomainControllerName,
[in, optional] LPCSTR DnsDomainName,
[in, optional] RPC_AUTH_IDENTITY_HANDLE AuthIdentity,
[in, optional] LPCSTR ServicePrincipalName,
[out] HANDLE *phDS
);
參數
[in, optional] DomainControllerName
Null 終止字串的指標,其中包含要系結之網域的完整 DNS 名稱。 如需詳細資訊,請參閱 DsBind 主題中的 DomainControllerName 描述。
[in, optional] DnsDomainName
Null 終止字串的指標,其中包含要系結之網域的完整 DNS 名稱。 如需詳細資訊,請參閱 DsBind 主題中的 DnsDomainName 描述。
[in, optional] AuthIdentity
包含 RPC_AUTH_IDENTITY_HANDLE 值,表示要用於系結的認證。 這
DsMakePasswordCredentials 函式可用來取得此值。 如果此參數 NULL,則會使用呼叫線程的認證。
必須先呼叫 DsUnBind,才能使用 DsFreePasswordCredentials 函式釋放此句柄。
[in, optional] ServicePrincipalName
Null 終止字串的指標,指定要指派給客戶端的服務主體名稱。 在 ServicePrincipalName 中傳遞
[out] phDS
接收系結句柄之 HANDLE 值的位址。 若要關閉此句柄,請將它傳遞給 DsUnBind 函式。
傳回值
如果成功或 Windows 或 RPC 錯誤碼,則傳回 ERROR_SUCCESS 否則傳回 。 以下是最常見的錯誤碼。
言論
注意
ntdsapi.h 標頭會根據 UNICODE 預處理器常數的定義,將 DsBindWithSpn 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows Vista |
支援的最低伺服器 | Windows Server 2008 |
目標平臺 | 窗戶 |
標頭 | ntdsapi.h |
連結庫 | Ntdsapi.lib |
DLL | Ntdsapi.dll |