Declare requests, importe par Authlib sans etre declare
build / Garde-fou (pull_request) Successful in 18s
build / Images Harbor (catalog-sync, Dockerfile.catalog-sync) (pull_request) Skipped
build / Images Harbor (web, Dockerfile) (pull_request) Skipped
build / Images Harbor (catalog-sync, Dockerfile.catalog-sync) (push) Successful in 9m42s
build / Garde-fou (push) Successful in 18s
build / Images Harbor (web, Dockerfile) (push) Successful in 13m2s

This commit is contained in:
hcornet committed 2026-09-10 16:44:46 +02:00
1 parent b063d59525
commit 90609bd3d2
2 files changed
+34 -6

No files matched your search

+32 -6
View File
@@ -34,20 +34,46 @@ ENCLUME_OIDC_CLIENT_ID=...
ENCLUME_OIDC_CLIENT_SECRET=...
```
**Le groupe de modération.** Enclume lit la revendication `groups` du jeton, qu'Authentik
n'envoie pas par défaut. Créer une correspondance de portée (Personnalisation → Property
Mappings → Scope Mapping), nom de portée `groups`, expression :
**Le groupe de modération.** Enclume lit la revendication `groups` du jeton. Depuis
Authentik 2026.8, les correspondances de portée par défaut l'exposent déjà pour certains
fournisseurs ; si ce n'est pas le cas chez vous, créer une correspondance de portée
(Personnalisation → Property Mappings → Scope Mapping), nom de portée `groups` :
```python
return {"groups": [group.name for group in request.user.ak_groups.all()]}
return {"groups": [group.name for group in request.user.groups.all()]}
```
Puis ajouter cette portée au fournisseur, et créer un groupe `enclume-admins` dont tu es
membre.
La relation `request.user.ak_groups` utilisée dans les exemples plus anciens est dépréciée
depuis la 2026.8 et déclenche un avertissement de configuration.
Rattacher cette portée au fournisseur, puis créer le groupe de modération et s'y inscrire.
Le nom du groupe se règle par `ENCLUME_ADMIN_GROUPE`, il n'a pas à s'appeler
`enclume-admins`.
Le temps de mettre ça en place, `[email protected]` donne l'accès
à la modération sur la seule foi de l'adresse. À vider ensuite.
## Ouvrir le site à d'autres que vous
Si Enclume doit accueillir des visiteurs extérieurs, deux points sont à traiter côté
Authentik, et aucun n'est automatique :
- **Des sources externes.** GitHub, Google ou autre, déclarées en tant que sources OAuth.
Sans elles, seuls les comptes de votre annuaire peuvent se connecter.
- **Un flux d'enrôlement rattaché à ces sources.** C'est lui qui crée le compte local à la
première connexion. Beaucoup d'installations suppriment le flux d'enrôlement par défaut,
précisément parce qu'il ouvre l'auto-inscription : il faut alors en créer un dédié, lié
aux sources et non joignable directement par URL.
- **Ne pas cloisonner l'application par groupe.** Une liaison de groupe sur l'application
Enclume interdirait la connexion à tout visiteur qui n'en est pas membre.
Vérifiez aussi ce que votre flux d'authentification impose : une validation MFA obligatoire
a du sens pour vos comptes internes, beaucoup moins pour un visiteur qui veut seulement
enregistrer un projet.
Rien de tout cela n'est nécessaire si le site reste à usage interne : la connexion demeure
facultative, et un visiteur non connecté conserve l'éditeur, la génération et le partage.
## Le jeton Gitea
Un jeton d'accès personnel sur le compte qui ouvrira les demandes de fusion, avec la portée