Doku: Supabase-Admin-Setup klarer (Dialog-Output + README Abschnitt 5)

- Tool legt Admin-User nicht an -> Schritt-für-Schritt: User in Supabase
  (Auth → Users → Add user, Auto Confirm) + E-Mail in ADMIN_ALLOWED_EMAILS
- Deploy-Output zeigt Login-Vorbedingungen
- Hinweis auf optionalen Self-Service-Signup

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-02 02:34:46 +02:00
parent 1d3818e725
commit 4f0f7e62f1
2 changed files with 26 additions and 13 deletions
+18 -13
View File
@@ -142,22 +142,27 @@ Die Web-Ports **80/443** gehen an den **Nginx Proxy Manager**, nicht direkt an d
--- ---
## 5. Supabase-Login einrichten (Admin-UI) ## 5. Supabase-Login einrichten (Admin-UI) ← WICHTIG vor dem ersten Login
Die Admin-UI nutzt Supabase-Auth (wie OPENBUREAU): Die Admin-UI nutzt **Supabase-Auth** (wie OPENBUREAU). **Das Tool legt den Admin-User NICHT
selbst an** — du erstellst ihn einmalig im Supabase-Dashboard. Schritt für Schritt:
1. In deinem Supabase-Projekt unter **Authentication → Users** einen Benutzer mit deiner E-Mail anlegen (oder Einladung). 1. **Supabase-Projekt** (falls noch keins): [supabase.com](https://supabase.com) → New Project (Free-Tier reicht).
2. Diese E-Mail muss in `ADMIN_ALLOWED_EMAILS` stehen (in `/opt/dms-stack/.env`). 2. **Keys holen**: Project Settings → **API**
3. `SUPABASE_URL` und `SUPABASE_ANON_KEY` in `.env` müssen gesetzt sein. - `Project URL` → das ist `SUPABASE_URL`
- `anon` `public` Key → das ist `SUPABASE_ANON_KEY`
3. **Admin-User anlegen**: Authentication → **Users****Add user**
- E-Mail + Passwort eintragen, **„Auto Confirm User"** aktivieren (sonst braucht's eine Bestätigungsmail).
4. **Diese E-Mail** muss in `ADMIN_ALLOWED_EMAILS` stehen (Deploy-Dialog bzw. `/opt/dms-stack/.env`).
5. Werte gesetzt? `cd /opt/dms-stack && docker compose up -d && docker compose restart admin-ui admin-api`.
6. **Login**: `https://admin.<domain>` → mit dieser E-Mail + Passwort einloggen.
Änderungen an der `.env` aktiv machen: > Nur E-Mails aus `ADMIN_ALLOWED_EMAILS` erhalten Zugriff — alle anderen Supabase-User werden mit 403 abgewiesen.
```bash >
cd /opt/dms-stack > **Alternative (Self-Service):** In Supabase unter Authentication → Providers → Email **„Enable Signup"**
docker compose up -d # liest .env neu (UI/-API neu starten) > aktivieren; dann kann sich die erlaubte E-Mail über die Login-Seite selbst registrieren. (Standard: aus.)
docker compose restart admin-ui admin-api >
``` > Weitere Admins später: einfach in Supabase als User anlegen **und** die E-Mail in `ADMIN_ALLOWED_EMAILS` ergänzen.
> Nur E-Mails aus `ADMIN_ALLOWED_EMAILS` erhalten Zugriff — alle anderen Supabase-User werden von der API mit 403 abgewiesen.
--- ---
+8
View File
@@ -418,6 +418,14 @@ ${GN}╔════════════════════════
${RD}Rspamd-Web-UI-Passwort:${CL} ${RSPAMD_PASSWORD} ${RD}Rspamd-Web-UI-Passwort:${CL} ${RSPAMD_PASSWORD}
(steht auch in ${DEPLOY_DIR}/docker-data/dms/config/rspamd/override.d/worker-controller.inc) (steht auch in ${DEPLOY_DIR}/docker-data/dms/config/rspamd/override.d/worker-controller.inc)
${YW}── Admin-Login (Supabase) — VOR dem ersten Login nötig ──${CL}
Das Tool legt den Admin-User NICHT an. Einmalig im Supabase-Dashboard:
1) Authentication → Users → Add user: eine deiner Admin-E-Mails + Passwort, „Auto Confirm" an
(aktuell erlaubt: ${ADMIN_ALLOWED_EMAILS:-<noch nicht gesetzt>})
2) SUPABASE_URL/ANON_KEY müssen in ${DEPLOY_DIR}/.env stehen${SUPABASE_URL:+ ✔}
3) dann: cd ${DEPLOY_DIR} && docker compose up -d && docker compose restart admin-ui admin-api
Details: README, Abschnitt 5.
${YW}── DNS: einmal für den Mailhost ──${CL} ${YW}── DNS: einmal für den Mailhost ──${CL}
A-Record: ${MAIL_FQDN}. IN A <öffentliche IP> A-Record: ${MAIL_FQDN}. IN A <öffentliche IP>