4.1 KiB
Configuration Authentik
Procédure pour l'instance authentik.tips-of-mine.com, en suivant les
conventions déjà en place sur tes autres applications.
1. Groupes
Répertoire → Groupes. Créer, selon la convention GL-<app> / GL-<app>-Admin :
| Groupe | Effet dans Limier |
|---|---|
GL-Limier |
plan interne — aucun quota mensuel |
GL-Limier-Admin |
plan interne + accès à l'espace d'administration |
Les visiteurs qui s'inscrivent sans appartenir à ces groupes reçoivent le plan
gratuit et son quota. L'appartenance est relue à chaque connexion : retirer
quelqu'un d'un groupe lui retire ses droits à sa prochaine ouverture de session,
sans intervention en base.
2. Fournisseur OAuth2
Applications → Fournisseurs → Créer → OAuth2/OpenID.
| Champ | Valeur |
|---|---|
| Nom | Tips-Of-Mine-Limier |
| Type de client | Confidentiel |
| Flux d'autorisation | default-provider-authorization-implicit-consent |
| URIs de redirection | https://limier.tips-of-mine.com/api/auth/retour |
| Clé de signature | authentik Token Signing |
Le piège rencontré sur Enclume. L'URI va dans « URIs de redirection », pas dans « URI de déconnexion ». Saisie au mauvais endroit, la première connexion échoue sur
Redirect URI Erroret le champ correct reste vide.
Relever l'identifiant et le secret du client pour le .env.
3. Application
Applications → Applications → Créer.
| Champ | Valeur |
|---|---|
| Nom | Limier |
| Slug | limier |
| Fournisseur | Tips-Of-Mine-Limier |
Le slug détermine l'émetteur :
https://authentik.tips-of-mine.com/application/o/limier/. Il doit
correspondre exactement à LIMIER_OIDC_ISSUER.
Sur l'intégration Cloudflare Access, un slug erroné avait produit un 404 sur
/jwks/— l'intégration n'avait jamais abouti sans que rien ne le signale. Vérifier :curl -s https://authentik.tips-of-mine.com/application/o/limier/.well-known/openid-configuration | jq .issuer
Lier ensuite les deux groupes à l'application (onglet Liaisons), pour que l'application reste cloisonnée comme les sept autres.
4. La revendication groups
Depuis la 2026.8, les correspondances par défaut exposent bien les groupes — le test de Cloudflare Access l'a confirmé, la revendication arrivait au niveau racine sans correspondance personnalisée.
Si l'instance est plus ancienne, rattacher la correspondance de portée
« OAuth Mapping: OpenID groups » déjà créée pour Grafana, Gitea et Harbor.
Rappel : elle doit utiliser request.user.groups et non request.user.ak_groups,
relation dépréciée depuis la 2026.8.
Limier prévoit les deux cas : si la revendication est absente du jeton
d'identité, il interroge userinfo.
5. Vérification
Après docker compose up -d :
- Ouvrir
https://limier.tips-of-mine.com→ « Se connecter ». - Redirection vers Authentik, authentification, retour sur l'interface.
- Le nom et le quota apparaissent en haut à droite.
- Membre de
GL-Limier-Admin:curlsur/api/admin/tableau-de-bordrenvoie 200 ; sinon, 403.
En cas d'échec : docker compose logs limier-api | grep -i auth. Les messages
sont explicites (decouverte_oidc_impossible, etat_oidc_incoherent,
echec_validation_identite) et ne contiennent jamais de jeton.
Ce que Limier ne fait pas
Aucune gestion de mot de passe, aucun compte local, aucune réinitialisation. Authentik est la seule source d'identité. Le cookie de session ne porte que l'identifiant interne de l'utilisateur : plan et droits sont relus en base à chaque requête.