Função PsReferenceImpersonationToken (ntifs.h)

A rotina PsReferenceImpersonationToken incrementa a contagem de referência do token de representação para o thread especificado.

Sintaxe

PACCESS_TOKEN PsReferenceImpersonationToken(
  [in, out] PETHREAD                      Thread,
  [out]     PBOOLEAN                      CopyOnOpen,
  [out]     PBOOLEAN                      EffectiveOnly,
  [out]     PSECURITY_IMPERSONATION_LEVEL ImpersonationLevel
);

Parâmetros

[in, out] Thread

Endereço do thread cuja contagem de referência do token de representação deve ser incrementada.

[out] CopyOnOpen

Ponteiro para uma variável booliana alocada pelo chamador. No retorno, esse parâmetro receberá TRUE se o token não puder ser aberto diretamente. Nesse caso, o token deve ser duplicado e o token duplicado deve ser usado. Se o token puder ser aberto diretamente, esse parâmetro receberá FALSE.

[out] EffectiveOnly

Ponteiro para uma variável booliana alocada pelo chamador. No retorno, esse parâmetro receberá FALSE se o thread tiver permissão para habilitar grupos e privilégios que estão atualmente desabilitados no contexto de segurança do cliente, caso contrário, TRUE.

[out] ImpersonationLevel

Ponteiro para uma variável de SECURITY_IMPERSONATION_LEVEL alocada pelo chamador. No retorno, esse parâmetro recebe um valor que especifica o nível de representação no qual o thread tem permissão para acessar o token.

Retornar valor

PsReferenceImpersonationToken retorna um ponteiro para o token de representação para o thread fornecido. Se o thread não estiver representando um cliente no momento, um ponteiro NULL será retornado.

Comentários

Se o thread estiver representando um cliente no momento, PsReferenceImpersonationToken incrementará a contagem de referência do token de representação e retornará um ponteiro para o token. Se o ponteiro retornado não for NULL, a contagem de referência do token de representação deverá ser decrementada chamando uma das seguintes funções:

  • ObDereferenceObject, para Windows 2000
  • PsDereferenceImpersonationToken, para Microsoft Windows XP ou posterior

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 FltKernel.h, Ntifs.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Regras de conformidade de DDI HwStorPortProhibitedDDIs(storport)

Confira também

ObDereferenceObject

PsDereferenceImpersonationToken

PsImpersonateClient

SECURITY_IMPERSONATION_LEVEL