OpenID Connect issue with Azure AD

Yes, we are using KeyCloak and use Azure AD for federation in behind it. It’s correctly bootstrapping the email, so it must do some kind of mapping just like the one you mention.

We have a fix. We were using the v1.0 version of the endpoint. When we switch to the v2.0, it works and we get the email just fine. Thanks for all your help @david, talking it through helps us triage the issue.

Glad to hear it!

Would you be able to describe how to tell whether you’re using v1 or v2 in the azure portal? Then we can add a note to the instructions above so it doesn’t catch anyone else!

Yep, adding /v2.0/ to the metadata document url.

https://login.microsoftonline.com/replace-with-tenant-id/v2.0/.well-known/openid-configuration

Perfect, thanks. I’ve added a note to the OP

Привет, у меня возникла очень похожая проблема, как у автора оригинального поста. Я аутентифицируюсь через NHS.net, который, судя по всему, работает на базе Active Directory и, вероятно, предоставляется Azure. Я использую плагин OIDC и получаю следующую ошибку:

(oidc) Authentication failure! invalid_credentials: OAuth2::Error,
(ошибка заканчивается запятой и не содержит дополнительных данных, в отличие от ошибки автора оригинального поста)

Я пробовал изменять настройки авторизации и области токена на openid email profile (и эти значения поддерживаются конечной точкой OIDC согласно данным конфигурационного URL).

Тем не менее, в интерфейсе появляется та же ошибка: «К сожалению, произошла ошибка при авторизации вашей учётной записи. Пожалуйста, попробуйте снова».

Похоже, что данные от JWT не возвращаются. Поэтому это не совсем то же самое, что проблема «отсутствующего поля email», хотя всё началось с той же ошибки. Единственное другое место на Meta, где я нашёл эту ошибку (и которое кажется релевантным), — это SSL Error during OAuth2. Оказалось, что она связана с проблемой SSL (и, что интересно, сертификат NHS.net действительно имеет эту проблему, о которой я сообщил). Однако после установки обходного решения для SSL ошибки Faraday, связанные с SSL, исчезли. Но по-прежнему кажется, что какая-то часть процесса OpenID Connect всё ещё не работает.

Есть ли какие-либо предложения по следующим шагам для отладки этой проблемы?