feat(auth): authentification par proxy (oauth2-proxy, Authelia…)
Derrière un proxy d'authentification, FanKarr demandait une seconde connexion. Avec PROXY_AUTH_HEADER, la session est ouverte à partir du nom d'utilisateur transmis par le proxy. - server/lib/proxy-auth.ts : lecture de l'en-tête, uniquement pour les connexions venant de PROXY_AUTH_TRUSTED_PROXIES (adresse du socket, pas X-Forwarded-For) ; fonction désactivée si cette liste est vide - compte rapproché par nom (sans casse) ; création d'un compte utilisateur sans mot de passe avec PROXY_AUTH_AUTO_CREATE ; premier compte toujours créé par l'assistant - server/auth.ts : middleware proxyAuth avant les routes, qui ouvre ou remplace la session ; /api/auth/status expose proxyAuth et logoutUrl - déconnexion : redirection vers PROXY_AUTH_LOGOUT_URL si défini - profil et gestion des utilisateurs : libellés pour les comptes sans mot de passe qui ne viennent pas de Jellyfin - tests vitest du module ; fichiers de test exclus de la compilation serveur Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
804436ff70
commit
e13d43d186
13 files changed
+349
-18
No files matched your search
@@ -10,6 +10,13 @@
|
||||
# Exemples : "1d", "7d", "30d", "1y" ; "never" ou "0" : pas d'expiration
|
||||
# AUTH_TOKEN_EXPIRY=30d
|
||||
|
||||
# Authentification par proxy (oauth2-proxy, Authelia…) : en-tête contenant le
|
||||
# nom d'utilisateur, lu uniquement pour les adresses de PROXY_AUTH_TRUSTED_PROXIES
|
||||
# PROXY_AUTH_HEADER=X-Forwarded-Preferred-Username
|
||||
# PROXY_AUTH_TRUSTED_PROXIES=127.0.0.1
|
||||
# PROXY_AUTH_AUTO_CREATE=false
|
||||
# PROXY_AUTH_LOGOUT_URL=/oauth2/sign_out
|
||||
|
||||
# ── Serveur ───────────────────────────────────────────────────────────────────
|
||||
|
||||
# Port d'écoute (défaut : 9898)
|
||||
|
||||
Reference in new issue
Block a user