AddAccessDeniedAce, fonction (securitybaseapi.h)
La fonction AddAccessDeniedAce ajoute une entrée de contrôle d’accès refusé (ACE) à une liste de contrôle d’accès (ACL). L’accès à un identificateur de sécurité (SID) spécifié est refusé.
Pour contrôler si la nouvelle ACE peut être héritée par des objets enfants, utilisez la fonction AddAccessDeniedAceEx .
Syntaxe
BOOL AddAccessDeniedAce(
[in, out] PACL pAcl,
[in] DWORD dwAceRevision,
[in] DWORD AccessMask,
[in] PSID pSid
);
Paramètres
[in, out] pAcl
Pointeur vers une liste de contrôle d’accès . Cette fonction ajoute un ACE avec accès refusé à la fin de cette liste de contrôle d’accès. L’ACE se présente sous la forme d’une structure ACCESS_DENIED_ACE .
[in] dwAceRevision
Spécifie le niveau de révision de la liste de contrôle d’accès en cours de modification.
Cette valeur peut être ACL_REVISION ou ACL_REVISION_DS. Utilisez ACL_REVISION_DS si la liste de contrôle d’accès contient des AE spécifiques à l’objet.
[in] AccessMask
Spécifie le masque des droits d’accès refusés au SID spécifié.
[in] pSid
Pointeur vers la structure SID représentant l’utilisateur, le groupe ou le compte d’ouverture de session auquel l’accès est refusé.
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. Voici les valeurs d’erreur possibles.
Code de retour | Description |
---|---|
|
Le nouvel ACE ne tient pas dans la liste de contrôle d’accès. Une mémoire tampon ACL plus grande est requise. |
|
La liste de contrôle d’accès spécifiée n’est pas correctement formée. |
|
Le SID spécifié n’est pas structurellement valide. |
|
La révision spécifiée n’est pas connue ou est incompatible avec celle de l’ACL. |
|
L’ACE a été ajouté avec succès. |
Remarques
Les fonctions AddAccessAllowedAce et AddAccessDeniedAce ajoutent un nouvel ACE à la fin de la liste des ACL. Ces fonctions ne placent pas automatiquement le nouvel ACE dans l’ordre canonique approprié. Il incombe à l’appelant de s’assurer que la liste de contrôle d’accès est dans l’ordre canonique en ajoutant des AE dans l’ordre approprié.
La structure ACE_HEADER placée dans l’ACE par la fonction AddAccessDeniedAce spécifie un type et une taille, mais ne fournit aucun indicateur ACE.
L’ACE ajouté par AddAccessDeniedAce n’est pas héritable.
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 |