共用方式為


ObjectPrivilegeAuditAlarmW 函式 (securitybaseapi.h)

ObjectPrivilegeAuditAlarm 函式會在安全性事件記錄檔中產生稽核訊息。 受保護的伺服器可以使用此函式來記錄用戶端對私人對象的開啟句柄使用指定 許可權 集的嘗試。 目前不支援警示。

語法

BOOL ObjectPrivilegeAuditAlarmW(
  [in] LPCWSTR        SubsystemName,
  [in] LPVOID         HandleId,
  [in] HANDLE         ClientToken,
  [in] DWORD          DesiredAccess,
  [in] PPRIVILEGE_SET Privileges,
  [in] BOOL           AccessGranted
);

參數

[in] SubsystemName

指定呼叫函式之子系統名稱之 Null 終止字串的指標。 此字串會出現在稽核訊息中。

[in] HandleId

唯一值的指標,表示客戶端對 物件的句柄。

[in] ClientToken

識別代表要求作業之用戶端的 存取令牌 。 此句柄必須透過開啟模擬客戶端的線程令牌來取得。 令牌必須開啟才能TOKEN_QUERY存取。 函式會使用此令牌來取得稽核訊息用戶端的身分識別。

[in] DesiredAccess

指定 存取遮罩 ,指出正在使用或嘗試使用的特殊許可權存取類型。 MapGenericMask 函式可以對應存取遮罩,因此它不包含任何泛型存取類型。

[in] Privileges

PRIVILEGE_SET 結構的指標 ,其中包含客戶端嘗試使用 的許可權 。 許可權的名稱會出現在稽核訊息中。

[in] AccessGranted

指出客戶端嘗試使用許可權是否成功。 如果此值為 TRUE,稽核訊息表示成功。 如果此值為 FALSE,稽核訊息表示失敗。

傳回值

如果函式成功,則傳回非零的值。

如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

備註

ObjectPrivilegeAuditAlarm 函式不會檢查客戶端對物件的存取權,或檢查用戶端的存取令牌,以判斷是否保留或啟用許可權。 一般而言,您會呼叫 PrivilegeCheck 函式來判斷存取令牌中是否啟用指定的許可權、呼叫 AccessCheck 函式來檢查客戶端對物件的存取權,然後呼叫 ObjectPrivilegeAuditAlarm 來記錄結果。

ObjectPrivilegeAuditAlarm 函式需要呼叫進程啟用SE_AUDIT_NAME許可權。 此許可權的測試一律會針對呼叫進程 的主要令牌 執行,而不是線程的 模擬令牌 。 這可讓呼叫進程在呼叫期間模擬用戶端。

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 securitybaseapi.h (包括 Windows.h)
程式庫 Advapi32.lib
Dll Advapi32.dll

另請參閱

AccessCheck
AccessCheckAndAuditAlarm
用戶端/伺服器 存取控制 函式
用戶端/伺服器 存取控制 概觀
MapGenericMask
ObjectCloseAuditAlarm
ObjectOpenAuditAlarm
PRIVILEGE_SET
PrivilegeCheck
PrivilegedServiceAuditAlarm