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).
2. Diese E-Mail muss in `ADMIN_ALLOWED_EMAILS` stehen (in `/opt/dms-stack/.env`).
3. `SUPABASE_URL` und `SUPABASE_ANON_KEY` in `.env` müssen gesetzt sein.
1. **Supabase-Projekt** (falls noch keins): [supabase.com](https://supabase.com) → New Project (Free-Tier reicht).
2. **Keys holen**: Project Settings → **API**
- `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:
```bash
cd /opt/dms-stack
docker compose up -d # liest .env neu (UI/-API neu starten)
docker compose restart admin-ui admin-api
```
> Nur E-Mails aus `ADMIN_ALLOWED_EMAILS` erhalten Zugriff — alle anderen Supabase-User werden von der API mit 403 abgewiesen.
> Nur E-Mails aus `ADMIN_ALLOWED_EMAILS` erhalten Zugriff — alle anderen Supabase-User werden mit 403 abgewiesen.
>
> **Alternative (Self-Service):** In Supabase unter Authentication → Providers → Email **„Enable Signup"**
> aktivieren; dann kann sich die erlaubte E-Mail über die Login-Seite selbst registrieren. (Standard: aus.)
>
> Weitere Admins später: einfach in Supabase als User anlegen **und** die E-Mail in `ADMIN_ALLOWED_EMAILS` ergänzen.
---
+8
View File
@@ -418,6 +418,14 @@ ${GN}╔════════════════════════
${RD}Rspamd-Web-UI-Passwort:${CL} ${RSPAMD_PASSWORD}
(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}
A-Record: ${MAIL_FQDN}. IN A <öffentliche IP>