Função GetKernelObjectSecurity (securitybaseapi.h)
A função GetKernelObjectSecurity recupera uma cópia do descritor de segurança que protege um objeto kernel.
Sintaxe
BOOL GetKernelObjectSecurity(
[in] HANDLE Handle,
[in] SECURITY_INFORMATION RequestedInformation,
[out, optional] PSECURITY_DESCRIPTOR pSecurityDescriptor,
[in] DWORD nLength,
[out] LPDWORD lpnLengthNeeded
);
Parâmetros
[in] Handle
Um identificador para um objeto kernel.
[in] RequestedInformation
Especifica um valor SECURITY_INFORMATION que identifica as informações de segurança que estão sendo solicitadas.
[out, optional] pSecurityDescriptor
Um ponteiro para um buffer que a função preenche com uma cópia do descritor de segurança do objeto especificado. O processo de chamada deve ter o direito de exibir os aspectos especificados do status de segurança do objeto. A estrutura SECURITY_DESCRIPTOR é retornada no formato auto-relativo .
[in] nLength
Especifica o tamanho, em bytes, do buffer apontado pelo parâmetro pSecurityDescriptor .
[out] lpnLengthNeeded
Um ponteiro para uma variável que recebe o número de bytes necessários para o buffer apontado pelo parâmetro pSecurityDescriptor . Se o valor dessa variável for maior que o valor do parâmetro nLength quando a função retornar, nenhum descritor de segurança será copiado para o buffer.
Valor retornado
Se a função for bem-sucedida, o valor retornado será diferente de zero.
Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.
Comentários
Para ler o proprietário, o grupo ou a DACL do descritor de segurança do objeto kernel, o processo de chamada deve ter sido concedido READ_CONTROL acesso quando o identificador foi aberto. Para obter READ_CONTROL acesso, o chamador deve ser o proprietário do objeto ou a DACL do objeto deve conceder o acesso.
Para ler o SACL do descritor de segurança, o processo de chamada deve ter sido concedido ACCESS_SYSTEM_SECURITY acesso quando o identificador foi aberto. A maneira adequada de obter esse acesso é habilitar o privilégio SE_SECURITY_NAME no token atual do chamador, abrir o identificador para acesso ACCESS_SYSTEM_SECURITY e, em seguida, desabilitar o privilégio.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP [aplicativos da área de trabalho | aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | securitybaseapi.h (inclua Windows.h) |
Biblioteca | Advapi32.lib |
DLL | Advapi32.dll |
Confira também
Controle de Acesso de baixo nível