Função SeQueryInformationToken (ntifs.h)

A rotina SeQueryInformationToken recupera um tipo especificado de informações sobre um token de acesso. O processo de chamada deve ter direitos de acesso apropriados para obter as informações.

Sintaxe

NTSTATUS SeQueryInformationToken(
  [in]  PACCESS_TOKEN           Token,
  [in]  TOKEN_INFORMATION_CLASS TokenInformationClass,
  [out] PVOID                   *TokenInformation
);

Parâmetros

[in] Token

Um ponteiro para um token de acesso do qual as informações devem ser recuperadas. Se TokenInformationClass estiver definido como TokenSource, o identificador deverá ter TOKEN_QUERY_SOURCE acesso. Para todos os outros valores TokenInformationClass , o identificador deve ter acesso TOKEN_QUERY.

[in] TokenInformationClass

Um valor do TOKEN_INFORMATION_CLASS tipo enumerado que identifica o tipo de informação a ser recuperado.

[out] TokenInformation

Se STATUS_SUCCESS for retornado, TokenInformation receberá um ponteiro para um local que contém o endereço de um buffer que contém as informações solicitadas. O formato desse buffer de informações depende do valor de TokenInformationClass, conforme mostrado na tabela a seguir. Lembre-se de que o buffer é alocado por SeQueryInformationToken do pool paginado. Esse buffer deve eventualmente ser liberado pelo chamador usando ExFreePool.

Valor Descrição
TokenDefaultDacl O buffer recebe uma estrutura TOKEN_DEFAULT_DACL que contém a DACL padrão para objetos recém-criados.
TokenGroups O buffer recebe uma estrutura TOKEN_GROUPS que contém as contas de grupo associadas ao token.
TokenImpersonationLevel O buffer recebe um valor SECURITY_IMPERSONATION_LEVEL que indica o nível de representação do token. Se o token de acesso não for um token de representação, a chamada para SeQueryInformationToken falhará.
TokenOwner O buffer recebe uma estrutura TOKEN_OWNER que contém o SID (identificador de segurança) do proprietário padrão para objetos recém-criados.
TokenPrimaryGroup O buffer recebe uma estrutura TOKEN_PRIMARY_GROUP que contém o SID do grupo primário padrão para objetos recém-criados.
TokenPrivileges O buffer recebe uma estrutura TOKEN_PRIVILEGES que contém os privilégios do token.
TokenSessionId O buffer recebe um valor DWORD (não um ponteiro para ele) que indica o identificador de sessão dos Serviços de Terminal associado ao token. Se o token estiver associado à sessão do console do Terminal Server, o identificador de sessão será zero. Um identificador de sessão diferente de zero indica uma sessão de cliente dos Serviços de Terminal. Em um ambiente de Serviços não Terminais, o identificador de sessão é zero.
TokenSource O buffer recebe uma estrutura TOKEN_SOURCE que contém a origem do token. TOKEN_QUERY_SOURCE acesso é necessário para recuperar essas informações.
TokenStatistics O buffer recebe uma estrutura TOKEN_STATISTICS que contém várias estatísticas de token.
Tokentype O buffer recebe um valor TOKEN_TYPE que indica se o token é um token primário ou de representação.
TokenUser O buffer recebe uma estrutura TOKEN_USER que contém a conta de usuário do token.
TokenIntegrityLevel O buffer recebe um valor DWORD (não um ponteiro para ele) que especifica o nível de integridade do token.

Retornar valor

Código de retorno Descrição
STATUS_SUCCESS
A chamada para SeQueryInformationToken foi bem-sucedida.
STATUS_INVALID_INFO_CLASS
Um valor inválido foi fornecido para TokenInformationClass.

Comentários

Para obter mais informações sobre segurança e controle de acesso, consulte Modelo de segurança do Windows para desenvolvedores de driver e a documentação sobre esses tópicos no SDK do Windows.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000
Plataforma de Destino Universal
Cabeçalho ntifs.h (inclua Ntifs.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

Confira também

PsDereferenceImpersonationToken

PsDereferencePrimaryToken

SECURITY_IMPERSONATION_LEVEL

SID

SeQueryAuthenticationIdToken

SeQuerySubjectContextToken

SeTokenIsAdmin

SeTokenIsRestricted

TOKEN_DEFAULT_DACL

TOKEN_GROUPS

TOKEN_INFORMATION_CLASS

TOKEN_OWNER

TOKEN_PRIMARY_GROUP

TOKEN_PRIVILEGES

TOKEN_SOURCE

TOKEN_STATISTICS

TOKEN_TYPE

TOKEN_USER