Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,20 @@ sidebar_position: 7

# Zugriffskontrolle auf App-Ebene

Die Zugriffskontrolle auf App-Ebene ermöglicht es dir, einzuschränken, wer sich bei einer bestimmten Anwendung anmelden darf. Anstatt jedem registrierten Benutzer in deinem Logto-Tenant den Zugriff auf jede App zu erlauben, kannst du für jede Anwendung Zulassungsregeln basierend auf Benutzern, Benutzerrollen, Organisationen oder Organisationsrollen erstellen.
Die Zugriffskontrolle auf App-Ebene ermöglicht es dir, einzuschränken, wer sich bei einer bestimmten Anwendung anmelden darf. Anstatt jedem registrierten Benutzer in deinem Logto-Mandanten Zugriff auf jede App zu gewähren, kannst du für jede Anwendung Zulassungsregeln auf Basis von Benutzern, Benutzerrollen, Organisationen oder Organisationsrollen erstellen.

Verwende die Zugriffskontrolle auf App-Ebene, wenn du:
Verwende die Zugriffskontrolle auf App-Ebene, wenn du Folgendes erreichen möchtest:

- Eine interne App nur für Mitarbeitende oder Admins verfügbar machen möchtest.
- Eine [geschützte App](/integrate-logto/protected-app) auf eine ausgewählte Benutzergruppe beschränken möchtest.
- Nur bestimmten Kunden oder Partnern den Zugriff auf eine [Drittanbieter-OIDC / OAuth-Anwendung](/integrate-logto/third-party-applications) erlauben möchtest.
- Eine neue Anwendung zunächst einer Pilotgruppe bereitstellen möchtest, bevor sie allen zur Verfügung steht.
- Eine interne App nur für Mitarbeitende oder Admins verfügbar machen.
- Eine [geschützte App](/integrate-logto/protected-app) auf eine ausgewählte Benutzergruppe beschränken.
- Nur bestimmten Kunden oder Partnern den Zugriff auf eine [Drittanbieter OIDC / OAuth Anwendung](/integrate-logto/third-party-applications) erlauben.
- Eine neue Anwendung zunächst einer Pilotgruppe bereitstellen, bevor sie für alle geöffnet wird.

## Funktionsweise \{#how-it-works}

Wenn die Zugriffskontrolle auf App-Ebene deaktiviert ist, können sich alle registrierten Benutzer in deinem Logto-Tenant bei der Anwendung anmelden.
Wenn die Zugriffskontrolle auf App-Ebene deaktiviert ist, können sich alle registrierten Benutzer in deinem Logto-Mandanten bei der Anwendung anmelden.

Wenn sie aktiviert ist, kann ein Benutzer die Anwendung nur nutzen, wenn er mindestens einer konfigurierten Regel entspricht. Entspricht der Benutzer keiner Regel, verweigert Logto den Anmeldeversuch und zeigt eine Zugriffsverweigerungsseite an, bevor die Anwendung Tokens erhält.
Wenn sie aktiviert ist, kann ein Benutzer nur dann auf die Anwendung zugreifen, wenn er mindestens einer konfigurierten Regel entspricht. Entspricht der Benutzer keiner Regel, verweigert Logto den Anmeldeversuch und zeigt eine Zugriffsverweigerungsseite an, bevor die Anwendung Tokens erhält.

Die Zugriffskontrolle auf App-Ebene wird während des Autorisierungsflusses und der Token-Erneuerung ausgewertet. Das bedeutet:

Expand All @@ -28,7 +28,7 @@ Die Zugriffskontrolle auf App-Ebene wird während des Autorisierungsflusses und
- Das Aktualisieren von Regeln wirkt sich auf zukünftige Autorisierungs- und Token-Erneuerungsprüfungen aus, ohne die globale Logto-Sitzung des Benutzers zu verändern.

:::note
Die Zugriffskontrolle auf App-Ebene ist getrennt von der rollenbasierten Zugangskontrolle (RBAC). RBAC steuert, was ein Benutzer nach der Authentifizierung tun kann, indem Berechtigungen (Scopes) in Zugangstokens ausgegeben werden. Die Zugriffskontrolle auf App-Ebene steuert, ob ein Benutzer überhaupt auf eine bestimmte Anwendung zugreifen darf.
Die Zugriffskontrolle auf App-Ebene ist getrennt von der [rollenbasierten Zugangskontrolle (RBAC)](/authorization/role-based-access-control). RBAC steuert, was ein Benutzer nach der Authentifizierung tun kann, indem Berechtigungen (Berechtigungen) in Zugangstokens ausgegeben werden. Die Zugriffskontrolle auf App-Ebene steuert, ob ein Benutzer überhaupt auf eine bestimmte Anwendung zugreifen darf.
:::

## Regeltypen \{#rule-types}
Expand All @@ -38,13 +38,13 @@ Du kannst die folgenden Zulassungsregeln konfigurieren:
| Regeltyp | Was erlaubt wird |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------ |
| **Benutzer** | Bestimmte Benutzer können auf die Anwendung zugreifen. |
| **Benutzerrollen** | Benutzern, denen ausgewählte Benutzerrollen zugewiesen sind, wird der Zugriff auf die Anwendung erlaubt. |
| **Benutzerrollen** | Benutzern, denen ausgewählte Benutzerrollen zugewiesen sind, können auf die Anwendung zugreifen. |
| **Organisationen** | Alle aktuellen und zukünftigen Mitglieder ausgewählter Organisationen können auf die Anwendung zugreifen. |
| **Organisationsrollen** | Mitglieder mit ausgewählten Organisationsrollen in ausgewählten Organisationen können auf die Anwendung zugreifen. |

Regeln sind additiv. Ein Benutzer muss nur einer Regel entsprechen, um auf die Anwendung zugreifen zu können.

Beispiel: Wenn eine Anwendung sowohl eine Benutzerrollen-Regel „Support-Team“ als auch eine Organisationsrollen-Regel „BigTree - Admin“ hat, kann ein Benutzer auf die Anwendung zugreifen, wenn er entweder die Rolle Support-Team hat oder Admin in der Organisation BigTree ist.
Beispiel: Wenn eine Anwendung sowohl eine Benutzerrollenregel „Support-Team“ als auch eine Organisationsrollenregel „BigTree - Admin“ hat, kann ein Benutzer auf die Anwendung zugreifen, wenn er entweder die Rolle Support-Team zugewiesen bekommen hat oder Admin in der Organisation BigTree ist.

## Zugriffskontrolle auf App-Ebene konfigurieren \{#configure-app-level-access-control}

Expand All @@ -62,15 +62,15 @@ Beispiel: Wenn eine Anwendung sowohl eine Benutzerrollen-Regel „Support-Team
8. Klicke auf **Änderungen speichern**.

:::important
Du musst mindestens eine Zulassungsregel konfigurieren, bevor du die Zugriffskontrolle aktivierst. So wird verhindert, dass die Zugriffskontrolle versehentlich aktiviert wird, ohne dass Benutzer Zugriff auf die Anwendung haben.
Du musst mindestens eine Zulassungsregel konfigurieren, bevor du die Zugriffskontrolle aktivierst. So wird verhindert, dass versehentlich die Zugriffskontrolle aktiviert wird, ohne dass Benutzer Zugriff auf die Anwendung haben.
:::

## Regeln bearbeiten oder entfernen \{#edit-or-remove-rules}

Du kannst die Zulassungsliste im Tab **Regeln** der Anwendung aktualisieren.

- Um weitere Regeln hinzuzufügen, klicke unterhalb der Regel-Tabelle auf **Weitere hinzufügen**.
- Um eine Regel zu entfernen, klicke auf die Löschtaste in der Regelzeile und bestätige die Aktion.
- Um eine Regel zu entfernen, klicke auf die Löschen-Schaltfläche in der Regelzeile und bestätige die Aktion.
- Nach dem Hinzufügen oder Entfernen von Regeln klicke auf **Änderungen speichern**, um die Aktualisierung zu übernehmen.

Wenn die Zugriffskontrolle aktiviert ist, verlangt Logto, dass mindestens eine Regel konfiguriert bleibt. Um alle Regeln zu entfernen, deaktiviere zuerst **Zugriffskontrolle aktivieren** und speichere dann die Änderungen.
Expand All @@ -82,7 +82,7 @@ Die Zugriffskontrolle auf App-Ebene beendet nicht die globale Logto-Sitzung des
Für die eingeschränkte Anwendung gilt:

- Ein Benutzer, der keiner Zulassungsregel mehr entspricht, wird beim nächsten Durchlaufen des Autorisierungsflusses der Anwendung blockiert.
- Wenn der Benutzer bereits App-bezogene Berechtigungen hat, prüft Logto die Regeln erneut, wenn die Anwendung ein Auffrischungstoken verwendet, um neue Tokens anzufordern. Hat der Benutzer keinen Zugriff mehr, verweigert Logto die Token-Anfrage.
- Wenn der Benutzer bereits anwendungsbezogene Berechtigungen hat, prüft Logto die Regeln erneut, wenn die Anwendung ein Auffrischungstoken verwendet, um neue Tokens anzufordern. Hat der Benutzer keinen Zugriff mehr, verweigert Logto die Token-Anfrage.

So bleiben Zugriffsentscheidungen an die Anwendung gebunden, ohne andere Anwendungen unnötig zu beeinträchtigen.

Expand All @@ -91,20 +91,24 @@ So bleiben Zugriffsentscheidungen an die Anwendung gebunden, ohne andere Anwendu
Für [Drittanbieter-Anwendungen](/integrate-logto/third-party-applications) lösen Zugriffskontrolle auf App-Ebene und Berechtigungsmanagement unterschiedliche Probleme:

- **Zugriffskontrolle auf App-Ebene** bestimmt, ob ein Benutzer sich bei der Drittanbieter-Anwendung anmelden darf.
- **Berechtigungsmanagement** bestimmt, welche Benutzerprofil-Scopes, API-Ressourcen-Scopes und Organisations-Scopes die Drittanbieter-Anwendung auf dem Zustimmungsbildschirm anfordern darf.
- **Berechtigungsmanagement** bestimmt, welche Benutzerprofil-Berechtigungen, API-Ressourcen-Berechtigungen und Organisations-Berechtigungen die Drittanbieter-Anwendung auf dem Zustimmungsbildschirm anfordern darf.

Wenn beides konfiguriert ist, muss der Benutzer zuerst die Zugriffskontrolle auf App-Ebene bestehen, bevor er die Drittanbieter-Anwendung autorisieren kann.

:::note
Die Zugriffskontrolle auf App-Ebene gilt nur für registrierte Anwendungen. [Dynamische App](/integrate-logto/third-party-applications/dynamic-apps) Clients haben keinen Anwendungsdatensatz und können daher nicht auf diese Weise eingeschränkt werden. Ihr Zugriff wird durch die Berechtigungen begrenzt, die du der dynamischen App gewährst, sowie durch die Zustimmung des Benutzers.
:::

## Beziehung zur geschützten App \{#relationship-with-protected-app}

Für die [geschützte App](/integrate-logto/protected-app) beschränkt die Zugriffskontrolle auf App-Ebene, wer die Logto-Authentifizierungsschicht passieren und den geschützten Origin-Server erreichen darf.
Für [geschützte Apps](/integrate-logto/protected-app) beschränkt die Zugriffskontrolle auf App-Ebene, wer die Logto-Authentifizierungsschicht passieren und den geschützten Origin-Server erreichen darf.

Die Authentifizierungsregeln der geschützten App bestimmen weiterhin, welche Routen eine Authentifizierung erfordern. Die Zugriffskontrolle auf App-Ebene legt fest, welche authentifizierten Logto-Benutzer auf die geschützte App zugreifen dürfen.
Die Authentifizierungsregeln der geschützten App bestimmen weiterhin, welche Routen eine Authentifizierung erfordern. Die Zugriffskontrolle auf App-Ebene legt fest, welche authentifizierten Logto-Benutzer auf die geschützte App-Anwendung zugreifen dürfen.

## Best Practices \{#best-practices}

- Beginne nach Möglichkeit mit Benutzerrollen- oder Organisationsrollen-Regeln. Sie sind leichter zu pflegen als lange Listen einzelner Benutzer.
- Verwende Organisationsregeln, wenn alle Mitglieder einer Organisation auf die App zugreifen sollen.
- Verwende Organisationsrollen-Regeln, wenn nur bestimmte Mitglieder einer Organisation auf die App zugreifen sollen.
- Überprüfe die Zugriffsregeln, wenn Benutzer Rollen wechseln, Organisationen beitreten oder Organisationen verlassen.
- Halte RBAC-Berechtigungen und Zugriffskontrolle auf App-Ebene in deinem mentalen Modell getrennt: Die Zugriffskontrolle auf App-Ebene beantwortet „Kann dieser Benutzer auf diese App zugreifen?“, während RBAC beantwortet „Was kann dieser Benutzer nach dem Zugriff auf APIs oder Organisationsfunktionen tun?“
- Halte RBAC-Berechtigungen und Zugriffskontrolle auf App-Ebene in deinem mentalen Modell getrennt: Zugriffskontrolle auf App-Ebene beantwortet „Kann dieser Benutzer auf diese App zugreifen?“, während RBAC beantwortet „Was kann dieser Benutzer nach dem Zugriff auf APIs oder Organisationsfunktionen tun?“
Loading
Loading