Forgejo für Sveltia CMS unter mt-rad.de anpassen (OAuth / CORS) #16
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Damit das Sveltia-Panel unter
https://mt-rad.de/admin/mit dem Forgejo-Backend funktioniert, muss die Forgejo-Seite passend konfiguriert sein.Ziel
https://mt-rad.de/admin/…bzw. die von Sveltia erwartete Callback-URL) ergänzen/anlegen;app_idinstatic/admin/config.ymlaktualisieren, falls neue App.git.f4mily.net/api/v1aus dem Browser der mt-rad.de-Origin) — ggf. Forgejo-Config ([cors]) additiv anpassen.Rahmen / Vorsicht
1ce71474-4bd0-4a17-9500-c2663ba46840(PKCE,base_url https://git.f4mily.net).Ergebnis in diesem Issue festhalten: was an Forgejo geändert werden muss (genaue Settings/Config-Snippets), ob neue OAuth-App nötig, Testprotokoll.
Bearbeitung: Subagent (Deploy-Epic 1–3, Opus), Entwurf/Plan — Forgejo-Settings erst nach Review ändern.
Entwurf fertig (nur Analyse + Plan, keine Forgejo-Settings geändert)
Forgejo-Version der Instanz: 15.0.3+gitea-1.22.0.
Empfehlung OAuth: bestehende App erweitern (KEINE neue App)
Die PKCE-App
1ce71474-4bd0-4a17-9500-c2663ba46840behalten und ihr eine zusätzliche Redirect-URI für die neue Domain geben. Forgejo-OAuth2-Apps unterstützen mehrere Redirect-URIs.Begründung: additiv + reversibel,
app_idbleibt →static/admin/config.ymlmuss ambackend-Block nicht angefasst werden (nursite_urländert sich, das steckt bereits im #14-Branch). Eine zweite App würde eine zweite Identität schaffen, ohne Mehrwert für einen Soft-Launch.Konkret (Forgejo → Einstellungen → Anwendungen → die Sveltia-App): Redirect-URI ergänzen:
Die bestehende
https://poc.mta-r.de/admin/-URI stehen lassen (bricht nichts). Sveltia (Gitea-Backend, PKCE) sendet alsredirect_uridie Panel-URL — beim E2E-Test in den DevTools den echtenredirect_uri-Query-Parameter der Authorize-Anfrage gegenprüfen und exakt diesen Wert eintragen (falls Sveltia ohne trailing slash oder auf/zeigt, entsprechendhttps://mt-rad.de/ergänzen).CORS
Sveltia läuft im Browser mit Origin
https://mt-rad.deund rufthttps://git.f4mily.net/api/v1/...(+ Token-Endpoint) cross-origin per XHR auf → Forgejo muss CORS-Header senden.Da poc.mta-r.de heute funktioniert, ist CORS bereits konfiguriert. Nötig ist nur: sicherstellen, dass
mt-rad.dein der erlaubten Domain-Liste steht. Inapp.ini(auf dem Forgejo-Host, nicht in diesem Repo), Abschnitt[cors]prüfen:ALLOW_DOMAINeine feste Liste →mt-rad.deergänzen.*bzw. permissiv → nichts zu tun.Additiver Referenz-Snippet, falls angepasst werden muss:
Änderung an
app.inierfordert einen Forgejo-Neustart (produktiv → erst nach Review).Testplan (E2E, NACH Deploy #14/#15 + DNS-Cutover)
https://mt-rad.de/admin/öffnen → „Login with Gitea".git.f4mily.net/login/oauth/authorize→ autorisieren.mt-rad.de/admin/→ Panel lädt die Collections (Artikel/Autor:innen/Seiten).MT-R/poc-hugo-sveltiaaufmain.git.f4mily.net(API +/login/oauth/access_token).Offene Fragen / Risiken
redirect_urierst im Test verifizieren (s. o.) — häufigste Fehlerquelle bei Sveltia-OAuth.[cors]-Ist-Zustand ist nur auf dem Forgejo-Host einsehbar (Zugriff nötig) — kann von hier aus nicht gelesen werden.poc.mta-r.de-Nutzung nicht brechen.