authentik: Passkey-only Login für Audiobookshelf und Immich #119

Merged
k.renner merged 2 commits from feat/authentik-passkey-abs-immich into master 2026-07-07 08:38:22 +00:00
Owner

Was

Rollt das Passkey-only-Setup aus #115/#118 auf zwei weitere Apps aus: die OAuth2-Provider Audiobookshelf und immich-oauth-provider werden an passkey-passwordless-authentication (authentication_flow, inkl. Passkey-Autofill) und passkey-stepup-authorization (authorization_flow) gebunden. Keine neuen Flows/Stages — nur zwei zusätzliche Provider-Entries im bestehenden Blueprint.

Live-Verifikation (2026-07-07)

  • Provider-Pflichtfelder (client_type, redirect_uris, invalidation_flow) 1:1 aus dem Live-Stand gespiegelt — ab Merge besitzt Git diese Felder (wie bei HA/NetBird).
  • Nutzerabdeckung: Audiobookshelf Users = k.renner, s.renner (beide mit Passkeys). Immich Users = g.renner, i.birzer, k.renner, s.renner — g.renner hat keinen Passkey und bekommt beim ersten Zugriff das Inline-Enrollment über die Step-up-Stage (configure), kein Lockout.
  • Mobile-Apps: beide Clients (ABS mobile-redirect, Immich app.immich:///oauth-callback) machen den OIDC-Login im System-Browser — WebAuthn funktioniert dort.

Validierung nach Merge

  1. DB: beide Provider zeigen auf die Passkey-Flows
  2. Authorize-Probe: unauthentifizierter Redirect landet im Passwordless-Flow
  3. Ein echter Login pro App (Web reicht)

🤖 Generated with Claude Code

## Was Rollt das Passkey-only-Setup aus #115/#118 auf zwei weitere Apps aus: die OAuth2-Provider **Audiobookshelf** und **immich-oauth-provider** werden an `passkey-passwordless-authentication` (authentication_flow, inkl. Passkey-Autofill) und `passkey-stepup-authorization` (authorization_flow) gebunden. Keine neuen Flows/Stages — nur zwei zusätzliche Provider-Entries im bestehenden Blueprint. ## Live-Verifikation (2026-07-07) - Provider-Pflichtfelder (client_type, redirect_uris, invalidation_flow) 1:1 aus dem Live-Stand gespiegelt — ab Merge besitzt Git diese Felder (wie bei HA/NetBird). - Nutzerabdeckung: *Audiobookshelf Users* = k.renner, s.renner (beide mit Passkeys). *Immich Users* = g.renner, i.birzer, k.renner, s.renner — g.renner hat keinen Passkey und bekommt beim ersten Zugriff das Inline-Enrollment über die Step-up-Stage (`configure`), kein Lockout. - Mobile-Apps: beide Clients (ABS `mobile-redirect`, Immich `app.immich:///oauth-callback`) machen den OIDC-Login im System-Browser — WebAuthn funktioniert dort. ## Validierung nach Merge 1. DB: beide Provider zeigen auf die Passkey-Flows 2. Authorize-Probe: unauthentifizierter Redirect landet im Passwordless-Flow 3. Ein echter Login pro App (Web reicht) 🤖 Generated with [Claude Code](https://claude.com/claude-code)
k.renner added 1 commit 2026-07-07 08:27:31 +00:00
Bindet die OAuth2-Provider Audiobookshelf und immich-oauth-provider
an den Passwordless-Authentication-Flow (Passkey-Autofill inklusive)
und den Step-up-Authorization-Flow — gleiche Mechanik wie Home
Assistant und NetBird (#115/#118). Pflichtfelder (invalidation_flow,
client_type, redirect_uris) spiegeln den Live-Stand vom 2026-07-07.

Nutzerabdeckung geprüft: Audiobookshelf Users (k.renner, s.renner)
haben Passkeys; Immich Users enthält g.renner ohne Passkey — sie
bekommt beim ersten Zugriff das Inline-Enrollment über die Step-up-
Stage (configure), kein Lockout.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
k.renner added 1 commit 2026-07-07 08:32:40 +00:00
Beide Provider (nur k.renner via Infrastructure Admins, 4 Passkeys
enrolled) an den Passwordless- und Step-up-Flow gebunden; Live-Stand
der Pflichtfelder gespiegelt. PVE, PBS und paperless-gate bleiben
bewusst auf Passwort+MFA.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
k.renner merged commit 78368ea4ea into master 2026-07-07 08:38:22 +00:00
Sign in to join this conversation.