LsaRegisterLogonProcess 函式 (ntsecapi.h)
LsaRegisterLogonProcess 函式會建立與 LSA 伺服器的連線,並確認呼叫端是登入應用程式。
語法
NTSTATUS LsaRegisterLogonProcess(
[in] PLSA_STRING LogonProcessName,
[out] PHANDLE LsaHandle,
[out] PLSA_OPERATIONAL_MODE SecurityMode
);
參數
[in] LogonProcessName
識別登入應用程式的 LSA_STRING 結構的指標。 這應該是適合顯示給系統管理員的可列印名稱。 例如,Windows 登入應用程式可能會使用名稱 「User32LogonProcess」。。 此名稱會在稽核期間由 LSA 使用。 LsaRegisterLogonProcess 不會檢查名稱是否已經在使用中。
此字串不能超過127個字節。
[out] LsaHandle
接收未來驗證函式呼叫中使用的句柄的指標。
[out] SecurityMode
傳回的值沒有意義,而且應該忽略。
傳回值
如果函式成功,傳回值會STATUS_SUCCESS。
如果函式失敗,傳回值為NTSTATUS程式碼。 以下是可能的錯誤碼。
傳回碼 | Description |
---|---|
|
呼叫端沒有 SeTcbPrivilege 許可權,這是呼叫此函式所需的許可權。
您可以呼叫 LsaAddAccountRights 來設定此許可權。 |
|
指定的登入進程名稱超過127個字節。 |
如需詳細資訊,請參閱 LSA 原則函式傳回值。
LsaNtStatusToWinError 函式會將NTSTATUS程式碼轉換成 Windows 錯誤碼。
備註
必須先呼叫此函式,登入程式才能使用 LSA 所提供的任何其他登入驗證函式。
LsaRegisterLogonProcess 函式會確認進行函式呼叫的應用程式是否為登入進程,方法是檢查它是否具有 SeTcbPrivilege 許可權集。 它也會在預期未來的 LSA 驗證呼叫中開啟應用程式PROCESS_DUP_HANDLE存取的程式。 如需詳細資訊,請參閱 DuplicateHandle。
當您完成使用 LSA 伺服器的連線時,請刪除呼叫端的登入應用程式內容,並藉由呼叫 LsaDeregisterLogonProcess 函式來關閉連線。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | ntsecapi.h |
程式庫 | Secur32.lib |
Dll | Secur32.dll |