Gruppe für eine App anlegen¶
Ziel¶
Eine App hat eine neue Rolle als App-Gruppe in Authentik, die richtigen Leute sind darin, und die App bekommt sie beim Login im Claim groups.
Voraussetzungen¶
- du kannst Terraform für Authentik ausführen (Terraform ausführen)
- gelesen: Gruppenmodell in Authentik, Authentik und Terraform
- die App übernimmt Gruppen aus dem Login, hat also ein eigenes Gruppen-Mapping (siehe App per OIDC anbinden, Schritt 4); auf ihrer Seite unter Anwendungen steht unter „Login / SSO“, ob das so ist
Schritte¶
1. Neuesten Stand holen und plan ausführen¶
Wie in Terraform ausführen, Schritt 1 bis 4, im Ordner apps/authentik/tf-groups.
Erwartet: No changes. Your infrastructure matches the configuration.
2. Gruppe eintragen¶
Trag die Gruppe in tf-groups/group_applications.tf in der Liste locals.groups unter dem Namen der App ein, etwa für das DokuWiki:
name ist der Name, den die App im Claim groups bekommt; schreib ihn so, wie die App ihn erwartet.
Gibt es die App in der Liste noch nicht, leg einen neuen Eintrag <app> : [ ... ] an; <app> ist derselbe Name wie application bei ihrer Access-Gruppe.
Optional im selben Eintrag:
is_default_member_group = true, wenn alle neuen Mitglieder in die Gruppe sollen, wie bei{ name = "Vereinsmitglied", is_default_member_group = true }in der Nextcloud- weitere Schlüssel, die die App braucht; aus
quota = "1 GB"wird das Attribut<app>_quota
is_default_member_group gilt nur für neue Mitglieder
Mit true kommen nur Mitglieder in die Gruppe, die sich ab jetzt registrieren.
Alle, die schon ein Konto haben, fügst du in Schritt 4 von Hand hinzu.
Eine Gruppe umbenennen heißt, sie neu anzulegen
Änderst du name einer bestehenden Gruppe, löscht Terraform die alte und legt eine neue an; alle Mitglieder sind dann weg.
Trag dafür zusätzlich moved-Blöcke ein, wie für nextcloud-Willkommensteam in derselben Datei, und prüf in Schritt 3, dass plan nur has moved to und Änderungen zeigt, kein destroy.
3. Ausrollen¶
Wie in Terraform ausführen, Schritt 5 bis 9.
Erwartet bei plan: drei neue Resources je Gruppe, die Gruppe selbst und die beiden Rechte, mit denen die Rolle group-mgmt Leute hinzufügen und entfernen darf:
In Authentik heißt die Gruppe danach „<App> <Name>“, hier „Dokuwiki Werkstattleitung“.
4. Mitglieder zuordnen¶
Füg die Leute in der Admin-Oberfläche von Authentik unter Directory → Groups → „Dokuwiki Werkstattleitung“ → Users hinzu.
Das geht auch mit der eingeschränkten Rolle group-mgmt; volle Admin-Rechte braucht man dafür nicht.
Hat die Gruppe is_default_member_group = true, gilt das auch für alle, die schon ein Konto haben.
5. Rechte in der App einrichten¶
Was die Gruppe in der App darf, legt die App selbst fest, nicht Authentik. Manche Apps legen eine Gruppe beim ersten Login eines Mitglieds selbst an, etwa die Nextcloud; bei anderen musst du ihr in der App erst Rechte geben, etwa im DokuWiki über die Zugriffsrechte (ACL) im Admin-Bereich. Was für die App gilt, steht auf ihrer Seite unter „Login / SSO“.
Prüfen¶
- Ein Konto in der neuen Gruppe meldet sich ab- und wieder an und hat in der App die neue Rolle.
terraform planintf-groupszeigt „No changes“.
Wenn etwas schiefgeht¶
- Die App kennt die Gruppe nicht: Hat sich die Person nach dem Zuordnen neu angemeldet? Die Gruppen kommen nur beim Login an.
Sonst prüf, ob der Name in
locals.groupsunter dem richtigen App-Namen steht, also unter demselben wieapplicationin der Access-Gruppe. - plan will Gruppen löschen und neu anlegen: nicht ausrollen; meist ist der Name einer bestehenden Gruppe geändert, siehe die Warnung in Schritt 2.
- Allgemeines: Authentik-Doku: Groups