Zugriffskontrolle: ACL, RBAC und ABAC – wer darf was?
Kurz: Authentifizierung klärt, wer jemand ist, Autorisierung, was die Person darf; gängige Modelle sind Zugriffslisten (ACL), Rollen (RBAC) und regelbasierte Attribute (ABAC).
Genauer: Zwei Fragen werden oft verwechselt: Authentifizierung („Wer bist du?“, Login) und Autorisierung („Was darfst du?“). Für Letzteres braucht jede Anwendung ein Berechtigungsmodell.
Im Detail
ACL: Access Control Lists
Zu jeder Ressource gibt es eine Liste mit Personen/Gruppen und erlaubten Aktionen: datei.txt: Mia (lesen, schreiben), Gruppe Team (lesen). Typisch bei Dateisystemen (NTFS, POSIX-ACLs), Netzwerkgeräten, Cloud-Speichern. Vorteil: sehr feingranular; Nachteil: Bei vielen Ressourcen unübersichtlich.
RBAC: Role-Based Access Control
Rechte werden Rollen zugeordnet, Personen haben Rollen: Admin, Redakteur, Leser. Neue Mitarbeitende bekommen die Rolle statt vieler Einzelrechte; Rechte ändern sich zentral. Weit verbreitet (Datenbanken, Kubernetes, Cloud, CMS). Gefahr: Rollenexplosion (zu viele Spezialrollen) und Rechte-Wildwuchs (schleichende Ansammlung).
ABAC und weitere Modelle
ABAC (Attribute-Based) entscheidet nach Eigenschaften von Benutzer, Ressource, Aktion und Kontext: „Ärzte dürfen Patientenakten ihrer Station lesen, während der Dienstzeit.“ Sehr flexibel, aber komplexer. Dazu ReBAC (beziehungsbasiert: „Eigentümer, Mitglied einer Gruppe“, wie bei Google Drive; Systeme: Zanzibar, OpenFGA, SpiceDB) und Policy-Engines (OPA, Cedar). DAC (Besitzer bestimmt) und MAC (zentrale Sicherheitsstufen, zum Beispiel SELinux) sind klassische Grundmodelle.
Gute Praxis
- Prinzip der geringsten Rechte: Nur das Nötige erlauben, standardmäßig verweigern.
- Immer auf dem Server prüfen, nie nur in der Oberfläche (Button ausblenden reicht nicht).
- Objektebene prüfen: Darf dieser Nutzer genau diesen Datensatz sehen? (Schutz vor IDOR/Broken Access Control, Platz 1 der OWASP Top 10.)
- Trennung der Aufgaben, regelmäßige Rechte-Überprüfung, Protokollierung.
- Berechtigungen zentral und testbar halten, nicht in vielen Einzelfunktionen verstreuen.
Siehe auch: Authentifizierung, Prinzip der geringsten Rechte, OWASP Top 10