Next: Appels systemes setacl et Up: Sécurité Previous: Application des capacités au

Les ACL

Les ACL (access control lists) sont une extension des modes de protection standard d'UNIX. Les ACL sont des droits que l'on définit en plus des 9 bits de protection classiques, ils permettent en particulier d'autoriser l'accès ou de le refuser, à un utilisateur donné, ou à un groupe donné.

Deux commandes permettent de manipuler les ACL, ce sont chacl et lsacl.
La syntaxe de la commande shell chacl:

chacl '(dr.staff,r-x)(zipstein.%,r-x)(%.licence,--)' proj

qui donne sur le fichier proj les droits de lecture et d'écriture à l'utilisateur dr du groupe staff et à l'utilisateur zipstein quelque soit son groupe et qui refuse cet accès aux utilisateurs du groupe licence.

chacl '(binome.%,rwx)(%.@,-x)(%.%,--)' catalogue_projet

qui donne le droit d'accès total à l'utilisateur binome (quelque soit son groupe), permet le parcours du répertoire aux membres du groupe propriétaire et refuse l'accès à tous les autres utilisateurs.

Deux symboles spéciaux:

%
pour n'importe qui (utilisateur ou groupe)
@
pour le propriétaire ou le groupe propriétaire

On retrouve aussi les autres syntaxes de chmod par exemple:
chacl %.%=r fichier
ou
chacl @.%=5 fichier

Attention les acl sont détruits par la commande chmod et la commande chacl ne permet pas de positioner les autres bits définis dans l'inode; seuls les 9 bits de protections sont positionnables par chacl.

Pour positionner les droits standard et des acl, il faut donc réaliser en succession un chmod puis un chacl.

On utilisera:
chacl '(prof.%,rwx)' catalogue_projet
pour les projets de C ou de système.

La commande lsacl [fichiers] permet de connaître les acl associés aux fichiers, remarquer qu'à l'inverse de /bin/ls cette commande n'a pas de paramètres par défaut.





Dominique REVUZ
Mon Feb 2 12:10:31 MET 1998
Une Bug Un mail Merci