Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A função DuplicateToken cria um novo token de acesso que duplica um já existente.
Sintaxe
BOOL DuplicateToken(
[in] HANDLE ExistingTokenHandle,
[in] SECURITY_IMPERSONATION_LEVEL ImpersonationLevel,
[out] PHANDLE DuplicateTokenHandle
);
Parâmetros
[in] ExistingTokenHandle
Um identificador para um token de acesso aberto com acesso TOKEN_DUPLICATE.
[in] ImpersonationLevel
Especifica um tipo enumerado SECURITY_IMPERSONATION_LEVEL que fornece o nível de representação do novo token.
[out] DuplicateTokenHandle
Um ponteiro para uma variável que recebe um identificador para o token duplicado. Esse identificador tem acesso TOKEN_IMPERSONATE e TOKEN_QUERY ao novo token.
Quando terminar de usar o novo token, chame a função CloseHandle para fechar o identificador de token.
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
A função DuplicateToken cria um token de representação, que você pode usar em funções como SetThreadToken e ImpersonateLoggedOnUser. O token criado por DuplicateToken não pode ser usado na função CreateProcessAsUser , que requer um token primário. Para criar um token que você pode passar para CreateProcessAsUser, use a função DuplicateTokenEx .
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
Visão geral do Controle de Acesso