Função PsReferenceImpersonationToken (ntifs.h)
A rotina de 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 por 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 por 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, TRUE caso contrário.
[out] ImpersonationLevel
Ponteiro para uma variável de SECURITY_IMPERSONATION_LEVEL alocada por 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.
Valor de retorno
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.
Observações
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 forNULL, 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.