共用方式為


OB_PRE_CREATE_HANDLE_INFORMATION結構 (wdm.h)

OB_PRE_CREATE_HANDLE_INFORMATION 結構會將有關開啟之線程或進程句柄的資訊提供給 ObjectPreCallback 例程。

語法

typedef struct _OB_PRE_CREATE_HANDLE_INFORMATION {
  ACCESS_MASK DesiredAccess;
  ACCESS_MASK OriginalDesiredAccess;
} OB_PRE_CREATE_HANDLE_INFORMATION, *POB_PRE_CREATE_HANDLE_INFORMATION;

成員

DesiredAccess

ACCESS_MASK 值,指定要授與句柄的訪問許可權。 根據預設,此成員等於 OriginalDesiredAccess,但 ObjectPreCallback 例程可以修改此值來限制授與的存取權。

驅動程式可以使用下列旗標來處理句柄:

允許的作業
PROCESS_CREATE_PROCESS 建立進程的新子進程。
PROCESS_CREATE_THREAD 在進程的內容中建立新的線程。
PROCESS_DUP_HANDLE 呼叫使用者模式 DuplicateHandle 例程,來回重複進程內容中的句柄。
PROCESS_SET_QUOTA 設定進程的工作集大小,例如呼叫 user-mode SetProcessWorkingSetSize 例程。
PROCESS_SET_INFORMATION 修改進程設定,例如呼叫user-mode SetPriorityClass 例程。
PROCESS_SUSPEND_RESUME 暫停或繼續程式。
PROCESS_TERMINATE 呼叫 user-mode TerminateProcess 例程,以終止進程。
PROCESS_VM_OPERATION 修改進程的位址空間,例如呼叫User-mode WriteProcessMemoryVirtualProtectEx 例程。
PROCESS_VM_WRITE 寫入進程的位址空間,例如呼叫 user-mode WriteProcessMemory 例程。
 

驅動程式可以使用下列旗標來處理線程:

允許的作業
THREAD_DIRECT_IMPERSONATION 讓伺服器線程模擬其中一個用戶端。
THREAD_IMPERSONATE 模擬作系統的匿名登入令牌,例如呼叫使用者模式 ImpersonateAnonymousToken 例程。
THREAD_SET_CONTEXT 修改線程的執行內容,例如呼叫 user-mode SetThreadContext 例程。
THREAD_SET_INFORMATION 修改線程設定,例如呼叫 user-mode SetThreadIdealProcessor 例程。 此訪問許可權所允許的作業是THREAD_SET_LIMITED_INFORMATION訪問許可權所允許的超集。
THREAD_SET_LIMITED_INFORMATION 修改一組有限的線程設定,例如呼叫 user-mode SetThreadAffinityMaskSetThreadPriorityBoost 例程。
THREAD_SET_THREAD_TOKEN 修改線程模擬令牌的屬性,例如呼叫 user-mode SetTokenInformation 例程。
THREAD_SUSPEND_RESUME 暫停或繼續線程,例如呼叫使用者模式 SuspendThreadResumeThread 例程。
THREAD_TERMINATE 終止線程,例如呼叫 user-mode TerminateThread 例程。

OriginalDesiredAccess

ACCESS_MASK值,指定為句柄要求的原始存取權。

言論

您無法將訪問許可權新增至 DesiredAccess 成員中指定的許可權。 如果存取權列為可修改的旗標,則可以移除訪問許可權。

要求

要求 價值
最低支援的用戶端 適用於 Windows Server 2008 和更新版本的 Windows作系統。
標頭 wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h)

另請參閱

ACCESS_MASK

ObjectPreCallback