- T5 durch: GitHub- und Google-Login laufen (User-bestätigt); Google via Consent-Fix External. - Facebook/Meta für TP41 abgesagt (optional, kein CF-IdP, nichts aufzuräumen). - Geli in WARP: CF-seitig nichts zu tun — "Warp Login App" → bf-users → zt-humans enthält Gelis Mails bereits; Rest = Device-Handgriff (WARP-Client, Team emsenhuber, OTP/Google). - Permission-Frage beantwortet: keine nötig; /access/seats per Account-Token gesperrt (10405, Schema-Grenze, kein Scope-Fix). d47435-Revoke ✅, T3-WARP-Client-Verify ✅. - Optionaler Security-Hinweis vermerkt: geli-Policy OR-Include CGNAT 94.154.138.0/24. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
8.6 KiB
Handoff 2026-09-01 — TP41 Follow-up: IdP-Feinschliff, App-Launcher, Geli-Zugänge, dw-DNS
Kleine Folgesession nach TP41 (T4/T3/T2 durch). Sammelt die Rest-Punkte rund um Logins für Geli, die App-Launcher-Seite und den dw-Split-Horizon für Terpenfinder. Mehrere Punkte sind User-Konsolen-Aufgaben (Google/Meta), dafür je eine Kurzanleitung.
Status je Punkt (Stand dieser Session)
| # | Punkt | Stand |
|---|---|---|
| 1 | GitHub-Login | ✅ funktioniert (User bestätigt) |
| 2 | Google „Zugriff blockiert: nur innerhalb der Organisation" | ✅ gefixt — User hat Consent-Screen auf External gestellt; Google-Login läuft (bestätigt 2026-09-01). Anleitung §A war der Weg. |
| 3 | Meta/Facebook einbinden | ❌ für TP41 abgesagt (User-Entscheid 2026-09-01) — optional, kein Bedarf. Keine App, kein CF-IdP angelegt. Geli via OTP+Google voll gedeckt. §B nur noch als Anleitung, falls später gewünscht. |
| 4 | Geli-Zugänge hinterlegen | ✅ pillepalle670@gmail.com in zt-humans. FB-Konto-Mail = angelikahy@outlook.de (schon drin → Facebook automatisch abgedeckt, sobald Meta läuft). Instagram = kein CF-IdP. |
| 5 | App-Launcher überarbeiten | ✅ D1 umgesetzt — 3 Bookmark-Kacheln (Vaultwarden/Home Assistant/Terpenfinder), Bundle-/Wildcard-/Terpene-self_hosted-Kacheln aus dem Launcher genommen (Policies unverändert geprüft), Launcher gestylt (Titel „BF-Zugänge", Begrüßung, Buttons). |
| 6 | 420.teilzeitladen.xyz an dw |
✅ Entscheidung: Geli sofort per WARP; das dw-Site-DNS-Uplink-Thema → TP43 (angelegt). |
§A — Google-Login-Fix (User, Google Cloud Console)
Fehler „cloudflare kann nur innerhalb der Organisation verwendet werden" = der OAuth-Consent-Screen
des Google-Projekts steht auf User Type = Internal (nur Workspace-Org-Konten). Gelis Gmail ist extern
→ blockiert. Fix (der CF-Google-IdP c757… bleibt unverändert, nur die Consent-Einstellung ändert sich):
- https://console.cloud.google.com → richtiges Projekt (das, aus dem die Google-OAuth-Client-ID stammt).
- APIs & Services → OAuth consent screen (neu: „Google Auth Platform → Audience").
- User Type / Audience von Internal auf External stellen.
- Veröffentlichen: Publishing status → „In production" (dann kann jedes Google-Konto rein). Alternativ in „Testing" bleiben und Gelis Gmail als Test user eintragen.
- Danach Login-Test mit Gelis Google-Konto. (Bei „External/unverified" kommt ggf. ein „unbestätigte App"-Hinweis — für den kleinen Kreis unkritisch, oder App verifizieren lassen.)
§B — Meta/Facebook als Login (User legt App an, dann CF-IdP durch mich)
Es gibt noch keine Facebook-App (Creds leer). Schritte:
- https://developers.facebook.com → My Apps → Create App → Use case „Authenticate and request data from users with Facebook Login" (Consumer).
- Produkt Facebook Login hinzufügen.
- Facebook Login → Settings → Valid OAuth Redirect URIs =
https://emsenhuber.cloudflareaccess.com/cdn-cgi/access/callback - App settings → Basic: App ID + App Secret → an mich (in
~/.secrets, nicht in den Chat), ich trage sie inmcp/cloudflare/.env(FACEBOOK_APP_ID/SECRET) ein und lege den CF-Facebook-IdP an. - App Mode → Live (sonst dürfen nur App-Rollen/Tester rein); Geli ggf. als Tester eintragen.
- ⚠️ CF matcht die Policy über die E-Mail, die Facebook zurückgibt — diese E-Mail muss in
zt-humansstehen (s. §C).
§C — Geli: Zugangsmethoden (Matrix)
CF Access matcht Personen über die E-Mail der Identität (nicht über Usernamen). Stand:
| Methode | Gelis Angabe | CF-Status | To-Do |
|---|---|---|---|
| OTP (E-Mail-Code) | angelikahy@outlook.de |
✅ in zt-humans |
— |
| OTP + Google | pillepalle670@gmail.com |
✅ heute ergänzt | Google-Fix §A nötig, damit Google-Login geht |
User 35Lika.Ange |
⏳ | Facebook-App (§B); dann die E-Mail ihres FB-Kontos in zt-humans — welche ist das? (vermutlich eine der beiden obigen) |
|
angelikahy |
❌ CF Access hat keinen Instagram-IdP | Nicht möglich als Direkt-Login → Geli nutzt Facebook/Google/OTP |
→ Sobald Gelis FB-Konto-E-Mail bekannt ist und sie eine der schon hinterlegten Adressen ist, ist Facebook
automatisch abgedeckt. Sonst diese E-Mail zusätzlich in zt-humans aufnehmen.
§D — App-Launcher emsenhuber.cloudflareaccess.com überarbeiten
Ist-Analyse (live): Der Launcher (App 6df5c431, landing_page_design={} = ungestylt) zeigt Kacheln
aus den Access-Apps mit app_launcher_visible=true:
1dbc45ca„hass, vw, gitea" (self_hosted, Domainvw.emsenhuber.net) → eine Kachel, verlinkt nur vw.16aaec78*.emsenhuber.net(Wildcard) → Kachel ohne sinnvolles Ziel.e6a7991fTerpenfinder v3 (420.teilzeitladen.xyz) → eigene Kachel ✅. Deshalb „stimmt nicht mehr": vw/hass/gitea teilen sich eine Kachel, die Wildcard-Kachel stört.
Ziel: je ein sauberer Button für Vaultwarden, Home Assistant, Terpenfinder + freundlichere Seite. Zwei Wege (Entscheidung offen):
- D1 — CF-nativ (empfohlen, „diese Seite"): je ein Bookmark-App (type
bookmark) für vw/hass/ terpenfinder mit Name + Logo (eigene Kachel/Link), die Wildcard-Kachel aus dem Launcher nehmen,landing_page_designsetzen (Titel z.B. „BF-Zugänge", Begrüßung, Farbe, Logo). Reversibel, in Minuten. Grenze: CF-Styling = Titel/Text/Farbe/Logo + uniforme Kacheln. - D2 — Custom-Landing-Page: eigene HTML-Seite (Caddy, hinter Access) mit voller Gestaltung/großen Buttons. Mehr Design, mehr Aufwand (eigener vhost + Access-Regel).
§E — dw: 420.teilzeitladen.xyz lokal auflösen (FritzBox 10.95.10.1)
Ehrliche FritzBox-Antwort: Eine FritzBox kann keinen freien „Hostname → beliebige IP"-Override im
GUI (nur DNS-Rebind-Schutz-Ausnahmen = Whitelist gegen Rebind-Blockade, ohne IP-Zuweisung). Ein
sauberer Split-Horizon für genau diesen Namen braucht daher einen kleinen lokalen Resolver am dw
(dnsmasq/AdGuard/Pi-hole auf einem Dauerläufer): address=/420.teilzeitladen.xyz/<BF-Caddy-über-WG> +
Rest weiterleiten; diesen Resolver als DNS der FritzBox bzw. der Clients setzen.
⚠️ Vor Umsetzung verifizieren (nicht aus dem Kopf): FritzOS-Version am dw + ob ein Dauerläufer da ist.
BF-seitige Prereqs (fehlen noch):
- Caddy-vhost
420.teilzeitladen.xyz→ macmini-Worker (10.40.20.167:8890) mit Cert (DNS-01,…4148hat jetzt teilzeitladen.xyz-DNS). - WG-Route dw →
10.40.20.40(Caddy) muss stehen. - Split-Horizon für
420.teilzeitladen.xyz(heute liefern auch.36/.37public für diesen Namen). Cross-Projekt (teilzeitladen.xyz). Alternative aus Ur-Handoff: Gelis Gerät in WARP (Session statt Login, CGNAT unkritisch) + Access-Policy auf die WARP-Identität — spart den ganzen dw-DNS-Umbau.
Entscheidungen (2026-09-01, getroffen)
- App-Launcher: ✅ D1 (CF-nativ) — umgesetzt (s. §D / Punkt 5).
- Gelis Facebook-Mail: ✅
angelikahy@outlook.de— schon inzt-humans, Facebook damit abgedeckt. - dw-Ansatz: ✅ Geli per WARP (sofort); Site-DNS-Uplink als TP43 ausgelagert.
Verbleibende offene To-Dos (User)
§A Google-Consent-Screen auf External✅ erledigt — Google-Login läuft (2026-09-01).§B Facebook-App anlegen❌ abgesagt für TP41 (User-Entscheid 2026-09-01) — optional; §B bleibt als Anleitung stehen, falls später doch gewünscht.d47435-Revoke✅ erledigt ·T3-WARP-Client-Verify✅ ok (User, 2026-09-01).- Geli in WARP: ✅ CF-seitig nichts zu tun — Enrollment läuft über App „Warp Login App"
(
6c32fe23…) →bf-users→ Gruppezt-humans, die Gelis Mails schon enthält; sie darf bereits enrollen. Terpenfinder-geli-Policy lässt sie per E-Mail durch. Rest = Handgriff auf Gelis Gerät: WARP installieren, Teamemsenhuber, Login OTPangelikahy@outlook.deoder Googlepillepalle670@gmail.com. Permission-Frage: CF-seitig keine nötig;/access/seatsper MCP nicht nutzbar (10405, Endpoint will User-Token statt Account-Token — kein Scope-Fix, für Enroll irrelevant). - T5 (TP41) ✅ GitHub- und Google-Login laufen (bestätigt).
- TP43 (dw-Site-DNS) bei Gelegenheit.
TP41-Auth-Kern damit abgeschlossen (2026-09-01): T2/T3/T4/T5 ✅, FB abgesagt, d47435-Revoke ✅, WARP-Verify ✅, Geli CF-seitig fertig. Nichts mehr auf Claude-/CF-Seite offen — verbleibt nur Gelis WARP-Client auf ihrem Gerät.