Jellyfin
Objectif : Permettre à vos utilisateurs de se connecter à Jellyfin en utilisant Authentik comme fournisseur d’identification, soit via OpenID Connect (OIDC) avec le plugin SSO de Jellyfin, soit via LDAP pour une authentification plus « classique ».
Pré‑requis
Avant toute configuration :
-
Vous avez accès administrateur à Authentik.
-
Vous avez accès administrateur à l’interface Jellyfin.
-
Les utilisateurs Jellyfin existent dans Authentik (ou seront synchronisés).
-
Votre Jellyfin est accessible via un domaine complet (ex.
jellyfin.votre‑domaine.com).
Option 1 : Intégration OpenID Connect (OIDC) via le plugin SSO
1.1 – Configuration dans Authentik
Dans Authentik, créez un provider OAuth2/OpenID Connect :
-
Nom :
jellyfin. -
Redirect URI :
(ce chemin est requis pour l’intégration)
Créez ensuite une application associée à ce provider.
-
Notez le Client ID et le Client Secret générés, vous en aurez besoin dans Jellyfin.
1.2 – Installation du plugin SSO dans Jellyfin
Dans l’interface Jellyfin → Dashboard → Plugins → Repositories, ajoutez le dépôt du plugin SSO :
Puis installez le plugin « SSO‑Auth ».
Redémarrez Jellyfin pour finaliser l’installation.
1.3 – Configuration du plugin SSO dans Jellyfin
Retournez dans Plugins → SSO‑Auth et ajoutez un nouveau provider :
-
Nom du OID Provider :
authentik. -
OID Endpoint :
(utilisez le slug de l’application Authentik créée)
-
OpenID Client ID : valeur du Client ID Authentik.
-
OID Secret : Client Secret Authentik.
-
Enabled : coché.
-
Enable Authorization by Plugin : coché.
(Optionnel) Si vous voulez gérer les rôles/jonctions d’accès local Jellyfin via les groupes Authentik :
-
Roles : liste des groupes Authentik à utiliser.
-
Admin Roles : groupe Authentik qui aura les droits admin.
-
Role Claim : utilisez
groups.
Sauvegardez puis redémarrez Jellyfin.
1.4 – Ajouter un bouton SSO sur l’écran de connexion
Dans Dashboard → General → Branding, ajoutez ce formulaire dans Login disclaimer :
<form action="https://jellyfin.votre-domaine.com/sso/OID/start/authentik">
<button class="raised block emby-button button-submit">
Se connecter avec SSO
</button>
</form>
Puis ajoutez ce CSS personnalisé pour l’apparence :
a.raised.emby-button {
padding:0.9em 1em;
color: inherit !important;
}
.disclaimerContainer{
display: block;
}
Option 2 : Intégration via LDAP
Si vous préférez LDAP à OIDC (utile surtout pour les clients Jellyfin non web) :
2.1 – Préparer un Bind LDAP dans Authentik
Créez dans Authentik un compte de service LDAP pour Jellyfin (bind user).
Déployez un LDAP Outpost Authentik accessible à Jellyfin.
2.2 – Installer et configurer le plugin LDAP dans Jellyfin
Dans Jellyfin, allez dans Plugins → Catalog et installez « LDAP Authentication Plugin ».
Allez dans les paramètres du plugin et renseignez :
-
LDAP Server : adresse de votre Outpost LDAP.
-
LDAP Port :
636(LDAPS). -
Secure LDAP : coché.
-
LDAP Bind User : DN complet (
cn=…) du service. -
LDAP Bind User Password : mot de passe de ce compte.
-
LDAP Base DN for Searches : base DN de votre arbre LDAP.
-
LDAP User Filter :
(objectClass=user)pour tous les utilisateurs ou un filtre adapté. -
LDAP Attributes :
uid, cn, mail, displayName. -
Enable case Insensitive Username : coché.
-
Enabled User Creation : coché.
Sauvegardez et testez la connexion LDAP :
Connect(Success); Bind(Success);… doit s’afficher si c’est correct.
Test et vérification
OIDC : ouvrez votre Jellyfin dans un navigateur → cliquez sur Se connecter avec SSO → vous serez redirigé vers Authentik.
LDAP : tentez de vous connecter avec un utilisateur Authentik via le formulaire standard Jellyfin.
Conseils pratiques
La configuration via OIDC permet un SSO élégant dans le navigateur, mais certains clients Jellyfin (ex : applications mobiles) peuvent avoir des limitations.
La méthode LDAP fonctionne avec tous les clients, mais nécessite un LDAP Outpost et un bind‑user correctement configuré.
Pour gérer les droits d’accès ou les administrateurs, utilisez les groupes Authentik dans le plugin Jellyfin OIDC ou LDAP.