docs(issues): #0103 - the curation went into a group that grants nothing
apo reads the wiki now. Checking every other configured user turned up the bigger finding: Authentik has a group wiki-zugang with four members, and Wiki.js does not honour it. Groups map by name, and the wiki only knows wiki-anwender and authentik Admins - so elbojoloco, clark and Boje hold membership that does nothing, while the name promises the opposite. Nobody noticed because none of them ever attempted a login; Wiki.js has exactly two OIDC users. The reason is a leftover: two Authentik applications share the display name "ThreadNet Wiki". The one carrying the wiki-zugang policy has no provider at all - an empty shell from the Docusaurus forward-auth era that ADR-0014 retired. The live wiki-js application carries no policy binding, so it is open to any authenticated user and the whole separation rests on a group assignment nobody looks for there. So the trap cuts both ways: granting wiki-zugang grants nothing, and the real application is ungated at its own layer. Acceptance now also covers retiring the dead shell, resolving wiki-zugang, and the two empty leftover groups. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
36633d3ce9
commit
8ca8a97a06
@@ -87,3 +87,50 @@ sinnvoll, weil sie den Fall „Gruppe später entzogen" abdeckt.
|
|||||||
|
|
||||||
apo in Authentik der Gruppe `wiki-anwender` hinzufügen; greift beim nächsten Login
|
apo in Authentik der Gruppe `wiki-anwender` hinzufügen; greift beim nächsten Login
|
||||||
automatisch, ohne Eingriff im Wiki. Das ist eine Rechtevergabe und liegt bei sorb.
|
automatisch, ohne Eingriff im Wiki. Das ist eine Rechtevergabe und liegt bei sorb.
|
||||||
|
|
||||||
|
## Nachtrag 2026-08-18 — die Kuratierung lief in die falsche Gruppe
|
||||||
|
|
||||||
|
apo ist inzwischen in `wiki-anwender` und liest (Login 17:31 nach der Freigabe).
|
||||||
|
Die Nachprüfung *aller* eingerichteten Nutzer hat aber einen größeren Fund ergeben.
|
||||||
|
|
||||||
|
**Authentik-Stand (gemessen über `ak shell`):**
|
||||||
|
|
||||||
|
| Nutzer | Gruppen | Wirkung im Wiki |
|
||||||
|
|---|---|---|
|
||||||
|
| sorB | `authentik Admins`, `wiki-zugang` | voll |
|
||||||
|
| apo | `wiki-anwender`, `wiki-zugang` | Leser ✓ |
|
||||||
|
| elbojoloco | nur `wiki-zugang` | **keine** |
|
||||||
|
| clark | nur `wiki-zugang` | **keine** |
|
||||||
|
| Boje | — | **keine** |
|
||||||
|
| lucky | — | **keine** |
|
||||||
|
|
||||||
|
Wiki.js bildet Gruppen **über den Namen** ab und kennt nur `wiki-anwender` und
|
||||||
|
`authentik Admins`. `wiki-zugang` (4 Mitglieder) zählt also nicht — obwohl der Name
|
||||||
|
das Gegenteil verspricht. Aufgefallen ist es nie, weil von den vier Betroffenen
|
||||||
|
noch niemand einen Login versucht hat: Wiki.js kennt genau zwei OIDC-Nutzer.
|
||||||
|
|
||||||
|
**Woher `wiki-zugang` kommt — zwei Anwendungen gleichen Namens:**
|
||||||
|
|
||||||
|
- `wiki` („ThreadNet Wiki") hat **keinen Provider** mehr — leere Hülle aus der
|
||||||
|
Docusaurus-/Forward-Auth-Zeit, mit ADR-0014 stillgelegt. **An ihr** hängt die
|
||||||
|
Policy-Bindung auf `wiki-zugang`.
|
||||||
|
- `wiki-js` („ThreadNet Wiki", identischer Anzeigename) ist die lebende Anwendung
|
||||||
|
— **ohne jede Policy-Bindung**, also für jeden authentifizierten Nutzer offen.
|
||||||
|
|
||||||
|
Die Folge ist eine Falle mit zwei Seiten: Wer jemanden zu `wiki-zugang` hinzufügt,
|
||||||
|
erteilt Rechte an einer toten Anwendung und wundert sich, dass nichts passiert.
|
||||||
|
Und die echte Anwendung steht auf ihrer Ebene offen — die gesamte Abschottung hängt
|
||||||
|
an einer Gruppenzuordnung, die dort niemand vermutet. `wiki-admin` und
|
||||||
|
`wiki-betrieb` liegen zusätzlich leer herum, Reste derselben Ablösung.
|
||||||
|
|
||||||
|
**Erweiterte Acceptance:**
|
||||||
|
|
||||||
|
- Es gibt **eine** erkennbare Wiki-Anwendung in Authentik. Die tote `wiki`-Hülle
|
||||||
|
ist entfernt oder eindeutig als stillgelegt benannt — zwei Kacheln mit demselben
|
||||||
|
Namen sind der Kern dieser Verwechslung.
|
||||||
|
- `wiki-zugang` ist aufgelöst oder mit `wiki-anwender` zusammengeführt; niemand
|
||||||
|
bleibt in einer Gruppe zurück, die nichts bewirkt.
|
||||||
|
- Leere Altgruppen (`wiki-admin`, `wiki-betrieb`) sind entfernt oder haben einen
|
||||||
|
benannten Zweck.
|
||||||
|
- Für die vier heute wirkungslos berechtigten Nutzer ist entschieden, wer davon
|
||||||
|
Zugang bekommt (`clark`/`lucky` sind laut #0074 ohnehin Testkonten zum Löschen).
|
||||||
|
|||||||
Reference in New Issue
Block a user