ClickCease Rollenbasierte Zugriffskontrolle | tuxcare.com

Abonnieren Sie unseren beliebten Newsletter

Schließen Sie sich 4.500+ Linux- und Open-Source-Experten an!

2x im Monat. Kein Spam.

Konzepte, die Sie verwenden, ohne sie zu kennen: Die rollenbasierte Zugriffskontrolle

16. Juni 2021. TuxCare PR Team

Willkommen zu unserer neuen Serie über technische Konzepte und Funktionen, die Sie wahrscheinlich jeden Tag nutzen, ohne es zu wissen. Mit dieser Serie möchten wir Ihnen ein tieferes Verständnis dafür vermitteln, wie sich diese Konzepte auf Ihre täglichen Abläufe auswirken und wie Sie die Ihnen zur Verfügung stehenden Werkzeuge optimal nutzen können.

In unserem ersten Artikel geht es um die rollenbasierte Zugriffskontrolle, eine häufig verwendete Methode zur Verwaltung von Anwendungsberechtigungen und des Zugriffs auf Netzwerkressourcen auf der Grundlage der einem Benutzer zugewiesenen Rolle. Sie wird auch als rollenbasierte Sicherheit bezeichnet und ist ein Konzept, das jeder Systemadministrator verstehen sollte.

Was ist eine rollenbasierte Zugriffskontrolle?

Die rollenbasierte Zugriffskontrolle entwickelte sich aus der Notwendigkeit, immer komplexere Zugriffskontrolllisten für eine große Anzahl von Benutzern und Ressourcen zu verwalten. Gehen wir einen Schritt zurück und betrachten wir zunächst die Zugriffskontrolle.

Warum wir eine Zugangskontrolle brauchen

Aus ziemlich offensichtlichen Gründen wollen Systemadministratoren die Möglichkeiten der Benutzer eines Systems einschränken, Aktionen auf diesem System durchzuführen. Wenn wir das Wort Benutzer verwenden, beziehen wir uns sowohl auf menschliche Benutzer als auch auf Anwendungen, die als Benutzer von Diensten agieren.

Die Zugriffskontrolle fungiert als Schicht zwischen Benutzern und Systemen und stellt sicher, dass Systemadministratoren Grenzen setzen können, ohne die Funktionalität vollständig einzuschränken.

Die Zugangskontrolle deckt eine Reihe von Systemen ab - vom Zugang zum Betriebssystem und zu Anwendungen bis hin zum Zugang zu bestimmten Netzwerken, sowohl intern als auch extern. Und ja, in einem ersten Schritt sagt uns die Zugriffskontrolle, ob ein Benutzer auf eine Anwendung, ein System oder ein Netzwerk zugreifen kann - oder ob der Zugriff für diesen Benutzer nicht erlaubt ist.

Bei der Zugriffskontrolle geht es auch um den Grad des Zugriffs, der gewährt wird. Mit anderen Worten, ein Benutzer kann umfassenden Zugang zu einem System haben - z. B. Lese- und Schreibzugriff -, während ein anderer Benutzer nur eingeschränkten Zugang hat - z. B. nur Lesezugriff.

Alle diese Probleme betreffen sowohl das Betriebssystem als auch den Anwendungsbereich. Eine einzelne Anwendung, die mehrere Benutzer unterstützt, wird wahrscheinlich eine Form der Kontrolle darüber erfordern, welche Benutzer welche Aktivitäten durchführen können (oder sie wird sehr schnell aufhören, nützlich zu sein).

Die Notwendigkeit einer erweiterten Zugangsverwaltung

In einfachen Systemen genügt eine einfache Zugriffskontrollliste, die auflistet, welche Benutzer welche Art von Zugriff haben und wo. In der komplexen IT-Umgebung von Unternehmen funktionieren lange Listen mit Zugriffskontrollkriterien jedoch nicht - vor allem angesichts der integrierten Systeme und der Art und Weise, in der Berechtigungen an einer Stelle auch an anderer Stelle weitergegeben werden müssen.

Im Kern handelt es sich bei RBAC um eine Abstraktionsschicht, die Berechtigungen von Benutzern trennt, indem sie das Konzept der "Rollen" einführt, die auch als "Gruppen" bezeichnet werden. Diese scheinbar kleine Änderung ermöglicht eine größere Flexibilität und eine genauere Kontrolle der Berechtigungen. In gewisser Weise führt die rollenbasierte Zugriffskontrolle zu einem gewissen administrativen Mehraufwand, aber im Großen und Ganzen macht RBAC die Zugriffsverwaltung viel einfacher, insbesondere in komplexeren Umgebungen.

Was ist eine Rolle?

Rollen sind für RBAC von zentraler Bedeutung. Genau wie bei Benutzern kann sich eine Rolle auf die Rolle einer Person in der Organisation und damit auf die Systemberechtigungen beziehen, die zur Ausübung dieser Rolle erforderlich sind. Rollen können auch unbelebten Objekten wie Anwendungen oder Diensten, die auf einem Server laufen, zugewiesen werden.

Bei der Zugriffskontrolle legt eine bestimmte Rolle einen bestimmten Satz von Berechtigungen fest. Ein "Redakteur" kann zum Beispiel Artikel auf einer Website lesen und bearbeiten, aber nicht die Website-Einstellungen ändern oder Artikel löschen - dafür ist eine "Administrator"-Rolle erforderlich.

Durch die Verwendung von Rollen können Systemadministratoren sicherstellen, dass Personen, die für ihre Arbeit bestimmte Zugriffsrechte benötigen, diese Rechte gemäß einer festgelegten Vorlage erhalten - wie durch die Rolle definiert. Kommt beispielsweise ein neuer Redakteur ins Unternehmen, kann der Systemadministrator ihm einfach die Standardrolle "Redakteur" zuweisen, ohne dass er die Berechtigungen des neuen Mitarbeiters manuell konfigurieren muss.

Anders ausgedrückt: Nachwuchskräfte - darunter zum Beispiel auch Junior-Systemadministratoren - hätten weniger Zugriffsrechte auf die Systeme eines Unternehmens. Nachwuchskräfte haben nur Zugang zu einer Teilmenge der Unternehmensdaten, und Nachwuchssysadmins haben die Erlaubnis, einige Änderungen an den Systemen vorzunehmen - aber nicht alle.

Außerdem verknüpfen Rollen Berechtigungen mit Ressourcen. Eine Rolle kann also bestimmte Berechtigungen mit bestimmten Ressourcen verknüpfen. Zum Beispiel kann jemand, der in der New Yorker Niederlassung arbeitet, aufgrund seiner NYC-Rolle auf Cloud-basierte Ressourcen zugreifen, die sich auf die Niederlassung in NYC beziehen. Die gleiche Person kann nicht auf Ressourcen für San Francisco zugreifen, es sei denn, ihre Rolle wird aufgrund der Beteiligung an einem Projekt in San Francisco erweitert.

Rollen können auf unglaublich flexible Weise verwendet werden. Bei der Rollenkomposition beispielsweise werden einer Person mehrere Rollen zugewiesen, wobei sie die Berechtigung für alle Rollen erbt. Die Zusammenstellung kann ganz natürlich erfolgen, da Benutzern Rollen zugewiesen werden, die ihrer manchmal komplexen Position innerhalb einer Organisation entsprechen.

RBAC: Zugriffskontrolle über Rollen

Wie das Akronym schon sagt, wendet RBAC eine Zugriffskontrolle an, die auf der einem Benutzer zugewiesenen Rolle oder sogar mehreren Rollen basiert. Es ist eine Verbesserung gegenüber den Standard-Zugangskontrolllisten und natürlich ist RBAC nur ein Modell für die Zugangskontrolle.

Eine Alternative ist die sogenannte attributbasierte Zugriffskontrolle (ABAC), die sich aus der RBAC entwickelt hat. ABAC gewährt den Zugang auf der Grundlage der Attribute des Subjekts (des Benutzers) und der Ressource, auf die zugegriffen wird, sowie einiger anderer Elemente wie der erforderlichen Aktion und der Umgebung, in der die Anfrage gestellt wird.

Wie Sie feststellen, ob Ihr System RBAC verwendet

Die meisten Anwendungen, die mehrere Benutzer unterstützen, verfügen über irgendeine Form der Kontrolle, um festzulegen, welche Benutzer was tun dürfen. Wenn eine Anwendung oder ein System auf Gruppen verweist und wenn Benutzer einer Gruppe hinzugefügt werden, anstatt dass ihnen individuelle Berechtigungen zugewiesen werden, dann verwendet diese Anwendung oder dieses System RBAC. Achten Sie auf Wörter wie Gruppen und Rollen und Sie befinden sich wahrscheinlich in der RBAC-Technologie.

Beispiele für rollenbasierte Zugangskontrolle in der Praxis

Die rollenbasierte Zugangskontrolle ist weit verbreitet. Sie ist einfach zu verwenden und zu implementieren, und Sie finden sie eingebettet in Ihre Technologielösungen, vom Betriebssystem bis hin zu den alltäglichen Anwendungen und Diensten, die Sie nutzen. In diesem Abschnitt werden wir uns einige gängige Beispiele für RBAC ansehen.

Betrachten Sie auf einer einfachen Ebene ein Content-Management-System. Hier müssen die Benutzer in der Lage sein, Inhalte zu verwalten - Artikel zu erstellen und zu bearbeiten, Artikel zu löschen und die Struktur der Website zu bearbeiten. Die Autorenrolle könnte zum Beispiel die Fähigkeit beinhalten, Artikel zu erstellen und zu bearbeiten - aber nicht zu löschen.

Mitarbeiter mit einer Redakteursrolle können zwar Artikel bearbeiten und löschen, aber nicht die Struktur der Website ändern. Die Administratorenrolle wiederum hätte alle Rechte - Erstellen, Bearbeiten, Löschen von Artikeln sowie die Möglichkeit, die Struktur und die Einstellungen der Website zu ändern.

RBAC wird auch häufig als Gatekeeper für Daten verwendet. Nehmen wir zum Beispiel medizinische Daten, bei denen bestimmte medizinische Mitarbeiter mit bestimmten Rollen Zugang zu Patientendaten erhalten - während andere Mitarbeiter möglicherweise nur eine Teilmenge der Daten oder nur die Daten von Patienten sehen können, die sie gerade behandeln.

Kubernetes, die weit verbreitete Containerisierungslösung, verwendet RBAC, um sicherzustellen, dass sowohl menschliche Benutzer als auch Anwendungen den richtigen Zugriff auf einzelne Container und Containergruppen haben.

RBAC spielt auch bei Cloud-Plattformen wie Microsoft Azure eine sehr übergreifende Rolle, wo RBAC den Zugriff auf Azure-Ressourcen und die auf diesen Ressourcen laufenden Anwendungen regelt.

Vorteile der Verwendung von RBAC

Warum sollten Sie RBAC anstelle einer einfachen ACL verwenden? Wir haben einige der Vorteile angedeutet, aber lassen Sie uns einen genaueren Blick auf die Vorteile werfen, die RBAC zu einer so verbreiteten Methode zur Durchsetzung von Rechten machen.

Operative Effizienz

ACLs können diese Aufgabe zwar technisch erfüllen, werden aber schnell schwerfällig und schließlich unbrauchbar, wenn die Komplexität der Berechtigungen zunimmt. Aber selbst bei einfacheren Arbeitslasten leistet RBAC einfach eine bessere Arbeit bei der Verwaltung von Berechtigungen, da Regeln nicht für jeden einzelnen Benutzer festgelegt werden müssen.

Wenn Sie z. B. mit einer ACL allen Benutzern das Drucken auf einem bestimmten Drucker erlauben wollen, müsste diese Änderung für jeden einzelnen Benutzer vorgenommen werden. Mit RBAC fügen Sie den Drucker einfach der entsprechenden Gruppe hinzu.

Das obige ist nur ein einfaches Beispiel - wo RBAC in großen, komplexen Systemen eingesetzt wird, ist die betriebliche Effizienz wirklich skalierbar. Tatsächlich können sehr große Organisationen ohne RBAC einfach nicht funktionieren - sich auf ACLs zu verlassen, wäre einfach nicht praktikabel.

Integration mit anderen Diensten

RBAC mit seinem Katalog von Benutzern, Rollen und Berechtigungen kann auch als Plattform für eine Berechtigungsdatenbank oder einen Verzeichnisdienst dienen. Das bedeutet, dass ein RBAC-basiertes Zugangskontrollsystem problemlos in verschiedene Dienste integriert werden kann.

Mit anderen Worten: Rollen und Benutzerrechte können einzeln abgerufen oder sogar im Ganzen exportiert werden, um dann auf ein völlig anderes System angewendet zu werden, was bedeutet, dass RBAC viele Möglichkeiten für die systemübergreifende Integration bietet.

Verbesserte Kontrolle und Einhaltung der Vorschriften

Wenn RBAC verwendet wird, kann der Administrator die Berechtigungen genauer und häufiger kontrollieren. Berechtigungen können auch flexibler verwaltet werden, was bedeutet, dass die Verwaltung eine strengere Kontrolle über die Berechtigungen ausüben kann.

Vor allem bei groß angelegten Implementierungen können die Berechtigungen mit der Zeit recht "locker" und "übertrieben" werden. RBAC hilft daher, den Zugriff zu straffen, was die Einhaltung von Unternehmensregeln und -richtlinien sowie der allgemeinen Compliance-Vorgaben verbessert. Die Regeln können eng an die Compliance-Anforderungen angepasst werden und lassen sich leichter ändern, wenn sich die Vorschriften ändern.

Rechnungsprüfung und Sichtbarkeit

Im Falle von Unternehmensanwendungen wird RBAC höchstwahrscheinlich auch ausgefeilte Zugriffsprotokolle führen, damit die Administratoren nachvollziehen können, wem welcher Zugriff gewährt wurde, von wem er gewährt wurde und wann er gewährt wurde.

Es bietet einen deutlich besseren Überblick darüber, wie und von wem auf Systeme zugegriffen wird. Darüber hinaus sollten Lösungen, die RBAC verwenden, auch in der Lage sein, Berichte zu exportieren, die Systemadministratoren einen klaren Einblick geben, welche Benutzer welche Art von Berechtigungen haben.

Nachteile der Verwendung von RBAC

Wie bei jedem Ansatz in der Informationstechnologie gibt es auch bei der Verwendung von RBAC einige Nachteile. Erstens gibt es die anfänglichen "Kosten" für die Auswahl von Rollen für Benutzer, wenn ein Benutzer hinzugefügt wird. Wenn man jedoch bedenkt, wie einfach es RBAC macht, rollenbasierte Berechtigungen für diesen Benutzer in der Zukunft zu verbreiten, können diese Kosten als relativ gering angesehen werden. Dies wird in der Regel durch eine Form der Integration mit einem bereits etablierten Business Roster oder einem zentralisierten Identitätsmanagement-Service gelöst.

Ein Problem bei RBAC kann die so genannte Rollenexplosion sein, d. h. es werden immer mehr Rollen geschaffen, um eine wachsende Anzahl von Rollen in der Organisation unterzubringen und immer komplexere Rollen innerhalb der Organisation zu berücksichtigen. Dies kann zu einer großen Komplexität führen, die schwierig zu handhaben ist.

Auch die Einrichtung von RBAC-Rollenstrukturen kann recht zeitaufwändig und komplex sein. Wenn sich eine Organisation verändert, ändert sich auch diese Struktur - was bedeuten kann, dass die Rollenstruktur alle paar Jahre überprüft werden muss.

Aus diesen Gründen sehen einige Leute ABAC als eine verbesserte Alternative an, die besser für hochkomplexe Zugriffs- und Berechtigungsumgebungen geeignet ist.

RBAC einrichten

Eine Möglichkeit, einige der Nachteile von RBAC zu umgehen, besteht darin, mit einer gut strukturierten RBAC-Konfiguration zu beginnen. Hier sind einige Tipps, die Ihnen dabei helfen:

  • Beginnen Sie mit einer gründlichen Katalogisierung. Bevor Sie über Rollen nachdenken, sollten Sie genau wissen, für welche Systeme Sie Berechtigungen festlegen wollen. Denken Sie dabei an Netzwerke bis hin zu den verschiedenen Datenbanken in Ihrem Unternehmen. Es ist wichtig zu wissen, worauf Sie den Zugriff kontrollieren wollen, bevor Sie Ihr Zugriffskontrollsystem entwerfen.
  • Analysieren Sie Ihre Belegschaft. Nehmen Sie Ihre Mitarbeiter genau unter die Lupe und versuchen Sie, klare Rollen zu identifizieren - und sogar überlappende Rollen. Dabei müssen Sie sorgfältig abwägen, ob Sie genügend Rollen schaffen, damit Ihre Berechtigungsstruktur ausreichend granular ist, aber nicht so viele, dass Sie die Vorteile von RBAC durch die Verwendung zu vieler Rollen zunichte machen.
  • Holen Sie Ihre Kollegen ins Boot. Als Nächstes legen Sie den Zugang für Ihre Mitarbeiter entsprechend ihren täglichen Aufgaben fest, indem Sie diese Aufgaben mit Rollen verknüpfen. Es lohnt sich auch, ein gewisses Maß an Schulung für Ihre Mitarbeiter - insbesondere für die Mitarbeiter mit technischen Aufgaben - einzurichten, damit sie die Grundlagen von RBAC verstehen.
  • Verwalten für den Wandel. Der Umgang mit sich ändernden Rollen ist einer der schwierigsten Aspekte von RBAC. Planen Sie bei der Planung Ihres RBAC-Systems ein, wie sich die Rollen in der Zukunft ändern können, und führen Sie regelmäßige Audits durch, um sicherzustellen, dass die von Ihnen konfigurierten Rollen und Berechtigungen immer noch mit der Realität vor Ort übereinstimmen.

Im Wesentlichen hilft Ihnen ein wenig Vorausdenken, RBAC optimal zu nutzen und die Änderungen und Wartungsarbeiten, die Sie in Zukunft vornehmen müssen, zu minimieren.

Schlussfolgerung

RBAC ist eine der Möglichkeiten, mit denen Sie Benutzer und Berechtigungen in Ihren Anwendungen und Systemen verwalten können. Die mit RBAC verbundenen High-Level-Konzepte, einschließlich Benutzer und Gruppen sowie Regeln und Richtlinien, sind technologieübergreifend.

Es lohnt sich zu verstehen, was der Zweck jedes dieser übergreifenden Konzepte ist und wie sie in anderen Bereichen der IT funktionieren. Wenn wir als IT-Fachleute die Grundlagen verstehen, können wir kompetenter mit den komplexeren Themen umgehen.

Möchten Sie das Patchen von Sicherheitslücken ohne Kernel-Neustart, Systemausfallzeiten oder geplante Wartungsfenster automatisieren?

Erfahren Sie mehr über Live-Patching mit TuxCare

Werden Sie ein TuxCare-Gastautor

Los geht's

E-Mail

Beitreten

4,500

Linux & Open Source
Fachleute!

Abonnieren Sie
unseren Newsletter