Função ObGetObjectSecurity (wdm.h)
A rotina ObGetObjectSecurity obtém o descritor de segurança de um determinado objeto.
Sintaxe
NTSTATUS ObGetObjectSecurity(
[in] PVOID Object,
[out] PSECURITY_DESCRIPTOR *SecurityDescriptor,
[out] PBOOLEAN MemoryAllocated
);
Parâmetros
[in] Object
Ponteiro para o objeto .
[out] SecurityDescriptor
Ponteiro para uma variável fornecida pelo chamador que essa rotina define como o endereço de um buffer que contém o SECURITY_DESCRIPTOR para o objeto fornecido. Se o objeto fornecido não tiver nenhum descritor de segurança, essa variável será definida como NULL no retorno de ObGetObjectSecurity.
[out] MemoryAllocated
Ponteiro para uma variável fornecida pelo chamador que essa rotina define como TRUE se ela alocou um buffer para conter o descritor de segurança.
Retornar valor
ObGetObjectSecurity retorna STATUS_SUCCESS ou um erro status, como STATUS_INSUFFICIENT_RESOURCES se não puder alocar memória suficiente para retornar as informações solicitadas.
Comentários
Uma chamada bem-sucedida para ObGetObjectSecurity retorna um descritor de segurança auto-relativo no buffer em *SecurityDescriptor ou retorna NULL em *SecurityDescriptor se o objeto fornecido não tiver nenhum descritor de segurança. Por exemplo, qualquer objeto sem nome, como um objeto de evento, não tem nenhum descritor de segurança.
Se ObGetObjectSecurity retornar STATUS_SUCCESS, o chamador deverá salvar o valor retornado em MemoryAllocated. Esse chamador deve passar MemoryAllocated em uma chamada recíproca para ObReleaseObjectSecurity eventualmente, restaurando assim a contagem de referência no descritor de segurança para seu valor original e liberando o buffer, se houver, que foi alocado por ObGetObjectSecurity.
ObGetObjectSecurity só deve ser chamado no nível do IRQL = PASSIVE_LEVEL com APCs habilitadas, caso contrário, podem ocorrer deadlocks ou falhas.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows 2000. |
Plataforma de Destino | Universal |
Cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Regras de conformidade de DDI | HwStorPortProhibitedDIs(storport), IrqlApcLte(wdm) |