`forge-01` a echoue sur une URL de decouverte pointant `https://keycloak.<domaine>` — le nom que rien ne publie. J'avais corrige exactement ca dans `serveur_oauth2_proxy` quelques heures plus tot, en croyant regler un cas isole. Il etait dans quatre roles : forgejo, grafana, nextcloud, oauth2-proxy. Chacun fabriquait le meme nom par la meme convention. Une cinquieme correction a la main aurait diverge comme les quatre autres. `roles/resoudre_idp` lit l'exposition declaree au plan et rend hote, base et discovery. Les roles n'en gardent qu'un REPLI nomme, jamais la valeur de travail. Verifie en base sur forge-01 : discovery = auth.chezlepro.internal, GroupClaimName = groups, AdminGroup = sysadmin. Meme lecon que `resoudre_annuaire` hier : corriger la valeur la ou elle echoue ne corrige que la. Ce sont les copies silencieuses qui coutent la journee suivante. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
23 lines
930 B
Markdown
23 lines
930 B
Markdown
# resoudre_idp — l'URL publique du fournisseur d'identite
|
|
|
|
Resout `auth.<domaine>` depuis l'exposition que le plan declare, au lieu de fabriquer
|
|
`keycloak.<domaine>` par convention.
|
|
|
|
## Pourquoi
|
|
|
|
Quatre roles construisaient le nom a la main. Aucun ne le publiait : le DNS resout
|
|
`auth`, nginx sert `auth`, et Keycloak s'annonce sous `auth`. Un client qui interroge
|
|
`keycloak.<domaine>` echoue — ou recoit un issuer qui ne correspond pas au sien
|
|
(« issuer did not match the issuer returned by provider »).
|
|
|
|
Corrige une premiere fois dans `serveur_oauth2_proxy`, puis retrouve a l'identique
|
|
dans trois autres roles. Une convention de nommage se contredit ; une declaration se
|
|
corrige.
|
|
|
|
## Sorties
|
|
|
|
| Fait | Exemple |
|
|
|---|---|
|
|
| `resoudre_idp_hote` | `auth.chezlepro.internal` |
|
|
| `resoudre_idp_base` | `https://auth.chezlepro.internal/realms/chezlepro` |
|
|
| `resoudre_idp_discovery` | `…/.well-known/openid-configuration` |
|