Kann mir jemand sagen, was der wahre Unterschied zwischen Gruppe und Rolle ist? Ich habe schon seit einiger Zeit versucht, dies herauszufinden, und je mehr Informationen ich lese, desto mehr bekomme ich das Gefühl, dass dies nur zur Verwirrung der Menschen angesprochen wird und es keinen wirklichen Unterschied gibt. Beide können den Job des anderen machen. Ich habe immer eine Gruppe verwendet, um Benutzer und ihre Zugriffsrechte zu verwalten.
Vor kurzem bin ich auf eine Verwaltungssoftware gestoßen, in der sich eine Reihe von Benutzern befinden. Jeder Benutzer kann ein Modul zugewiesen haben (das gesamte System ist in einige Teile unterteilt, die als Module bezeichnet werden, z. B. Verwaltungsmodul, Umfragemodul, Auftragsmodul, Kundenmodul). Darüber hinaus verfügt jedes Modul über eine Liste von Funktionen, die für jeden Benutzer zugelassen oder verweigert werden können. Angenommen, ein Benutzer, John Smith, kann auf Modulbestellungen zugreifen und jede Bestellung bearbeiten, hat jedoch kein Recht, eine dieser Bestellungen zu löschen.
Wenn es mehr Benutzer mit derselben Kompetenz gäbe, würde ich eine Gruppe verwenden, um dies zu verwalten. Ich würde solche Benutzer in derselben Gruppe zusammenfassen und der Gruppe Zugriffsrechte für Module und deren Funktionen zuweisen. Alle Benutzer in derselben Gruppe hätten dieselben Zugriffsrechte.
Warum nennt man es eine Gruppe und keine Rolle? Ich weiß nicht, ich fühle es einfach so. Es scheint mir, dass es einfach nicht wirklich wichtig ist:] Aber ich würde trotzdem gerne den wirklichen Unterschied wissen.
Irgendwelche Vorschläge, warum dies eher als Rolle als als Gruppe oder umgekehrt bezeichnet werden sollte?
Antworten:
Google ist dein Freund :)
Wie auch immer, die Trennung zwischen Rolle und Gruppe ergibt sich aus Konzepten der Computersicherheit (im Gegensatz zum einfachen Ressourcenmanagement). Prof. Ravi Sandhu bietet eine wegweisende Berichterstattung über den semantischen Unterschied zwischen Rollen und Gruppen.
http://profsandhu.com/workshop/role-group.pdf
Eine Gruppe ist eine Sammlung von Benutzern mit einem bestimmten Satz von Berechtigungen, die der Gruppe (und transitiv den Benutzern) zugewiesen sind. Eine Rolle ist eine Sammlung von Berechtigungen, und ein Benutzer erbt diese Berechtigungen effektiv, wenn er unter dieser Rolle handelt.
Normalerweise bleibt Ihre Gruppenmitgliedschaft während der Dauer Ihrer Anmeldung bestehen. Eine Rolle kann dagegen unter bestimmten Bedingungen aktiviert werden. Wenn Ihre derzeitige Rolle "medizinisches Personal" ist, können Sie möglicherweise einige der medizinischen Unterlagen für einen bestimmten Patienten einsehen. Wenn Ihre Rolle jedoch auch "Arzt" ist, können Sie möglicherweise zusätzliche medizinische Informationen anzeigen, die über das hinausgehen, was eine Person mit nur einer Rolle als "medizinisches Personal" sehen kann.
Rollen können nach Tageszeit und Zugriffsort aktiviert werden. Rollen können auch erweitert / mit Attributen verknüpft werden. Sie arbeiten möglicherweise als "Arzt", aber wenn Sie kein Attribut oder keine Beziehung zum "Primärarzt" zu mir haben (ein Benutzer mit der Rolle "Patient"), können Sie meine gesamte Krankengeschichte nicht sehen.
Sie könnten das alles mit Gruppen machen, aber auch hier konzentrieren sich Gruppen eher auf Identität, nicht auf Rolle oder Aktivität. Und die soeben beschriebenen Sicherheitsaspekte stimmen tendenziell besser mit den späteren als mit den ersteren überein.
In vielen Fällen funktionieren Gruppen und Rollen für die Verwendung der Klassifizierung von Dingen zusammen (und nicht mehr) gleich. Gruppen basieren jedoch auf Identität, während Rollen die Aktivität abgrenzen sollen. Leider neigen Betriebssysteme dazu, die Unterscheidung zu verwischen und Rollen als Gruppen zu behandeln.
Sie sehen eine viel klarere Unterscheidung zwischen Rollen auf Anwendungs- oder Systemebene - mit anwendungs- oder systemspezifischer Semantik (wie in Oracle-Rollen) ) - im Gegensatz zu 'Rollen', die auf Betriebssystemebene implementiert sind (die normalerweise gleichbedeutend mit Gruppen sind).
Es kann Einschränkungen für Rollen und rollenbasierte Zugriffssteuerungsmodelle geben (wie natürlich bei allem):
http://www.lhotka.net/weblog/CommentView,guid,9efcafc7-68a2-4f8f-bc64-66174453adfd.aspx
Vor ungefähr einem Jahrzehnt habe ich einige Untersuchungen zur Attribut- und Beziehungszugriffskontrolle durchgeführt, die eine viel bessere Granularität bieten als die rollenbasierte Zugriffskontrolle. Leider habe ich in diesem Bereich seit Jahren nicht mehr viel Aktivität gesehen.
Der wichtigste Unterschied zwischen Rollen und Gruppen besteht darin, dass Rollen normalerweise einen obligatorischen Zugriffssteuerungsmechanismus (MAC) implementieren. Sie können sich (oder andere) nicht Rollen zuweisen. Ein Rollenadministrator oder Rolleningenieur macht das.
Dies ähnelt oberflächlich UNIX-Gruppen, in denen sich ein Benutzer einer Gruppe zuordnen kann / könnte (natürlich über sudo). Wenn Gruppen gemäß einem sicherheitstechnischen Prozess zugewiesen werden, verschwimmt die Unterscheidung jedoch etwas.
Ein weiteres wichtiges Merkmal ist, dass echte RBAC-Modelle das Konzept sich gegenseitig ausschließender Rollen liefern können. Im Gegensatz dazu sind identitätsbasierte Gruppen additiv - die Identität eines Principals ist die Summe (oder Konjunktion) der Gruppen.
Ein weiteres Merkmal eines auf echtem RBAC basierenden Sicherheitsmodells besteht darin, dass auf Elemente, die für eine bestimmte Rolle erstellt wurden, normalerweise nicht transitiv von jemandem zugegriffen werden kann, der nicht unter dieser Rolle handelt.
Andererseits können Sie unter einem DAC-Modell (Discretionary Access Control) (dem Standardmodell in Unix) diese Art von Garantie nicht nur für Gruppen erhalten. Übrigens ist dies keine Einschränkung von Gruppen oder Unix, sondern eine Einschränkung von DAC-Modellen, die auf Identität basieren (und transitiv mit identitätsbasierten Gruppen).
Ich hoffe es hilft.
=======================
Fügen Sie noch etwas hinzu, nachdem Sie Simons gut formulierte Antwort gesehen haben. Mithilfe von Rollen können Sie Berechtigungen verwalten. Gruppen helfen Ihnen beim Verwalten von Objekten und Themen. Darüber hinaus könnte man sich Rollen als "Kontexte" vorstellen. Eine Rolle 'X' kann einen Sicherheitskontext beschreiben, der regelt, wie Subjekt Y auf Objekt Z zugreift (oder nicht zugreift).
Ein weiterer wichtiger Unterschied (oder Ideal) besteht darin, dass es einen Rolleningenieur gibt, eine Person, die die Rollen, die Kontexte entwickelt, die in einer Anwendung, einem System oder einem Betriebssystem notwendig und / oder offensichtlich sind. Ein Rolleningenieur ist in der Regel auch ein Rollenadministrator (oder Systemadministrator) (muss es aber nicht sein). Darüber hinaus liegt die wahre Rolle (kein Wortspiel beabsichtigt) eines Rolleningenieurs im Bereich der Sicherheitstechnik, nicht der Verwaltung.
Dies ist eine neuartige Gruppe, die von RBAC formalisiert wurde (auch wenn sie selten verwendet wird), eine, die bei gruppenfähigen Systemen normalerweise nicht vorhanden war.
quelle
Eine Gruppe ist ein Mittel zum Organisieren von Benutzern, während eine Rolle normalerweise ein Mittel zum Organisieren von Rechten ist.
Dies kann auf verschiedene Weise nützlich sein. Beispielsweise könnte eine Gruppe von Berechtigungen, die in einer Rolle gruppiert sind, einer Gruppe von Gruppen oder einer Gruppe von Benutzern unabhängig von ihrer Gruppe zugewiesen werden.
Ein CMS verfügt beispielsweise möglicherweise über einige Berechtigungen wie "Beitrag lesen", "Beitrag erstellen" und "Beitrag bearbeiten". Eine Editor-Rolle kann möglicherweise lesen und bearbeiten, aber nicht erstellen (ich weiß nicht warum!). Ein Beitrag kann möglicherweise erstellen und lesen usw. Eine Gruppe von Managern hat möglicherweise die Editor-Rolle, während ein Benutzer in der IT, der nicht zur Manager-Gruppe gehört, möglicherweise auch die Editor-Rolle hat, obwohl der Rest von ihm oder ihr Gruppe nicht.
Während in einem einfachen System Gruppen und Rollen oft eng aufeinander abgestimmt sind, ist dies nicht immer der Fall.
quelle
Obwohl es einen semantischen Unterschied zwischen Rollen und Gruppen gibt (wie oben durch andere Antworten beschrieben), scheinen Rollen und Gruppen technisch gleich zu sein. Nichts hindert Sie daran, Berechtigungen direkt Benutzern und Gruppen zuzuweisen (dies kann als Feinabstimmung der Zugriffskontrolle angesehen werden). Wenn dem Benutzer eine Rolle zugewiesen wird, kann er als Rollenmitglied betrachtet werden, im gleichen Sinne, wenn der Benutzer Mitglied einer Gruppe wird.
So können wir keinen wirklichen Unterschied zwischen Rollen und Gruppen feststellen. Beides kann für die Gruppierung von Benutzern UND / ODER Berechtigungen berücksichtigt werden. Der Unterschied ist also nur semantisch: - Wenn er semantisch zum Gruppieren von Berechtigungen verwendet wird, handelt es sich um eine Rolle. - Wenn es semantisch zum Gruppieren von Benutzern verwendet wird, handelt es sich um eine Gruppe. Technisch gibt es keinen Unterschied.
quelle
Eine "Gruppe" ist eine Sammlung von Benutzern. Eine "Rolle" ist eine Sammlung von Berechtigungen. Das heißt, wenn Gruppe Alpha Gruppen-Beta enthält , empfängt Alpha alle Benutzer von Beta und Beta alle Berechtigungen von Alpha. Umgekehrt könnte man sagen, dass Rolle Beta Rolle Alpha enthält und die gleichen Schlussfolgerungen gelten würden.
Ein konkretes Beispiel macht die Dinge klarer. Betrachten Sie "Kundensupport" und "Senior-Kundensupport". Wenn Sie diese Sammlungen als Gruppen betrachten, ist es klar, dass Kundensupportbenutzer ältere Kundensupportbenutzer "einschließen". Wenn Sie sie jedoch als Rollen betrachten, ist klar, dass Senior-Kundensupportberechtigungen Kundensupportberechtigungen "einschließen".
Theoretisch könnte man einfach einen Sammlungstyp haben. Allerdings wäre es nicht eindeutig, wenn Sie sind zu sagen , dass „Sammlung alpha Sammlung Beta enthält“ . In diesem Fall können Sie nicht feststellen, ob sich die Benutzer in Alpha in der Beta (wie eine Rolle) oder die Benutzer in der Beta in der Alpha (wie eine Gruppe) befinden. Um Terminologie wie "Includes" und visuelle Elemente wie Baumansichten eindeutig zu machen, müssen Sie bei den meisten rbac-Systemen angeben, ob es sich bei der fraglichen Sammlung zumindest aus Diskussionsgründen um eine "Gruppe" oder eine "Rolle" handelt.
Einige Analogien könnten helfen. In Bezug auf die Mengenlehre sind Berechtigungen Alpha eine Obermenge der Berechtigungen Beta, wenn Gruppe Alpha eine Teilmenge der Gruppe Beta ist. Wenn Gruppen im Vergleich zur Genealogie wie ein Baum von Nachkommen sind, sind Rollen wie ein Baum von Vorfahren.
quelle
HINWEIS - Das folgende Geschwafel ist nur dann sinnvoll, wenn versucht wird, Sicherheit innerhalb einer Organisation zu gewährleisten - das heißt, wenn versucht wird, den Zugriff auf Informationen einzuschränken ...
Gruppen sind empirisch - sie beantworten die Frage nach dem "Was". Sie sind das "Ist" in dem Sinne, dass sie die bestehende Realität des Zugangs widerspiegeln. IT-Leute lieben Gruppen - sie sind sehr wörtlich und einfach zu definieren. Letztendlich geht es bei der gesamten Zugangskontrolle (wie wir alle in der Mittelschule gelernt haben ...) darum, die Frage zu beantworten: "Zu welcher Gruppe gehören Sie?"
Rollen sind jedoch normativer - sie leiten, was "sein sollte". Gute Manager und HR lieben "Rollen" - sie antworten nicht - sie stellen die Frage "Warum?" Leider können Rollen auch vage sein und diese "Unschärfe" kann (IT-) Leute verrückt machen.
Um das obige medizinische Beispiel zu verwenden: Wenn die Rolle des "Hausarztes" mehr Rechte hat (dh Zugang zu mehr Gruppen) als die Rolle eines "Röntgentechnikers", liegt dies daran, dass Menschen (Manager und Personalabteilung) entschieden haben, warum dies so ist musste passieren. In diesem Sinne sind sie "die kollektive Weisheit" einer Organisation.
Angenommen, ein Arzt erhält Zugang (Mitgliedschaft in einer Gruppe mit Zugang) zu Finanzunterlagen von Patienten. Dies liegt normalerweise außerhalb der "Rolle" eines Arztes und sollte diskutiert werden. Daher sollte niemand (egal wie qualifiziert) uneingeschränkten Zugriff auf alle Gruppen haben - dies führt zu Missbrauch an die Macht. Aus diesem Grund ist "Rollentechnik" so wichtig - ohne sie haben Sie nur Gruppenzugriff wie so viel Süßigkeiten. Die Leute sammeln (und manchmal horden) Gruppenzugang, ohne über die Gefahren von zu viel Macht zu diskutieren.
Zusammenfassend lässt sich sagen, dass die Weisheit klar definierter Rollen dazu beiträgt, die Gefahren eines außer Kontrolle geratenen Gruppenzugriffs zu mildern. Jeder in einer Organisation kann sich für den Zugriff auf eine bestimmte Gruppe aussprechen. Aber sobald dieser Zugang bereitgestellt ist, wird er selten aufgegeben. Das Rollen-Engineering (zusammen mit Best Practices wie genau definierten Gruppenbeschreibungen und befugten Gruppenzugriffsmanagern) kann Interessenkonflikte innerhalb eines Unternehmens begrenzen, die Entscheidungsfindung dezentralisieren und das Sicherheitsmanagement rationaler gestalten.
quelle
Die vorherigen Antworten sind alle wunderbar. Wie bereits erwähnt, ist das Konzept von Gruppe gegen Rolle eher konzeptionell als technisch. Wir haben die Haltung vertreten, dass Gruppen verwendet werden, um Benutzer aufzunehmen (ein Benutzer kann in mehr als einer Gruppe sein: dh Joe gehört sowohl zur Manager-Gruppe als auch zur IT-Gruppe [er ist ein Manager in der IT]) und um umfassende Berechtigungen zuzuweisen (dh unser Mag-Kartensystem ermöglicht allen Benutzern in der IT-Gruppe den Zugriff auf den Serverraum). Rollen wurden jetzt verwendet, um bestimmten Benutzern Berechtigungen hinzuzufügen (dh Personen in der IT-Gruppe können RDP an Server senden, aber keine Benutzer zuweisen oder Berechtigungen ändern, Personen in der IT-Gruppe mit der Administratorrolle können Benutzer zuweisen und Berechtigungen ändern). Rollen können auch aus anderen Rollen bestehen (Joe hat die Administratorrolle zum Hinzufügen von Benutzern / Berechtigungen und die DBA-Rolle zum Vornehmen von Datenbankänderungen am DBMS auf dem Server). Rollen können auch sehr spezifisch sein, da wir einzelne Benutzerrollen (dh JoesRole) erstellen können, die für einen Benutzer sehr spezifisch sein können. Zusammenfassend verwenden wir Gruppen, um Benutzer zu verwalten, und weisen allgemeine Rollen und Rollen zu, um Berechtigungen zu verwalten. Dies ist auch kumulativ. Der Gruppe, in der sich der Benutzer befindet, können Rollen zugewiesen sein (oder eine Liste verfügbarer Rollen), die sehr allgemeine Berechtigungen gewähren (dh IT-Gruppenbenutzer haben die Rolle ServerRDP, mit der sie sich bei den Servern anmelden können), sodass sie dem Benutzer zugewiesen werden. Anschließend werden alle Rollen, zu denen der Benutzer gehört, in der Reihenfolge hinzugefügt, in der sie definiert sind, wobei die letzte Rolle das letzte Wort hat (Rollen können Berechtigungen zulassen, verweigern oder nicht anwenden, sodass beim Anwenden jeder Rolle entweder die vorherigen Einstellungen für eine Berechtigung überschrieben werden oder nicht ändern). Sobald alle Rollen auf Gruppenebene und Rollen auf Benutzerebene angewendet wurden,
quelle
Benutzer werden Rollen zugewiesen, basierend auf der Verantwortung, die sie in einem beliebigen System spielen. Beispielsweise können Benutzer in der Rolle Sales Manager bestimmte Aktionen ausführen, z. B. zusätzlichen Rabatt für ein Produkt.
Gruppen werden verwendet, um Benutzer oder Rollen in einem System zu gruppieren, um die Sicherheitsverwaltung zu vereinfachen. Beispielsweise kann eine Gruppe mit dem Namen "Führungsgruppe" Mitglieder aus Rollen, Managern, Direktoren und Architekten sowie einzelnen Benutzern haben, die ebenfalls nicht in diesen Rollen tätig sind. Jetzt sollten Sie dieser Gruppe bestimmte Berechtigungen zuweisen können.
quelle
Zweck von Gruppen und Rollen variieren in den Anwendungen, aber hauptsächlich habe ich Folgendes verstanden: Gruppen (Gruppe von Benutzern) sind statisch, während Rollen (Gruppe von Berechtigungen) dynamisch mit Richtlinien sind, beispielsweise basierend auf der Zeit von (9 bis 6) a Gruppe oder Benutzer können diese Rolle haben, aber nicht diese.
quelle
Sie können der Gruppe eine Rolle zuweisen. Sie können Benutzer einer Gruppe zuweisen und einem einzelnen Benutzer in einem beliebigen Rollenbenutzer eine Rolle zuweisen. Bedeutung. Jean Doe kann sich in der Gruppe "SalesDeptartment" mit der Rolle "ReportWritter" befinden, wodurch unsere Berichte aus SharePoint gedruckt werden können. In der Gruppe "SalesDepartment" haben andere möglicherweise keine Rolle als ReportWritter. - Mit anderen Worten, Rollen sind spezielle Berechtigungen für zugewiesene Gruppen. Hoffe das macht keine Szenen.
Prost!!!
quelle