Quels sont les avantages de chacun et quand dois-je choisir l'un plutôt que l'autre? Y a-t-il des situations où celles-ci devraient être fusionnées?
Avez-vous des exemples d'utilisations courantes?
Et qu'en est-il du MAC, où cela s'inscrit-il?
Le contrôle d'accès basé sur les rôles (RBAC) consiste à définir une liste de rôles d'entreprise et à ajouter chaque utilisateur du système à un ou plusieurs rôles. Des autorisations et privilèges sont ensuite accordés à chaque rôle, et les utilisateurs les reçoivent via leur appartenance au rôle (à peu près équivalent à un groupe). Les applications testent généralement l'utilisateur pour l'appartenance à un rôle spécifique et accordent ou refusent l'accès en fonction de cela.
Le contrôle d'accès discrétionnaire (DAC) permet à un utilisateur ou un administrateur de définir une liste de contrôle d'accès (ACL) sur une ressource spécifique (par exemple, fichier, clé de registre, table de base de données, objet OS, etc.), cette liste contiendra des entrées (ACE) qui définissent chaque utilisateur qui a accès à la ressource et quels sont ses privilèges pour cette ressource.
Le principal avantage de RBAC sur DAC est la facilité de gestion - en principe, vous avez très peu de rôles, administrés de manière centralisée, quel que soit le nombre d'utilisateurs, et il s'agit simplement d'accorder à chaque utilisateur le rôle approprié; contrairement à DAC, où pour chaque nouvel utilisateur (ou changement d'utilisateur, ou suppression, etc.), vous devez parcourir toutes les ressources auxquelles elle a besoin d'accéder et les ajouter à la liste.
En revanche, le CAD est souvent plus simple et généralement plus granuleux. De plus, dans le modèle DAC, le propriétaire des données peut décider qui a accès (s'il a cette autorisation sur les données) et ajouter ou supprimer des personnes de la liste.
Un exemple très courant de DAC est le système de fichiers Windows. D'un autre côté, un exemple très courant de RBAC est le DAC sur les serveurs de fichiers d'entreprise - toute personne du groupe ActiveDirectory "Sales" aura accès au dossier partagé\Sales \. Plus communément, le groupe Administrateurs dans Windows.
MAC est un contrôle d'accès obligatoire, cela peut être considéré comme un niveau de classification ou de confidentialité. Ceci est le plus souvent utilisé dans les systèmes militaires, et à l'époque du Mainframe :). Ce n'est plus tellement utilisé, bien que les systèmes d'exploitation actuels implémentent une saveur de cela, tels que les niveaux d'intégrité de Vista/Win7.
Pour résumer les différences: