Google est ton ami :)
Quoi qu'il en soit, le fossé entre le rôle et le groupe provient des concepts de sécurité informatique (par opposition à la simple gestion des ressources). Le professeur Ravi Sandhu fournit une couverture fondamentale de la différence sémantique entre les rôles et les groupes.
http://profsandhu.com/workshop/role-group.pdf
Un groupe est un ensemble d'utilisateurs avec un ensemble donné d'autorisations attribué au groupe (et de manière transitoire, aux utilisateurs). Un rôle est un ensemble d'autorisations, et un utilisateur hérite effectivement de ces autorisations lorsqu'il agit sous ce rôle.
En règle générale, votre adhésion à un groupe reste pendant la durée de votre connexion. Un rôle, par contre, peut être activé selon des conditions spécifiques. Si votre rôle actuel est «personnel médical», vous pourrez peut-être consulter certains des dossiers médicaux d'un patient donné. Si, toutefois, votre rôle est également celui de «médecin», vous pourrez peut-être voir des informations médicales supplémentaires au-delà de ce qu'une personne ayant juste un rôle de «personnel médical» peut voir.
Les rôles peuvent être activés par heure de la journée, lieu d'accès. Les rôles peuvent également être améliorés / associés à des attributs. Vous travaillez peut-être en tant que «médecin», mais si vous n'avez pas d'attribut de «médecin principal» ou de relation avec moi (un utilisateur avec le rôle de «patient»), vous ne pouvez pas voir l'intégralité de mes antécédents médicaux.
Vous pouvez faire tout cela avec des groupes, mais encore une fois, les groupes ont tendance à se concentrer sur l'identité, pas sur le rôle ou l'activité. Et le type d'aspects de sécurité que nous venons de décrire ont tendance à mieux s'aligner sur le plus tardif que sur l'ancien.
Dans de nombreux cas, pour l'utilisation de la classification des choses ensemble (et rien de plus), les groupes et les rôles fonctionnent de la même manière. Les groupes, cependant, sont basés sur l'identité, tandis que les rôles sont censés délimiter l'activité. Malheureusement, les systèmes d'exploitation ont tendance à brouiller la distinction, traitant les rôles comme des groupes.
Vous voyez une distinction beaucoup plus claire entre les rôles au niveau de l'application ou du système - porteurs d'une sémantique spécifique à l'application ou au système (comme dans les rôles Oracle ) - par opposition aux `` rôles '' implémentés au niveau du système d'exploitation (qui sont généralement synonymes de groupes).
Il peut y avoir des limitations aux rôles et aux modèles de contrôle d'accès basés sur les rôles (comme avec tout bien sûr):
http://www.lhotka.net/weblog/CommentView,guid,9efcafc7-68a2-4f8f-bc64-66174453adfd.aspx
Il y a environ dix ans, j'ai vu des recherches sur le contrôle d'accès basé sur les attributs et les relations qui offrent une bien meilleure granularité que le contrôle d'accès basé sur les rôles. Malheureusement, je n'ai pas vu beaucoup d'activité dans ce domaine depuis des années.
La différence la plus importante entre les rôles et les groupes est que les rôles implémentent généralement un mécanisme de contrôle d'accès obligatoire (MAC). Vous ne pouvez pas vous attribuer (ou attribuer aux autres) des rôles. Un administrateur de rôle ou un ingénieur de rôle fait cela.
Ceci est superficiellement similaire aux groupes UNIX où un utilisateur peut / pourrait être en mesure de s’attribuer à un groupe (via sudo bien sûr).
Une autre caractéristique importante est que les vrais modèles RBAC peuvent fournir le concept de rôles mutuellement exclusifs. En revanche, les groupes basés sur l'identité sont additifs - l'identité d'un mandant est la somme (ou la conjonction) des groupes.
Une autre caractéristique d'un modèle de sécurité basé sur RBAC est que les éléments créés pour un rôle particulier ne peuvent généralement pas être accédés de manière transitoire par une personne qui n'agit pas sous ce rôle.
D'un autre côté, sous un modèle de contrôle d'accès discrétionnaire (DAC) (le modèle par défaut sous Unix), vous ne pouvez pas obtenir ce type de garantie avec les groupes seuls. BTW, ce n'est pas une limitation des groupes ou Unix, mais une limitation des modèles DAC basés sur l'identité (et de manière transitoire, avec des groupes basés sur l'identité.)
J'espère que ça aide.
========================
Ajouter un peu plus après avoir vu la réponse bien faite de Simon. Les rôles vous aident à gérer les autorisations. Les groupes vous aident à gérer les objets et les sujets. De plus, on pourrait considérer les rôles comme des «contextes». Un rôle 'X' peut décrire un contexte de sécurité qui règle comment le sujet Y accède (ou n'accède pas) à l'objet Z.
Une autre distinction (ou idéal) importante est qu'il existe un ingénieur de rôle, une personne qui conçoit les rôles, les contextes, qui sont nécessaires et / ou évidents dans une application, un système ou un système d'exploitation. Un ingénieur de rôle est généralement (mais n'est pas obligé) également un administrateur de rôle (ou administrateur système). De plus, le véritable rôle (sans jeu de mots) d'un ingénieur de rôle est dans le domaine de l'ingénierie de sécurité, pas dans l'administration.
Il s'agit d'un nouveau groupe formalisé par RBAC (même s'il est rarement utilisé), un groupe qui n'a généralement pas été présent avec les systèmes capables de gérer les groupes.