Für digitale Services und Dienstleistungen, egal ob Webservice, Shop oder App, ist die Wahl der richtigen Strategie zur Zugriffskontrolle entscheidend für die Absicherung der technischen Ressourcen und damit den Zugriff auf Daten und Funktionen einer Anwendung.
⏱ Lesezeit: 3 Minuten
Was ist rollen- und policybasierte Zugriffskontrolle?
Rollenbasierte Zugriffskontrolle (RBAC) und policy- oder richtlinienbasierte Zugriffskontrolle (PBAC) sind zwei beliebte Ansätze. Aber weißt du auch, wie diese genau aussehen, welche Vorteile sie bieten und für welche Anwendungsfälle sie geeignet sind? Das werden wir hier kurz vorstellen.
RBAC: Rollenbasierte Zugriffskontrolle
Bei RBAC werden Rollen den Nutzenden zugewiesen. Beim Aufruf einer Anwendung werden diese Rollen dann der Anwendung zur Verfügung gestellt. Die Anwendung entscheidet dann aufgrund der Rollen, welche Funktionen und Daten dem Nutzenden bereitgestellt werden.
Die Rolle abstrahiert somit ein Berechtigungsprofil innerhalb der Anwendung. Das vereinfacht die Verwaltung und Administration der Berechtigungen, da z.B. ein Administrator einfach vordefinierte Rollen wie „Manager“ oder „Entwickler“ an Nutzende zuweisen oder entziehen kann.
Vorteile & Anwendungsfälle:
- Vereinfacht das Zugriffsmanagement
- Ideal für Organisationen mit klar definierten Rollen
- Funktioniert gut in hierarchischen Strukturen
- Auswertung der Rolle erfolgt in der Anwendung
PBAC: Policybasierte Zugriffskontrolle
PBAC ist ein dynamischerer und flexiblerer Ansatz, bei dem Zugriffsentscheidungen auf der Grundlage von Richtlinien getroffen werden, die verschiedene Eigenschaften der digitalen Identität, auch zugewiesene Rollen, den Standort oder den Zeitpunkt der Anfrage berücksichtigen. PBAC ist in diesem Sinn eine Kombination aus attributbasierter Zugriffskontrolle (ABAC) und RBAC.
Ein entscheidender Unterschied ist, dass die Auswertung der Policy nicht in der Applikation, sondern im Policyserver stattfindet. Bei der Auswertung wird entschieden, ob ein Nutzender auf die angefragte Ressource in einer Applikation zugreifen darf oder nicht. Diese Entscheidung wird an die Applikation übermittelt, in deren Verantwortung es dann liegt, diese entsprechend umzusetzen.
Das Verschieben des sogenannten Entscheidungspunktes, des Policy Decicison Points (PDP), von der Anwendung auf den Server hat den Vorteil, dass langfristig Änderungekosten in den Anwendungen reduziert werden können. Denn Änderungen an den Berechtigungen lassen sich zentral auf Serverseite umsetzen lassen. Besonders beim Einsatz von Microservices kann das die Notwendigkeit häufiger Änderungen reduzieren. Der Policy Enforcement Point (PEP) verbleibt in der Andwendung.
Die Zentralisierung erhöht ebenfalls die IT-Sicherheit, da die Auswertung der Berechtigungen nicht mehr dezentral in den Anwendungen stattfindet, sondern nur noch an einer zentralen Stelle. Die Anzahl potentiell kompromittierbarer Systeme wird also reduziert.
Die Open Source Software Keycloak bietet beispielsweise mit den Authorization Servies die Möglichkeit, policybasierte Zugriffskontrollen zu implementieren.
Vorteile & Anwendungsfälle:
- Bietet feingranulare Kontrolle
- Passt sich einfach an sich ändernde Geschäftsanforderungen an
- Reduziert Implementierungs- und Wartungskosten in den Anwendungen
- Plus an IT-Sicherheit
RBAC vs. PBAC: Welcher Ansatz ist der richtige?
Beide Ansätze haben ihre Vorzüge, doch die Wahl zwischen RBAC und PBAC hängt von den spezifischen Anforderungen der Organisation oder der Produkte ab. RBAC ist oft besser geeignet für Organisationen bzw. Produkten mit klar definierten Rollen und einer hierarchischen Struktur. Im Gegensatz dazu bietet PBAC größere Flexibilität und eignet sich besser für Organisationen und Produkte mit komplexen Zugriffsanforderungen oder solche, die sich an verändernde Geschäftsbedingungen anpassen müssen.