Contrôle d'accès à base de rôles
Le contrôle d'accès basé sur les rôles (« Role-Based Access Control » (RBAC) en anglais) est un modèle de contrôle d'accès à un système d'information dans lequel chaque décision d'accès est basée sur le rôle auquel l'utilisateur est associé. La typologie et la granularité des rôles découlent généralement de la structure de l'entreprise ou de l'organisation ayant adopté ce système. Les utilisateurs exerçant des fonctions similaires peuvent être regroupés sous le même rôle. Un rôle, déterminé par une autorité centrale, associe à un sujet des autorisations d'accès sur un ensemble d'objets (des parties d'un système d'information par exemple). Une étude du NIST a montré que le modèle RBAC convenait à la majorité des besoins pour les entreprises et organisations[1].
La modification des contrôles d'accès n'est pas nécessaire chaque fois qu'une personne se joint à une organisation ou la quitte, tant que les bonnes pratiques de gestion du cycle de vie des identités sont respectées.
Ce modèle est également appelé contrôle d'accès non-discrétionnaire (« nondiscretionary access control » en anglais) et constitue une nouvelle possibilité de choix entre les systèmes à contrôle d'accès obligatoire (MAC) et contrôle d'accès discrétionnaire (DAC). On notera qu'un système DAC avec des groupes (tel qu'il est implémenté dans les systèmes de fichier POSIX) se rapproche fonctionnellement d'un RBAC[2].
Vérification des droits et privilèges
Le contrôle d’accès basé sur les rôles peut être géré au sein d’un système UNIX afin que les utilisateurs puissent obtenir les droits nécessaires pour créer, modifier ou supprimer des fichiers au sein d’un système.
Par exemple le groupe root, qui est un super-utilisateur, va pouvoir modifier une grande partie voire l’ensemble des fichiers. Un utilisateur dit lambda pourra visualiser au sein d' /etc/group
le groupe auquel il appartient afin de connaître ses droits. Pour connaître ses droits, il devra se documenter au sein de son organisation afin de connaitre les commandes qui lui sont disponibles de par son groupe.
L’utilisateur peut également visualiser au sein des fichiers les droits en utilisant la commande ls -l
dans le répertoire courant.
Par exemple :
drwxr-x--x 6 user equipe 4096 2020-12-04 10:09 Bureau
Où :
- Le premier caractère,
d
, indique qu'il s'agit d'un répertoire - Les trois caractères suivants,
rwx
, indiquent les droits du propriétaireuser
:r
indique un droit de lecture (read)w
indique un droit d'écriture (write)x
indique un droit d'exécution (execute)
- Les trois caractères suivants,
r-x
, indiquent les droits du groupeequipe
:r
indique un droit de lecture (read)-
, à la place du caractèrew
tel que vu ci-dessus, indique l'absence de droit d'écriture (write)x
indique un droit d'exécution (execute)
- Les trois caractères suivants,
--x
, indiquent les droits des utilisateurs qui ne sont niuser
niequipe
:--x
indique donc un droit en exécution mais ni en lecture, ni en écriture.
Les avantages du contrôle basé sur les rôles
Dans un premier temps il permet la réduction du temps et des efforts nécessaires pour allouer des ressources. Cela facilite beaucoup l’automatisation et l’allocation de ressources car la personne visée se verra automatiquement affecter les droits et accès dont elle aura besoin. En effet, le système est intelligent et il lui donnera automatiquement le rôle approprié pour finalement lui accorder le droit d’accès à son travail.
De plus, cela est très utile pour l’intégration d’un nouvel employé au sein d’une entreprise, car celui-ci va directement pouvoir obtenir les droits liés à son travail et son rôle au sein de l’équipe. Ses droits vont alors être liés à son travail tout le long de son expérience professionnelle et l’accompagneront jusqu’à sa démission potentielle correspondant à la fin de tous droits possibles. L’autre avantage du contrôle basé sur les rôles est du côté de l’organisation. Elle peut visualiser, auditer et suivre les rôles et l’application de bonnes pratiques mises en place par l’administrateur système. L’audit se fera au niveau du rôle au lieu de s’intéresser au cas par cas. Lorsque l’on porte ce type de problématique à grande échelle le contrôle basé sur les rôles ne peut être qu’un grand avantage pour l’entreprise.
Notes et références
- (en) DIANE Publishing Company, National Computer Security Conference, 1993 (16th) Proceedings: Information Systems Security: User Choices, DIANE Publishing, (ISBN 978-0-7881-1924-8, lire en ligne)
- (en) Achim D. Brucker et Burkhart Wolff, « A verification approach to applied system security », International Journal on Software Tools for Technology Transfer, vol. 7, no 3, , p. 233–247 (ISSN 1433-2787, DOI 10.1007/s10009-004-0176-3, lire en ligne, consulté le )
Liens externes
- (fr) Présentation du contrôle d'accès basé sur un rôle pour Microsoft Exchange Server par Microsoft
- (en) NIST (National Institute of Standards and Technology) : site officiel du NIST sur les systèmes RBAC (articles, etc.).