共用方式為


LSA_AP_CALL_PACKAGE回呼函式 (ntsecpkg.h)

當具有 LSA 信任連線的登入應用程式呼叫LsaCallAuthenticationPackage函式,並指定驗證套件的識別碼時,本機安全性授權單位會 (LSA) 呼叫。

僅針對登入應用程式呼叫LsaApCallPackage;從沒有 SeTcbPrivilege 許可權的應用程式呼叫會改為路由傳送至指定的驗證套件LsaApCallPackageUntrusted 函式

語法

LSA_AP_CALL_PACKAGE LsaApCallPackage;

NTSTATUS LsaApCallPackage(
  [in]  PLSA_CLIENT_REQUEST ClientRequest,
  [in]  PVOID ProtocolSubmitBuffer,
  [in]  PVOID ClientBufferBase,
  [in]  ULONG SubmitBufferLength,
  [out] PVOID *ProtocolReturnBuffer,
  [out] PULONG ReturnBufferLength,
  [out] PNTSTATUS ProtocolStatus
)
{...}

參數

[in] ClientRequest

表示 LSA 用戶端要求的不透明 LSA_CLIENT_REQUEST 緩衝區指標。

[in] ProtocolSubmitBuffer

提供驗證套件特定的通訊協定訊息。

[in] ClientBufferBase

提供通訊協定訊息用戶端進程內的位址。 您可能需要重新對應 ProtocolSubmitBuffer 緩衝區內的任何指標。

[in] SubmitBufferLength

指定 ProtocolSubmitBuffer 緩衝區的長度,以位元組為單位。

[out] ProtocolReturnBuffer

傳回用戶端進程內輸出緩衝區的位址。 驗證套件負責呼叫 AllocateClientBuffer 函式,以在用戶端進程內配置緩衝區。 此緩衝區的內容專屬於驗證套件。

[out] ReturnBufferLength

ULONG的指標,以位元組為單位傳回ProtocolReturnBuffer緩衝區的長度。

[out] ProtocolStatus

NTSTATUS 值的指標。 如果函式傳回STATUS_SUCCESS, ProtocolStatus 會傳回驗證套件所設定的完成狀態。 ProtocolStatus 值是驗證套件特有的值。

如需 NTSTATUS 程式碼的詳細資訊,請參閱平臺 SDK 隨附的 Subauth.h 檔案。

傳回值

如果函式成功,則傳回STATUS_SUCCESS。 這個傳回值表示驗證套件嘗試提供要求的服務。 使用 ProtocolStatus 參數可傳回服務要求的完成狀態。

如果驗證套件無法處理要求,因此未嘗試提供要求的服務,請傳回 NTSTATUS 程式碼,指出問題。 此程式碼可以是下列值或其中一個 LSA 原則函式傳回值

傳回碼 描述
STATUS_NO_MEMORY
用戶端的記憶體配額不足,無法配置輸出緩衝區。

備註

驗證套件必須實作此函式。

需求

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

另請參閱

AllocateClientBuffer

LsaApCallPackageUntrusted

LsaCallAuthenticationPackage