Fonction ImpersonateSelf (securitybaseapi.h)

La fonction ImpersonateSelf obtient un jeton d’accès qui emprunte l’identité du contexte de sécurité du processus appelant. Le jeton est affecté au thread appelant.

Syntaxe

BOOL ImpersonateSelf(
  [in] SECURITY_IMPERSONATION_LEVEL ImpersonationLevel
);

Paramètres

[in] ImpersonationLevel

Spécifie un type énuméré SECURITY_IMPERSONATION_LEVEL qui fournit le niveau d’emprunt d’identité du nouveau jeton.

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Remarques

La fonction ImpersonateSelf est utilisée pour des tâches telles que l’activation d’un privilège pour un thread unique plutôt que pour l’ensemble du processus ou pour la modification de la liste de contrôle d’accès discrétionnaire (DACL) par défaut pour un thread unique.

Le serveur peut appeler la fonction RevertToSelf lorsque l’emprunt d’identité est terminé.

Pour que cette fonction réussisse, la liste DACL protégeant le jeton de processus doit accorder au TOKEN_DUPLICATE droit à lui-même.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête securitybaseapi.h (inclure Windows.h)
Bibliothèque Advapi32.lib
DLL Advapi32.dll

Voir aussi

Fonctions de Access Control client/serveur

Vue d’ensemble des Access Control client/serveur

DuplicateToken

ImpersonateNamedPipeClient

RevertToSelf

SECURITY_IMPERSONATION_LEVEL