feat(molde): frontendUrl no realm do tenant
Sem ele o Keycloak monta os links e o iss com o KC_HOSTNAME global (auth-plataforma), e os runtimes do tenant validam contra ATM_ISSUER, que o molde define como auth.athleticmap.com. Os dois tem de bater. Nao da para resolver so no KC_HOSTNAME porque ele e um so e a plataforma depende do valor antigo. Dai o frontendUrl por realm, que e para isto.
This commit is contained in:
@@ -51,3 +51,21 @@ no momento de criar o realm, a partir da configuracao do servico — o realm e
|
||||
criado pela API, e nao commitado. Um `{{SMTP_SENHA}}` literal que chegasse ao
|
||||
Gitea seria um segredo versionado, que e exatamente o que a regra do repositorio
|
||||
proibe.
|
||||
|
||||
── O `frontendUrl`, E POR QUE ELE NAO E OPCIONAL ───────────────────────────
|
||||
|
||||
`https://auth.athleticmap.com` — o host de autenticacao DOS TENANTS.
|
||||
|
||||
Sem ele o Keycloak monta os links (e o `iss` do token) com o `KC_HOSTNAME`
|
||||
global, que e `auth-plataforma.athleticmap.com`. E os runtimes do tenant
|
||||
validam contra `ATM_ISSUER`, que o molde consolidado define como
|
||||
`https://auth.athleticmap.com/realms/{{REALM}}`.
|
||||
|
||||
Os dois TEM de bater. Quando nao batiam, em 2026-09-24, o login do primeiro
|
||||
tenant provisionado morria antes de comecar: a SPA redirecionava para um host
|
||||
sem certificado e sem rota, e mesmo passando por cima o token seria recusado
|
||||
pelos runtimes.
|
||||
|
||||
Nao da para resolver so no `KC_HOSTNAME` porque ele e um so, e a plataforma
|
||||
depende do valor antigo — os servicos dela estao configurados com
|
||||
`auth-plataforma`. Dai o `frontendUrl` por realm, que e exatamente para isto.
|
||||
|
||||
@@ -71,6 +71,9 @@
|
||||
]
|
||||
}
|
||||
],
|
||||
"attributes": {
|
||||
"frontendUrl": "https://auth.athleticmap.com"
|
||||
},
|
||||
"smtpServer": {
|
||||
"host": "{{SMTP_HOST}}",
|
||||
"port": "{{SMTP_PORTA}}",
|
||||
|
||||
Reference in New Issue
Block a user