- Access Control List
-
Pour les articles homonymes, voir ACL.
Access Control List (ACL), en français liste de contrôle d'accès, désigne deux choses en sécurité informatique :
- un système permettant de faire une gestion plus fine des droits d'accès aux fichiers que ne le permet la méthode employée par les systèmes UNIX.
- en réseau, une liste des adresses et ports autorisés ou interdits par un pare-feu.
Une ACL est une liste d’Access Control Entry (ACE) ou entrée de contrôle d'accès donnant ou supprimant des droits d'accès à une personne ou un groupe.
Sommaire
ACL sur les fichiers
Sous UNIX
Sous UNIX, les ACL ne remplacent pas la méthode habituelle des droits. Pour garder une compatibilité, elles s'ajoutent à elle au sein de la norme POSIX 1e.
Les systèmes de type UNIX n'acceptent, classiquement, que trois types de droits :
- lecture (Read);
- écriture (Write);
- exécution (Xecute),
pour trois types d'utilisateurs :
- le propriétaire du fichier ;
- les membres du groupe auquel appartient le fichier ;
- tous les autres utilisateurs.
Cependant, cette méthode ne couvre pas suffisamment de cas, notamment en entreprise. En effet, les réseaux d'entreprises nécessitent l'attribut de droits pour certains membres de plusieurs groupes distincts, ce qui nécessite diverses astuces lourdes à mettre en œuvre et entretenir sous Unix.
L'intervention de l'administrateur est souvent nécessaire pour créer les groupes intermédiaires qui permettront de partager des fichiers entre plusieurs utilisateurs ou groupes d'utilisateurs, tout en les gardant confidentiels face aux autres.
Les ACL permettent de combler ce manque. On peut permettre à n'importe quel utilisateur, ou groupe, un des trois droits (lecture, écriture et exécution) et cela sans être limité par le nombre d'utilisateurs que l'on veut ajouter.
Mac OS X gère les ACL depuis la version 10.4 (Tiger).
Utilisation
Les deux commandes permettant de visualiser les droits ACL et de les modifier sont, sous UNIX :
getfacl
: pour visualisersetfacl
: pour modifier
Windows
Les ACL sont implémentées par le système de fichiers NTFS, et prises en charge par Windows NT 4.0 et ses successeurs (Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7 et Windows Server 2008 R2). Sous NTFS, les ACL peuvent être définis sur des fichiers ou des répertoires et acceptent les types de droits suivants :
- parcours d'un dossier ;
- liste d'un dossier ;
- lecture des méta-données ;
- ajout de fichier ;
- ajout de répertoire ;
- ajout de données à un fichier existant ;
- modification des droits ;
- suppression ;
- lecture ;
- appropriation ;
- exécution.
Ces droits s'appliquent soit à des utilisateurs (réels, virtuels - tel le propriétaire du fichier - ou systèmes), soit à des groupes d'utilisateurs (réels, virtuels ou systèmes). L'application d'un droit à un utilisateur ou à un groupe est nommé ACE. Il est possible d'autoriser ou de rompre l'héritage hiérarchique des ACL entre les différents répertoires, ainsi que de paramétrer le type d'héritage (sur les dossiers, les fichiers, à tous niveaux de profondeur, uniquement le premier, etc.).
Le nouveau système de fichiers, exFAT, proposé depuis le Service Pack 1 de Windows Vista et Windows CE 6 pour remplacer la FAT prend aussi en charge les ACL.
En réseau
Une ACL sur un pare-feu ou un routeur filtrant, est une liste d'adresses ou de ports autorisés ou interdits par le dispositif de filtrage.
Les Access Control List sont divisés en trois grandes catégories, l'ACL standard, l'ACL étendue et la nommée-étendue.
- l'ACL standard ne peut contrôler que deux ensembles : l'adresse IP source et une partie de l'adresse IP source, au moyen de masque générique.
- l'étendue peut contrôler l'adresse IP de destination, la partie de l'adresse de destination (masque générique), le type de protocole (TCP, UDP, ICMP, IGRP, IGMP, etc.), le port source et de destination, les flux TCP, IP TOS (Type of service) ainsi que les priorités IP.
- la nommée-étendue est une ACL étendue à laquelle on a affecté un nom.
Par exemple, sous Linux c'est le système Netfilter qui gère l'ACL. La création d'ACL qui autorise le courrier électronique entrant, depuis n'importe quelle adresse IP, vers le port 25 (alloué communément à SMTP) se fait avec la commande suivante :
iptables --insert INPUT --protocol tcp --destination-port 25 --jump ACCEPT
Iptables est la commande qui permet de configurer NetFilter.
Les ACL conviennent bien à des protocoles dont les ports sont statiques (connus à l'avance) comme SMTP, mais ne suffisent pas avec des logiciels comme BitTorrent où les ports peuvent varier.
Liens externes
Catégories :- Sécurité du système d'exploitation
- Administration système
- Modèle de sécurité informatique
- Contrôle d'accès informatique
Wikimedia Foundation. 2010.