Función ImpersonateSelf (securitybaseapi.h)

La función ImpersonateSelf obtiene un token de acceso que suplanta el contexto de seguridad del proceso de llamada. El token se asigna al subproceso que realiza la llamada.

Sintaxis

BOOL ImpersonateSelf(
  [in] SECURITY_IMPERSONATION_LEVEL ImpersonationLevel
);

Parámetros

[in] ImpersonationLevel

Especifica un tipo de enumeración SECURITY_IMPERSONATION_LEVEL que proporciona el nivel de suplantación del nuevo token.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es distinto de cero.

Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.

Comentarios

La función ImpersonateSelf se usa para tareas como habilitar un privilegio para un único subproceso en lugar de para todo el proceso o para cambiar la lista de control de acceso discrecional (DACL) predeterminada para un único subproceso.

El servidor puede llamar a la función RevertToSelf cuando se completa la suplantación.

Para que esta función se realice correctamente, la DACL que protege el token de proceso debe conceder al TOKEN_DUPLICATE derecho a sí mismo.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado securitybaseapi.h (incluya Windows.h)
Library Advapi32.lib
Archivo DLL Advapi32.dll

Consulte también

Funciones de Access Control cliente/servidor

Introducción a la Access Control de cliente/servidor

DuplicateToken

ImpersonateNamedPipeClient

RevertToSelf

SECURITY_IMPERSONATION_LEVEL