Partager via


SeCreateClientSecurity, fonction (ntifs.h)

La routine SeCreateClientSecurity initialise une structure de contexte client de sécurité avec les informations nécessaires pour appeler SeImpersonateClientEx.

Syntaxe

NTSTATUS SeCreateClientSecurity(
  [in]  PETHREAD                     ClientThread,
  [in]  PSECURITY_QUALITY_OF_SERVICE ClientSecurityQos,
        BOOLEAN                      RemoteSession,
  [out] PSECURITY_CLIENT_CONTEXT     ClientContext
);

Paramètres

[in] ClientThread

Pointeur vers le thread du client à emprunter.

[in] ClientSecurityQos

Pointeur vers une structure de SECURITY_QUALITY_OF_SERVICE allouée par l’appelant indiquant la forme d’emprunt d’identité à effectuer.

RemoteSession

Définissez sur TRUE si le serveur de la requête du client est distant.

[out] ClientContext

Pointeur vers une structure de SECURITY_CLIENT_CONTEXT allouée par l’appelant à initialiser.

Valeur retournée

Code de retour Description
STATUS_SUCCESS Le contexte du client de sécurité a été initialisé avec succès.
STATUS_BAD_IMPERSONATION_LEVEL Le client à emprunter l’identité emprunte actuellement son propre client, et l’une des conditions suivantes est vraie : (1) Le jeton effectif du client ne peut pas être transmis pour une utilisation par un autre serveur, car son niveau d’emprunt d’identité est SecurityAnonymous ou SecurityIdentification. (2) ServerIsRemote a la valeur TRUE et le thread client emprunte l’identité de son client à un niveau différent de SecurityDelegation .

Remarques

SeCreateClientSecurity initialise un bloc de contexte de sécurité client pour représenter le contexte de sécurité d’un client.

Si le membre ContextTrackingMode de ClientSecurityQos est défini sur SECURITY_DYNAMIC_TRACKING et que ServerIsRemote a la valeur FALSE, SeCreateClientSecurity utilise une référence au jeton effectif du client. Sinon, SeCreateClientSecurity crée une copie du jeton du client.

Chaque appel à SeCreateClientSecurity doit être mis en correspondance par un appel suivant à SeDeleteClientSecurity.

Pour plus d’informations sur la sécurité et le contrôle d’accès, consultez Modèle de sécurité Windows pour les développeurs de pilotes et la documentation sur ces rubriques dans le Kit de développement logiciel (SDK) Windows.

Configuration requise

Condition requise Valeur
Plateforme cible Universal
En-tête ntifs.h (include Ntifs.h)
Bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

Voir aussi

SeDeleteClientSecurity

SeImpersonateClientEx