Le contrôle d’accès logique : Gestion des autorisations
En guise d’introduction : de l’authentification à l’autorisation !
Il est nécessaire de bien faire la distinction entre l’autorisation et l’authentification. L’authentification est le processus par lequel on s’assure qu’un sujet est bien celui qu’il prétend être. Le processus d’authentification peut mettre en jeu un ou plusieurs facteurs authentifiant. Lorsque l’on combine plusieurs facteurs on parle d’authentification forte. Les facteurs sont classés en trois catégories :
- Ce que l’on connait. (mots de passe)
- Ce que l’on possède. (cartes, tokens)
- Ce que l’on est. (méthodes biométriques)
L’authentification permet de s’assurer de l’identité d’un sujet, avec un degré de certitude très variable. Par exemple, une authentification reposant uniquement sur la connaissance d’un mot de passe est jugée moins sûr qu’une authentification par le biais de la prise d’empreinte de la rétine. De plus, on admettra qu’il est plus facile de voler un mot de passe qu’une caractéristique biométrique.
Le processus d’authentification est nécessaire dans la sécurité d’un système mais ne permet aucunement de restreindre ni de définir le périmètre d’action d’un sujet. L’authentification s’attache à contrôler l’accès au système et non pas l’accès aux éléments du système (logiciels et matériels). La notion d’autorisation commence à se dessiner.
Quelles sont les opérations qu’un utilisateur peut effectuer sur le système informatique ?
Comment restreindre l’accès à des données confidentielles ?
Pour répondre à ces questions, il faut avoir défini au préalable des autorisations. Les mécanismes de contrôle d’accès permettent de faire respecter la politique de sécurité mise en place. Nous allons définir le contrôle d’accès comme un mécanisme visant à protéger les ressources du système contre un accès inapproprié ou non désiré.
Les systèmes d’exploitation utilisent le contrôle d’accès afin de protéger des ressources comme les fichiers, les processus, la mémoire...
Nous allons expliquer les trois niveaux d’abstraction régissant le contrôle d’accès :
- La politique de contrôle d’accès.
- Le modèle de contrôle d’accès.
- Le mécanisme de contrôle d’accès.
La politique de contrôle d’accès
Une politique de contrôle d’accès définit les droits, les interdictions, les informations auditées ainsi que les personnes habilitées à modifier la politique de contrôle d’accès. Au sein d’une entreprise, une politique peut permettre à des partenaires d’accéder au système d’information : une politique peut s’appliquer de manière globale et être distribuée sur différents serveurs. On peut noter que chaque entreprise, chaque organisation possède sa propre politique de contrôle d’accès, ceci est dû à de nombreux facteurs comme la culture d’entreprise, la volonté d’ouverture, l’analyse de risque, la criticité du secteur, les lois en vigueur. Certaines politique d’accès seront plutôt axées sur le niveau de confidentialité des données comme pour le secteur militaire. Dans le secteur commercial, on privilégiera en premier l’intégrité des ressources. De plus, les politiques de contrôle d’accès sont par définition dynamiques. Elles s’adaptent au fil du temps en fonction des lois du marché, des normes de régulations ou bien de la stratégie de l’entreprise.
Modèle de contrôle d’accès
La politique de contrôle d’accès est une vue haute et abstraite du contrôle d’accès. Un niveau intermédiaire permettant de faire le pont entre la politique et son implémentation est le modèle de contrôle d’accès. Le modèle va permettre de supporter la politique définit. En ayant formalisé un modèle, on va pouvoir décrire les différentes propriétés de sécurité du modèle. Par exemple le modèle RBAC (Role Based Access Control) donne la possibilité de séparer les rôles qu’une personne peut endosser à un instant t. Le modèle DAC (Discretionnary Access Control) donne la possibilité au propriétaire de la ressource de gérer lui-même les autorisations. Le modèle MAC (Mandatory Access Control) quant à lui permet de garantir la confidentialité des données. Il existe ainsi différents modèles qui sont plus ou moins adaptés à la politique de sécurité de l’entreprise.
Depuis 50 ans, plusieurs modèles de contrôle d’accès ont été successivement proposés. On peut citer DAC, MAC, RBAC, TBAC, TMAC ou encore ORBAC. A chaque fois, un nouveau modèle est apparu pour répondre soit à des problématiques d’ordre militaire, soit à des problématiques du monde civil. On considère souvent que le domaine militaire nécessite un fort degré de confidentialité, tandis que les systèmes civils recherchent à garantir un niveau d’intégrité.
Le mécanisme de contrôle d’accès
Le modèle de contrôle d’accès ne définit pas de quelle manière il va être implémenté. Le modèle reste indépendant des différentes implémentations possibles. Par contre, le mécanisme de contrôle d’accès permet de réaliser la politique définit au préalable. A ce niveau, le niveau d’abstraction est faible ; la technicité est forte. Les mécanismes de contrôle d’accès peuvent être classés de nombreuses façons et ont un support réduit des politiques. En général, des attributs de sécurité sur les utilisateurs et les ressources sont conservés dans le système. Les attributs de sécurité sur les ressources peuvent être des étiquettes de sécurité ou bien des listes de contrôles d’accès. Pour déterminer si un utilisateur à la permission de faire une opération sur une ressource, le mécanisme peut par exemple vérifier que le couple identité utilisateur-opération est inclus dans la liste de contrôle d’accès de la ressource. Les mécanismes de contrôle d’accès différent selon leur habilité à fournir des rapports et à administrer les droits d’accès.