Не удается использовать конечную точку авторизации Azure AD в Windows 10 - PullRequest
0 голосов
/ 28 сентября 2018

У меня возникла проблема при использовании конечной точки авторизации в Windows 10 с Google Chrome.

При запросе следующего:

GET /common/oauth2/v2.0/authorize?response_type=id_token+token&response_mode=fragment&client_id=...&redirect_uri=...&scope=openid+profile+User.Read&state=...&nonce=...&prompt=none&domain_hint=organizations&login_hint=...

В любой другой среде, кроме Windows 10 и Google Chrome(Например, Firefox или Windows 7) поток авторизации успешно завершается, и перенаправление происходит по URL-адресу, указанному в запросе, с учетом токена идентификатора.

Но в комбинации Windows 10 + Google Chrome ответ вместо этого является некоторымHTML-код, содержащий следующий файл JavaScript:

https://secure.aadcdn.microsoftonline-p.com/ests/2.1.8148.16/content/cdnbundles/oldbssointerrupt_core.min_ifovy4ltwgbno2mkumjmxg2.js

Сценарий выполняется и запускает новый запрос к конечной точке авторизации с теми же параметрами, за исключением того, что добавляется новый параметр: sso_reload=true

Этот новый запрос просто висит в браузере с состоянием Pending и никогда не возвращает никакого ответа.Таким образом, процесс авторизации не может завершиться.

Мой текущий пользовательский агент - Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36

Если я повторно запускаю тот же запрос с другим пользовательским агентом, он обычно завершается без каких-либо странных действий.

Итак, у меня есть 2 вопроса:

  1. Есть ли какая-либо причина для такого специфического поведения для Windows 10 и Chrome?
  2. Какова цель (недокументированного) параметра sso_reload?

Это звучит как очень специфическая проблема, но я был бы признателен за любой комментарий или руководство.Спасибо!

...