Wikipedia · einfach zusammengefasst · Stand
Role Based Access Control
Role Based Access Control (RBAC; deutsch: Rollenbasierte Zugriffskontrolle) ist in Mehrbenutzersystemen oder Rechnernetzen ein Verfahren sowie ein …
Inhalt6 Abschnitte
Kernidee
Role Based Access Control (RBAC), auf Deutsch rollenbasierte Zugriffskontrolle, ist ein Verfahren und Entwurfsmuster zur Steuerung von Zugriffsrechten in Mehrbenutzersystemen oder Rechnernetzen. Es regelt, welche Benutzer auf Dateien, Dienste oder andere Betriebsmittel zugreifen dürfen. Das Modell wurde 1992 von David F. Ferraiolo und D. Richard Kuhn beschrieben und 2004 als ANSI-Norm 359-2004 verabschiedet.
RBAC ist wichtig, weil die direkte Vergabe einzelner Rechte an jeden realen Benutzer bei vielen Benutzern schnell unübersichtlich und fehleranfällig wird. Stattdessen werden Rechte über Rollen organisiert. Eine Rolle beschreibt dabei eine Aufgabe oder Funktion innerhalb eines Arbeitsprozesses. Dadurch sollen Berechtigungen übersichtlicher, einheitlicher und besser kontrollierbar werden.
Aufbau des Modells
Bei RBAC werden Benutzern eines Computers oder Netzwerks Rollen zugeordnet. Ein Benutzer kann mehrere Rollen besitzen. An eine Rolle können 1 bis n Gruppenzugehörigkeiten gebunden sein. Je nachdem, welche Rolle einem Benutzer zugeordnet ist und welche Gruppen damit verbunden sind, erteilt oder sperrt das System den Zugriff auf Betriebsmittel.
Typische Zugriffsrechte, die mit RBAC kontrolliert werden, sind Lesen, Schreiben und Ausführen von Dateien. Das Verfahren ist aber nicht auf Dateien beschränkt, sondern kann auch für Dienste und andere Ressourcen verwendet werden.
Eine Gruppe ist bei RBAC nicht zwingend dasselbe wie eine Rolle. Eine Rolle beschreibt, in welcher Aufgabe ein Benutzer auf ein System zugreift. Eine Gruppe ist dagegen eine technische oder organisatorische Zuordnung, an die bestimmte Rechte gebunden sein können. Durch die dreistufige Gliederung in Benutzer, Rollen und Gruppen lassen sich Zugriffsrechte über Rollenzuordnungen und daran gebundene Gruppenzuordnungen steuern.
Rollen und Mehrfachaufgaben
Das Modell berücksichtigt, dass eine Person mehrere Aufgaben übernehmen kann. Im IT-Sprachgebrauch werden Rollen zum Beispiel mit Bezeichnungen wie Webmaster, Postmaster, Newsmaster, Netzwerkadministrator oder Systemadministrator beschrieben. Dabei müssen das nicht verschiedene Personen sein: Dieselbe Person kann etwa als Webmaster Webseiten aktualisieren, als Postmaster Beschwerden über ein offenes Mail-Relay lesen und als Systemadministrator Software installieren.
Für diese unterschiedlichen Aufgaben können jeweils unterschiedliche Zugriffsrechte nötig sein. Deshalb kann ein Benutzer mehr als eine Rolle haben und über diese Rollen auch mehr als einer Gruppe zugeordnet werden. RBAC trennt also die reale Person von den Aufgaben, die sie gerade ausführt, und von den technischen Rechten, die dafür benötigt werden.
Verwaltung mit Identitätsmanagement
Für die Verwaltung der Zuordnungen werden in der Regel Identitätsmanagement-Systeme, kurz IDM-Systeme, eingesetzt. Ein IDM-System verwaltet Benutzer, Rollen und Gruppen zentral. Es kann Benutzer über mindestens eine Rolle jeweils 1 bis n Gruppen in 1 bis n Computersystemen zuordnen.
Eine Voraussetzung dafür ist ein einheitliches Nutzer-Rollenkonzept. Das bedeutet, dass klar festgelegt wird, welche Rollen es gibt und welche Rechte oder Gruppen zu ihnen gehören. IDM-Systeme können außerdem helfen, IT-Sicherheitsvorgaben einzuhalten. Dazu vergleichen sie in konfigurierbaren Zeitabständen die Gruppenzugehörigkeiten eines Benutzers in 1 bis n Computersystemen mit den Rollendefinitionen im Regelwerk des IDM-Systems.
Wenn eine Abweichung festgestellt wird, spricht man von Non-Compliance. Das IDM-System kann diese Abweichung bei Bedarf korrigieren und dadurch Zugriffskonsistenz sicherstellen, also dafür sorgen, dass die tatsächlichen Berechtigungen zu den definierten Rollen passen.
Einsatz und Beispiele
Die Nutzung von RBAC zur Verwaltung von Benutzerrechten wird weitgehend als bestes Verfahren angesehen. Das Modell ist in vielen Systemen in unterschiedlichen Ausprägungen umgesetzt.
Beispiele aus dem Artikel sind Microsoft Active Directory, Microsoft SQL Server, SELinux, grsecurity, FreeBSD, Solaris, Oracle RDBMS, PostgreSQL 8.1, SAP R/3, FusionForge und Kubernetes. Diese Systeme verwenden jeweils eine Form des RBAC-Modells, um Zugriffe auf Ressourcen zu steuern.
Verwandte Konzepte
Mit RBAC verwandt sind weitere Modelle der Zugriffskontrolle. Eine Access Control List ist eine Liste, die festlegt, welche Benutzer oder Gruppen welche Rechte an einem Objekt haben. Attributbasierte Zugriffskontrolle nutzt Attribute, also Eigenschaften von Benutzern, Ressourcen oder Situationen, für Zugriffsentscheidungen.
Discretionary Access Control und Mandatory Access Control sind weitere Zugriffsmodelle. Sie werden im Artikel nur als verwandte Begriffe genannt, ohne näher erläutert zu werden.