SeCaptureSubjectContextEx, fonction (ntifs.h)
SeCaptureSubjectContextEx prend une instantané du contexte de sécurité du thread appelant pour la validation et l’audit de l’accès.
Syntaxe
void SeCaptureSubjectContextEx(
PETHREAD Thread,
PEPROCESS Process,
PSECURITY_SUBJECT_CONTEXT SubjectContext
);
Paramètres
Thread
[in] Thread à partir duquel capturer le jeton de thread. Ce paramètre est facultatif. Quand il est NULL, SeCaptureSubjectContextEx ne capture pas de jeton d’emprunt d’identité.
Process
[in] Pointeur vers l’ID du processus à partir duquel capturer le jeton principal.
SubjectContext
[out] Pointeur vers une structure de SECURITY_SUBJECT_CONTEXT opaque allouée par l’appelant. SeCaptureSubjectContextEx écrit la instantané du profil de sécurité du thread appelant, qui contient des références aux jetons d’accès, dans cette structure. Les pilotes ne doivent pas modifier ou essayer d’accéder directement aux membres de cette structure pour prendre des décisions de sécurité. Au lieu de cela, pour éviter les problèmes de sécurité dans l’autorisation, transmettez cette structure opaque dans les appels à SeAccessCheck ou SePrivilegeCheck.
Valeur de retour
None
Remarques
Vous devez appeler SeCaptureSubjectContextEx avant d’effectuer des services tels que la validation d’accès ou la génération de messages d’audit. Cela est nécessaire pour fournir un contexte de sécurité cohérent aux routines telles que les suivantes :
Une fois les services de validation d’accès, de vérification des privilèges et de génération d’audits effectués, relâchez le contexte capturé dès que possible en appelant SeReleaseSubjectContext.
SeCaptureSubjectContextEx verrouille les jetons en fonction des besoins tout en prenant la instantané du contexte de sécurité du thread appelant.
Au retour, les références aux jetons d’accès sont contenues dans la structure vers laquelle SubjectContext pointe. Le contenu de cette structure peut changer. Pour éviter cela, appelez SeLockSubjectContext pour verrouiller le jeton d’accès principal et tous les jetons d’emprunt d’identité associés à la structure. Par exemple, lors de l’utilisation de routines qui interrogent plusieurs fois les informations de jeton dans le même contexte de sécurité (comme ceux précédemment répertoriés), verrouillez le contexte d’objet avec SeLockSubjectContext pour obtenir des résultats cohérents.
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 |
---|---|
Client minimal pris en charge | Windows Vista |
En-tête | ntifs.h |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |