共用方式為


LSA_DELETE_LOGON_SESSION回呼函式 (ntsecpkg.h)

清除在判斷使用者驗證資訊是否合法時所建立的任何登入會話。

如果驗證失敗,驗證套件應該刪除所有相關的登入工作階段。

語法

LSA_DELETE_LOGON_SESSION LsaDeleteLogonSession;

NTSTATUS LsaDeleteLogonSession(
  [in] PLUID LogonId
)
{...}

參數

[in] LogonId

LUID 結構的指標,其中包含要刪除之登入會話的會話標識碼。

傳回值

如果函式成功,傳回值會STATUS_SUCCESS。

如果函式失敗,傳回值為NTSTATUS程式碼,可以是下列其中一個值或其中一個 LSA原則函數傳回值

傳回碼 Description
STATUS_BAD_LOGON_SESSION_STATE
指定的登入會話具有參考計數值,可防止刪除它。 這是嚴重的問題,因為操作系統和驗證套件對登入會話具有授權。
STATUS_NO_SUCH_LOGON_SESSION
找不到指定的登入工作階段。
 

LsaNtStatusToWinError 函式會將NTSTATUS程式碼轉換為 Windows 錯誤碼。

備註

由於登入會話會使用核心中的記憶體,因此應該刪除任何未使用或捨棄的登入會話。 不過,在會話的登入標識符傳回 LSA 之後,不應該刪除登入會話。 例如,由於 LsaApLogonUser 呼叫 () ,LSA 會假設 LSA 負責登入會話,並在操作系統不再需要時將其刪除。 此時,LSA 會呼叫 LsaApLogonTerminated 來通知驗證套件會話已刪除。

相反地,使用 DeleteLogonSession 刪除登入工作階段時,不會通知驗證套件。

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限桌面應用程式]
目標平台 Windows
標頭 ntsecpkg.h

另請參閱

CreateLogonSession

LSA_DISPATCH_TABLE

LSA_SECPKG_FUNCTION_TABLE