Olá ! Boa tarde, tenho uma pergunta sobre o plugin OpenID Connect
Estou tentando usar o ID Uruguay (um provedor governamental OpenID Connect) com o Discourse, me inscrevi no servidor de teste e eles me enviaram os dados necessários.
Todo o fluxo parece funcionar bem, exceto pelo callback, aparentemente o Issuer enviado no JWT não é o mesmo do documento de descoberta.
Já entrei em contato com o Suporte e eles disseram que basicamente o erro era do Discourse (o que eu não acho).
É possível adicionar de alguma forma outro valor a “issuer esperado”?
Pela localização do documento de descoberta, você precisa assumir que o emissor é https://auth-testing.iduruguay.gub.uy/oidc/v1, já que o documento de descoberta é o emissor com /.well-known/openid-configuration anexado a ele.
Agora o próprio documento diz issuer\t\"https://auth-testing.iduruguay.gub.uy\"
E os dois requisitos na última frase não são atendidos. O valor da reivindicação iss é idêntico à URL do Emissor que foi usada para recuperar a configuração, mas ambos NÃO são idênticos ao valor issuer retornado.
Portanto, pelo que vale, acho que eles estão errados e você está certo. Pena que isso não te leva a lugar nenhum.
Eu relatei isso e vinculei à sua resposta, aguardarei uma resposta do suporte do ID Uruguay .
No momento, estou usando um pastebin com o emissor correto (De qualquer forma, foi para testes) e tudo parece funcionar corretamente, espero que a equipe de suporte possa resolver este detalhe antes de aplicar o ID Uruguay em modo de produção.