Olá! Estou tentando configurar o Discourse com o plugin Discourse OpenID Connect e o Keycloak.
Consegui fazer funcionar e pude não apenas fazer login na minha instância do Discourse usando minhas credenciais do Keycloak, mas também associar uma conta Discourse já existente com a do OIDC. Infelizmente, cometi um erro ao configurar o contêiner do Keycloak e acabei perdendo sua configuração e banco de dados.
Desde então, reinstalei o Keycloak (corretamente desta vez!) e reconfigurei o Discourse para usar o novo Client ID, mas embora a integração pareça estar funcionando (habilitar os logs em /logs mostra que a autenticação realmente funcionou), não consigo mais associar contas do Discourse com contas OIDC.
Quando tento fazer login no Discourse, uso o OIDC, sou recebido pela nova interface de conta e, em seguida, clico no link para associar a uma conta já existente; faço login, sou redirecionado para o Discourse e, se fizer logout e login novamente, vejo a mesma nova interface de conta.
Usei o Data Explorer plugin para verificar as associações, e meu usuário aparece como NULL; o ID do provedor corresponde ao User ID no Keycloak, no entanto.
Tenho a opção “OpenID Connect allow association change” ativada.
Imagino que o Discourse ainda esteja retendo o que quer que estivesse lá da minha instalação anterior do Keycloak, e apenas mudar o novo Client ID não está resolvendo.
Há algo mais que eu deva verificar e que possa ter deixado passar?
Abraços