Partager via


Fonction RtlAddAccessAllowedAce (ntifs.h)

La routine RtlAddAccessAllowedAce ajoute une entrée de contrôle d’accès autorisée (ACE) à une liste de contrôle d’accès (ACL). L’accès est accordé à l’identificateur de sécurité (SID) spécifié.

Syntaxe

NTSYSAPI NTSTATUS RtlAddAccessAllowedAce(
  [in, out] PACL        Acl,
  [in]      ULONG       AceRevision,
  [in]      ACCESS_MASK AccessMask,
  [in]      PSID        Sid
);

Paramètres

[in, out] Acl

Pointeur vers une mémoire tampon allouée par l’appelant contenant la liste de contrôle d’accès à modifier. RtlAddAccessAllowedAce ajoute un ace autorisé par accès à la fin de cette liste de contrôle d’accès. L’ACE se présente sous la forme d’une structure ACCESS_ALLOWED_ACE.

[in] AceRevision

Niveau de révision ACL de l’ACE à ajouter. La configuration requise pour la version de Windows est la suivante :

Valeur Signification
ACL_REVISION
Niveau de révision valide sur toutes les versions de Windows.
ACL_REVISION_DS
Niveau de révision valide à partir de Windows 2000.
RemarqueAceRevision doit être ACL_REVISION_DS si la liste de contrôle d’accès dans de liste de contrôle contient un ACE spécifique à l’objet.
 

[in] AccessMask

Masque de bits d’un ou plusieurs indicateurs de ACCESS_MASK spécifiant les droits d’accès à accorder au SID spécifié. Pour plus d’informations, consultez la description du paramètre DesiredAccess de ZwCreateFile.

[in] Sid

Pointeur vers la structure SID représentant un compte d’utilisateur, de groupe ou d’ouverture de session auquel l’accès est accordé.

Valeur de retour

RtlAddAccessAllowedAce pouvez retourner l’une des valeurs suivantes :

Retourner le code Description
STATUS_SUCCESS
L’ACE a été ajouté avec succès.
STATUS_ALLOTTED_SPACE_EXCEEDED
Un nouvel ACE ne s’intègre pas à la liste de contrôle d’accès. Une mémoire tampon de liste de contrôle d’accès plus grande est nécessaire. Consultez RtlCreateAcl pour plus d’informations sur le calcul de la taille d’une liste de contrôle d’accès.
STATUS_INVALID_ACL
La liste de contrôle d’accès spécifiée n’est pas correctement formée.
STATUS_INVALID_SID
La structure SID spécifiée n’est pas structurellement valide.
STATUS_REVISION_MISMATCH
La révision spécifiée n’est pas connue ou n’est pas compatible avec celle de la liste de contrôle d’accès.

Remarques

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.

Exigences

Exigence Valeur
plateforme cible Universel
d’en-tête ntifs.h (include Ntifs.h)
bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

Voir aussi

ACCESS_ALLOWED_ACE

ACCESS_MASK

ACE

de liste de contrôle d’accès

RtlCreateAcl

RtlCreateSecurityDescriptor

RtlCreateSecurityDescriptorRelative

RtlLengthSecurityDescriptor

RtlSetDaclSecurityDescriptor

RtlSetOwnerSecurityDescriptor

RtlValidSecurityDescriptor

SID

SeAssignSecurity

ZwCreateFile