Access Control List

Un article de Wikipédia, l'encyclopédie libre.

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 :

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

[modifier] ACL sur les fichiers

Sous UNIX, les ACL ne remplacent pas la méthode habituelle des droits, pour garder une compatibilité, elle s'ajoutent à elle, ce qui permet aux systèmes l'utilisant de rester conformes à la norme POSIX.

[modifier] Pourquoi les ACL ?

Les systèmes de type UNIX n'acceptent que trois types de droits :

  • lecture
  • écriture
  • exécution

pour trois types d'utilisateurs :

  • le propriétaire du fichier
  • les membres du groupe auquel appartient le fichier
  • tous les autres utilisateurs

En utilisant cette méthode on couvre tous les cas, mais l'intervention de l'administrateur est nécessaire pour créer les groupes qui permettront de partager des fichiers entre plusieurs 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'utilisateur que l'on veut ajouter.

[modifier] Utilisation

Les deux commandes permettant de visualiser les droits ACL et de les modifier sont, sous UNIX :

  • getfacl : pour visualiser
  • setfacl : pour modifier

[modifier] Les ACL dans les autres systèmes

Les ACL sont présentes sous Windows NT 4.0 et ses successeurs (Windows 2000, Windows XP, Windows 2003 et Windows Vista). Les ACL ne sont effectivement prises en charge que pour des fichiers se trouvant sur une partition NTFS, car la FAT32 ne permet pas la gestion des droits.

Le nouveau système de fichiers, exFAT, proposé depuis le SP1 de Windows Vista pour remplacer la FAT prends aussi en charge les ACL.

Mac OS X gère les ACL depuis la version 10.4 (Tiger).

[modifier] 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é 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.

[modifier] Liens externes

Contrôle d'accès en sécurité informatique
Types de contrôle d'accès

Modèles de contrôle d'accès