DsMakePasswordCredentialsA 函式 (ntdsapi.h)

DsMakePasswordCredentials 函式會建構適合與 DsBindWithCred 函式搭配使用的認證句柄。

語法

NTDSAPI DWORD DsMakePasswordCredentialsA(
  [in]  LPCSTR                   User,
  [in]  LPCSTR                   Domain,
  [in]  LPCSTR                   Password,
  [out] RPC_AUTH_IDENTITY_HANDLE *pAuthIdentity
);

參數

[in] User

Null 終止字串的指標,其中包含要用於認證的用戶名稱。

[in] Domain

Null 終止字串的指標,其中包含使用者所屬的網域。

[in] Password

Null 終止字串的指標,其中包含要用於認證的密碼。

[out] pAuthIdentity

接收認證句柄 之RPC_AUTH_IDENTITY_HANDLE 值的指標。 此句柄用於 後續對 DsBindWithCred 的呼叫。 當不再需要此句柄時,必須使用 DsFreePasswordCredentials 函式釋放。

傳回值

傳回 Windows 錯誤碼,包括下列專案。

備註

如果使用者、網域密碼都是 NULL,則會建立 Null 的預設認證句柄。 否則, 用戶 必須存在。 使用者完整時,Domain 參數可能是 NULL,例如 UPN 格式的使用者;例如 ,“someone@fabrikam.com”。

pAuthIdentity 中傳回的句柄傳遞至 DsBindWithCred 時,必須先呼叫 DsUnBind ,才能使用 DsFreePasswordCredentials 釋放句柄。 一般順序為:

  1. 呼叫 DsMakePasswordCredentials 以取得認證句柄。
  2. 呼叫 DsBindWithCred,並傳遞認證句柄。
  3. 不再需要系結時呼叫 DsUnbind
  4. 呼叫 DsFreePasswordCredentials 以釋放認證句柄。

注意

ntdsapi.h 標頭會根據 UNICODE 預處理器常數的定義,將 DsMakePasswordCredentials 定義為別名,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例

規格需求

需求
最低支援的用戶端 Windows Vista
最低支援的伺服器 Windows Server 2008
目標平台 Windows
標頭 ntdsapi.h
程式庫 Ntdsapi.lib
Dll Ntdsapi.dll

另請參閱

域控制器和復寫管理功能

DsBindWithCred

DsFreePasswordCredentials

DsUnbind

RPC_AUTH_IDENTITY_HANDLE