Autorisierung
Autorisierung ist der Prozess der Überprüfung der Berechtigungen eines Benutzers, um auf bestimmte Ressourcen zuzugreifen oder bestimmte Aktionen innerhalb eines Systems auszuführen, nachdem seine Identität authentifiziert wurde.
Die Autorisierung bestimmt, was ein Benutzer tun darf. Sie folgt der Authentifizierung, die bestätigt, wer der Benutzer ist. Die Autorisierung stützt sich auf Zugriffskontrollmechanismen wie rollenbasierte Zugriffskontrolle (RBAC) oder attributbasierte Zugriffskontrolle (ABAC), um den Zugriff basierend auf vordefinierten Regeln und Richtlinien zu gewähren oder zu verweigern. Dieser Prozess stellt sicher, dass Benutzer nur Zugriff auf die Ressourcen und Funktionalitäten haben, zu deren Nutzung sie berechtigt sind, wodurch die Sicherheit erhöht und unbefugte Aktionen verhindert werden.
graph LR
Center["Autorisierung"]:::main
Pre_authentication["authentication"]:::pre --> Center
click Pre_authentication "/terms/authentication"
Rel_rbac["rbac"]:::related -.-> Center
click Rel_rbac "/terms/rbac"
Rel_authentication["authentication"]:::related -.-> Center
click Rel_authentication "/terms/authentication"
Rel_single_sign_on_sso["single-sign-on-sso"]:::related -.-> Center
click Rel_single_sign_on_sso "/terms/single-sign-on-sso"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧒 Erkläre es wie einem 5-Jährigen
🔑 Autorisierung ist wie ein Bibliothekar, der Ihren Bibliotheksausweis überprüft, um zu sehen, *welche Bücher* Sie ausleihen dürfen, nicht nur, dass Sie Sie sind.
🤓 Expert Deep Dive
``markdown
## Technische Spezifikation: Autorisierung – Tiefgehende Analyse
Autorisierung ist der Prozess der Überprüfung und Durchsetzung von Zugriffsrechten und Berechtigungen für einen authentifizierten Prinzipal (Benutzer, Dienst usw.) für bestimmte Ressourcen und Aktionen. Sie erfolgt nach erfolgreicher Authentifizierung.
### Kernkonzepte
Unterscheidung zur Authentifizierung: Authentifizierung bestätigt die Identität ('wer Sie sind'); Autorisierung definiert zulässige Operationen ('was Sie tun dürfen').
Richtlinienbasierte Entscheidungsfindung: Der Zugriff wird basierend auf der Auswertung vordefinierter Richtlinien im Verhältnis zu Anfragen gewährt oder verweigert.
Granularität von Berechtigungen: Berechtigungen reichen von breiten Rollen bis hin zu feingranularen Aktionen (z. B. Lesen, Schreiben, Löschen, Ausführen) auf spezifischen Ressourcen.
Ressourcen-zentriert vs. Identitäts-zentriert: Autorisierung kann durch die Definition, was Prinzipale auf eine Ressource zugreifen können, oder welche Ressourcen und Aktionen einem Prinzipal erlaubt sind, modelliert werden.
Kontextbezogene Autorisierung: Zugriffsentscheidungen können dynamische Umweltfaktoren (z. B. Zeit, Ort, Gerätehaltung) berücksichtigen.
### Autorisierungsmodelle
Zugriffskontrolllisten (ACLs): Berechtigungen, die an Ressourcen angehängt sind und den Zugriff für Prinzipale festlegen.
Rollenbasierte Zugriffskontrolle (RBAC): Berechtigungen werden Rollen zugewiesen, die dann Benutzern zugewiesen werden. Vereinfacht die Verwaltung.
Attributbasierte Zugriffskontrolle (ABAC): Zugriffsentscheidungen basieren auf Richtlinien, die Attribute des Subjekts, Objekts, der Aktion und der Umgebung auswerten. Hochflexibel.
Richtlinienbasierte Zugriffskontrolle (PBAC): Der Zugriff wird durch explizite, deklarative Richtlinien gesteuert; umfasst oft ABAC.
### Autorisierungsentscheidungslebenszyklus
Policy Enforcement Point (PEP): Fängt Anfragen ab und leitet sie zur Entscheidungsfindung weiter.
Policy Decision Point (PDP): Wertet Richtlinien aus und trifft eine Erlauben/Verweigern-Entscheidung.
Policy Information Point (PIP): Stellt dem PDP Kontext oder Attribute zur Verfügung.
* Policy Administration Point (PAP): Verwaltet Richtlinien.
### Technische Überlegungen
Beinhaltet Datenspeicherung (IAM, Datenbanken), Durchsetzungsmechanismen (API-Gateways, Service Meshes), dynamische vs. statische Autorisierung, Herausforderungen verteilter Systeme (JWTs, Microservices), Skalierbarkeit, Widerruf, Auditierung, das Prinzip der geringsten Rechte und die Trennung von Zuständigkeiten.
### ELI5-Analogie: Das Bibliothekssystem
Authentifizierung ist das Vorzeigen des Ausweises für einen Bibliotheksausweis. Autorisierung ist das, was Ihr Ausweis erlaubt: das Ausleihen von Büchern, den Zugang zu Studierräumen oder die Einsicht in seltene Archive. Der Bibliothekar vergleicht die Berechtigungen Ihres Ausweises mit den Bibliotheksregeln (Richtlinien), um Ihren Zugang zu bestimmen.
``