Autorisierung (Authorization)
Autorisierung (Authorization) in Logto definiert, was Benutzer und Apps nach der Authentifizierung tun dürfen: welche APIs, Ressourcen oder Aktionen für jede Identität erlaubt sind.
Logto bietet flexible, tokenbasierte Autorisierung für moderne SaaS- und KI-Anwendungen. Du kannst API-Ressourcen global oder im Kontext jeder Organisation schützen. Alle Berechtigungen werden über ein rollenbasiertes Zugangskontrollsystem (RBAC) verwaltet, mit erweiterten Funktionen für Multi-Tenant-Anwendungen durch Organisationstemplates.
Zentrale Konzepte
- Rollenbasierte Zugangskontrolle (RBAC): Logto verwendet RBAC als Grundlage für die Zuweisung von Berechtigungen an Benutzer, Clients und Dienste. Mehr über RBAC erfahren.
- API-Ressource: Jeder Backend-Dienst oder Endpunkt, den du schützen möchtest (global oder organisationsspezifisch).
- Rolle (Role): Eine Gruppe von Berechtigungen (z. B. Admin, Betrachter, Editor).
- Berechtigung (scope): Eine spezifisch erlaubte Aktion (z. B.
read:report
,invite:member
). - Organisation (Organization): Stellt einen Mandanten, Arbeitsbereich oder Kunden in deiner Anwendung dar. Dies unterscheidet sich vom Logto-Tenant, der sich auf dein gesamtes Logto-Projekt oder deine Instanz bezieht.
- Organisationstemplate (Organization template): Für Multi-Tenant-Anwendungen definiere ein wiederverwendbares Set von Rollen und Berechtigungen, das für alle Organisationen gilt. Sieh dir an, wie Organisationstemplates funktionieren.
- Zugangstoken (Access token) / Organisationstoken (Organization token): Tokens, die Ansprüche für globale oder organisationsbezogene Berechtigungen enthalten.
Autorisierungsszenarien
Es gibt drei Hauptmuster für die Autorisierung in Logto. Wähle das Szenario, das zu deinen Anforderungen passt:
Szenario | Wann verwenden | Token-Typ | Rollenkonfiguration | Mehr erfahren |
---|---|---|---|---|
Globale API-Ressourcenberechtigungen | Schütze API-Ressourcen, die in deinem gesamten Logto-Tenant geteilt werden (nicht organisationsspezifisch) | Zugangstoken | Globale Rollen/Berechtigungen zuweisen | Globale API-Ressourcen schützen |
Organisations-(Nicht-API)-Berechtigungen | Steuere organisationsspezifische Aktionen, UI-Features oder Geschäftslogik (keine APIs) | Organisationstoken | Organisationsrollen/Berechtigungen für App-Steuerungen zuweisen | Organisations-(Nicht-API)-Berechtigungen schützen |
Organisationsbezogene API-Ressourcenberechtigungen | Schütze API-Ressourcen, die innerhalb einer bestimmten Organisation zugänglich sind | Organisationstoken | Organisationsrollen/Berechtigungen für Organisations-APIs zuweisen | Organisationsbezogene API-Ressourcen schützen |
Logto modelliert API-Ressourcen gemäß RFC 8707 und verwendet den resource
-Parameter in OAuth 2.0-Autorisierungsflüssen. Das macht es einfach, mehrere APIs oder Microservices abzusichern und stellt die Kompatibilität mit anderen standardbasierten Systemen sicher.
Benötigst du benutzerdefinierte Ansprüche oder erweiterte Zugangskontrolle? Siehe Benutzerdefinierte Token-Ansprüche.
Wie die Logto-Autorisierung funktioniert
-
Tokenbasiert: Jeder Zugriff wird über ein sicheres, signiertes Zugangstoken gewährt. Dein Backend validiert das Token und erzwingt Berechtigungen (Scopes).
-
Globale vs. organisationsbezogene Berechtigung (scope):
- Globale Berechtigung (scope): Steuert den Zugriff auf API-Ressourcen in deinem gesamten Logto-Tenant.
- Organisationsbezogene Berechtigung (scope): Steuert sowohl Geschäftslogik (App-Features) als auch API-Ressourcen im Kontext einer Organisation. Organisationsberechtigungen können für Nicht-API-Features (wie UI-Elemente oder Workflows) und/oder organisationsspezifische API-Endpunkte gelten.
-
Rollen und Berechtigungen (Scopes): Rollen sind Sammlungen von Berechtigungen (Scopes). Weise Rollen Benutzern oder Clients global oder innerhalb einer Organisation zu, je nach deinem Szenario.
Nächste Schritte
Bereit für mehr? Starte praktisch, entdecke praxisnahe Anleitungen oder vertiefe dein Verständnis:
Beherrsche Rollen und Berechtigungen für fein abgestufte Zugangskontrolle.
Lerne, wie du wiederverwendbare Rollen und Berechtigungen für Multi-Tenant-Anwendungen einrichtest.
Sichere APIs, die in deinem Logto-Tenant geteilt werden, mit globalen Rollen und Berechtigungen.
Steuere organisationsspezifische Aktionen und UI-Features mit Organisationsrollen.
Sichere APIs, die innerhalb einer bestimmten Organisation zugänglich sind, mit Organisationsrollen.
Lerne, wie du Logto-Tokens in deinem Backend verifizierst, um APIs abzusichern.
Lerne, wie du benutzerdefinierte Ansprüche für erweiterte Zugangskontrollszenarien hinzufügst.
Anwendungsfälle
Suchst du nach praktischen Beispielen und realen Szenarien? Schau dir diese Anleitungen an:
Sieh dir ein Schritt-für-Schritt-Beispiel für sichere Autorisierung mit RBAC an.
Folge einem umfassenden Leitfaden zur Multi-Tenant-SaaS-Architektur und -Implementierung.
Weiterführende Lektüre
RBAC und ABAC: Die Zugangskontrollmodelle, die du kennen solltest
Wann sollte ich JWTs verwenden? API-Autorisierungsmethoden