Fonction RtlAddAccessAllowedAceEx (ntifs.h)
La routine RtlAddAccessAllowedAceEx ajoute une entrée de contrôle d’accès autorisé (ACE ) avec des indicateurs ACE d’héritage à 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 RtlAddAccessAllowedAceEx(
[in, out] PACL Acl,
[in] ULONG AceRevision,
[in] ULONG AceFlags,
[in] ACCESS_MASK AccessMask,
[in] PSID Sid
);
Paramètres
[in, out] Acl
Pointeur vers une mémoire tampon allouée à l’appelant qui contient l’ACL à modifier. RtlAddAccessAllowedAceEx ajoute un ACE autorisé à l’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. Cette valeur peut être ACL_REVISION ou ACL_REVISION_DS. Elle doit être ACL_REVISION_DS si la liste de contrôle d’accès contient un ACE spécifique à l’objet.
[in] AceFlags
Masque de bits spécifiant les indicateurs hérités de l’ACE à ajouter.
[in] AccessMask
Masque de bits d’un ou de plusieurs indicateurs de ACCESS_MASK qui spécifient 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 qui représente un utilisateur, un groupe ou un compte d’ouverture de session auquel l’accès est accordé.
Valeur retournée
RtlAddAccessAllowedAceEx peut retourner l’une des valeurs suivantes :
Code de retour | Description |
---|---|
STATUS_SUCCESS | L’ACE a été ajouté avec succès. |
STATUS_ALLOTTED_SPACE_EXCEEDED | Un nouvel ACE ne tient pas dans la liste de contrôle d’accès. Une mémoire tampon ACL plus grande est requise. Pour plus d’informations sur le calcul de la taille d’une liste de contrôle d’accès, consultez RtlCreateAcl. |
STATUS_INVALID_ACL | La liste de contrôle d’accès spécifiée n’est pas correctement formée. |
STATUS_INVALID_PARAMETER | Le paramètre AceFlags n’était pas valide. |
STATUS_INVALID_SID | La structure SID spécifiée n’est pas structurellement valide. |
STATUS_REVISION_MISMATCH | L’AceRevision spécifiée n’est pas connue ou n’est pas compatible avec celle de l’ACL. |
Remarques
Contrairement à RtlAddAccessAllowedAce, cette routine définit les indicateurs ACE d’héritage.
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, par exemple :
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 |
Plateforme cible | Universal |
En-tête | ntifs.h (include Ntifs.h, FltKernel.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |