EventAccessControl 函式 (evntcons.h)
新增或修改指定之提供者或會話的許可權。
語法
ULONG EVNTAPI EventAccessControl(
[in] LPGUID Guid,
[in] ULONG Operation,
[in] PSID Sid,
[in] ULONG Rights,
[in] BOOLEAN AllowOrDeny
);
參數
[in] Guid
可唯一識別您要新增或修改其許可權的提供者或會話的 GUID。
[in] Operation
要執行的作業類型,例如,將 DACL 新增至會話的 GUID 或提供者的 GUID。 如需可能的值,請參閱 EVENTSECURITYOPERATION 列舉。
[in] Sid
您要授與或拒絕許可權之使用者或群組的安全性識別碼 (SID) 。
[in] Rights
您可以指定下列一或多個許可權:
[in] AllowOrDeny
如果 為 TRUE,請將使用者權限授與會話或提供者;否則,拒絕許可權。 如果 Operation 值為 EventSecuritySetSACL 或 EventSecurityAddSACL,則會忽略此值。
傳回值
如果成功,則傳回ERROR_SUCCESS。
備註
根據預設,只有電腦的系統管理員、效能記錄使用者群組中的使用者,以及以 LocalSystem、LocalService、NetworkService 執行的服務,可以控制追蹤會話,並提供及取用事件資料。 只有具有以 LocalSystem 身分執行之系統管理許可權和服務的使用者,才能啟動和控制 NT 核心記錄器會話。
Windows Server 2003: 只有具有系統管理員許可權的使用者可以控制追蹤會話,並取用事件資料;任何使用者可以提供事件資料。
Windows XP 和 Windows 2000: 任何使用者都可以控制追蹤會話,並提供及取用事件資料。
如果用來控制會話的工具是從以 系統管理員身分開啟的 [命令提示字元] 視窗啟動,則具有系統管理員許可權的使用者可以控制追蹤會話。
若要授與受限制的使用者控制追蹤會話的能力,您可以將它們新增至效能記錄使用者群組,或呼叫此函式來授與他們許可權。 例如,您可以授與使用者 A 許可權來啟動和停止追蹤會話,並授與使用者 B 只查詢會話的許可權。
若要限制誰可以將事件記錄到會話,請參閱TRACELOG_LOG_EVENT許可權。
記錄檔上的 ACL 決定誰可以從記錄檔取用事件資料。 若要即時取用會話的事件,您必須授與使用者TRACELOG_ACCESS_REALTIME許可權,或使用者必須是效能記錄使用者群組的成員。
您也可以指定提供者的 GUID 來限制誰可以註冊提供者,以及誰可以啟用提供者。
需求
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | evntcons.h |
程式庫 | Windows 8.1 和 Windows Server 2012 上的 Sechost.lib;Windows 8.1 和 Windows Server 2012 R2 上的 Sechost.lib;Windows 8、Windows Server 2012、Windows 7、Windows Server 2008 R2、Windows Server 2008 和 Windows Vista 上的 Advapi32.lib |
Dll | Windows 8.1和 Windows Server 2012 上的 Sechost.dll;windows 8、Windows Server 2012、Windows 7、Windows Server 2008 R2、Windows Server 2008 和 Windows Vista 上的 Advapi32.dll |