Compartilhar via


estrutura OB_PRE_CREATE_HANDLE_INFORMATION (wdm.h)

A estrutura OB_PRE_CREATE_HANDLE_INFORMATION fornece informações para uma rotina ObjectPreCallback sobre um thread ou identificador de processo que está sendo aberto.

Sintaxe

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

Membros

DesiredAccess

Um valor ACCESS_MASK que especifica os direitos de acesso a serem concedidos para o identificador. Por padrão, esse membro é igual a OriginalDesiredAccess, mas a rotina ObjectPreCallback pode modificar esse valor para restringir o acesso concedido.

Os drivers podem usar os seguintes sinalizadores para identificadores em processos:

Bandeira Operações permitidas
PROCESS_CREATE_PROCESS Crie um novo processo filho do processo.
PROCESS_CREATE_THREAD Crie um novo thread no contexto do processo.
PROCESS_DUP_HANDLE Identificadores duplicados de ou para o contexto do processo, como chamando o modo de usuário rotina DuplicateHandle.
PROCESS_SET_QUOTA Defina o tamanho do conjunto de trabalho para o processo, como chamando o modo de usuário a rotina de SetProcessWorkingSetSize.
PROCESS_SET_INFORMATION Modifique as configurações do processo, como chamando o modo de usuário a rotina de SetPriorityClass.
PROCESS_SUSPEND_RESUME Suspenda ou retome o processo.
PROCESS_TERMINATE Encerre o processo, como chamando a rotina de TerminateProcess do modo de usuário.
PROCESS_VM_OPERATION Modifique o espaço de endereço do processo, como chamando o modo de usuário WriteProcessMemory e rotinas de VirtualProtectEx.
PROCESS_VM_WRITE Escreva no espaço de endereço do processo, como chamando o modo de usuário WriteProcessMemory rotina.
 

Os drivers podem usar os seguintes sinalizadores para identificadores em threads:

Bandeira Operações permitidas
THREAD_DIRECT_IMPERSONATION Habilite um thread de servidor para representar um de seus clientes.
THREAD_IMPERSONATE Represente o token de logon anônimo do sistema operacional, como chamando o modo de usuário a rotina ImpersonateAnonymousToken.
THREAD_SET_CONTEXT Modifique o contexto de execução do thread, como chamando o modo de usuário setThreadContext rotina.
THREAD_SET_INFORMATION Modifique as configurações de thread, como chamando o modo de usuário setThreadIdealProcessor rotina. As operações permitidas por esse direito de acesso são um superconjunto daqueles que são permitidos pelo direito de acesso THREAD_SET_LIMITED_INFORMATION.
THREAD_SET_LIMITED_INFORMATION Modifique um conjunto limitado de configurações de thread, como chamar o modo de usuário SetThreadAffinityMask e setThreadPriorityBoost rotinas.
THREAD_SET_THREAD_TOKEN Modifique as propriedades do token de representação do thread, como chamando o modo de usuário setTokenInformation rotina.
THREAD_SUSPEND_RESUME Suspenda ou retome o thread, como chamando o modo de usuário suspendThread e rotinas de ResumeThread.
THREAD_TERMINATE Encerre o thread, como chamando o modo de usuário a rotina de TerminateThread.

OriginalDesiredAccess

Um valor ACCESS_MASK que especifica o acesso original que foi solicitado para o identificador.

Observações

Você nunca pode adicionar direitos de acesso além do especificado no membro DesiredAccess. Se o direito de acesso estiver listado como um sinalizador modificável, o direito de acesso poderá ser removido.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível no Windows Server 2008 e versões posteriores do sistema operacional Windows.
cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)

Consulte também

ACCESS_MASK

ObjectPreCallback