Наш веб-сайт требует IEMode в Edge Chromium, а наш пользователь использует SSO. Когда они входят в систему со своего URL-адреса для входа в систему SSO, их браузер Edge Chromium открывает наш веб-сайт (URL-адрес доступа пользователя) в IEMode, как и ожидалось, но они получают ошибку при аутентификации.
Из-за входа в систему единого входа нашего пользователя тип запроса, который получает наш веб-сайт, - GET, поэтому мы получаем сообщение об ошибке «Не удалось получить ответ SAML по HTTP-сообщению», мы ожидаем, что данные SAML будут опубликованы по HTTP. Инструменты разработчика не работают в IEMode, поэтому трассировка останавливается прямо перед загрузкой страницы IEMode.
В соответствии с инструкциями https://docs.microsoft.com/en-us/deployedge/edge-ie-mode-sitelist#configure-neutral-sites мы попытались включить домен входа SSO в список сайтов EMIE с открытием как Никто, но мы все равно получили тот же результат. Если мы изменим открытие на IE11 (то же самое, что и на нашем веб-сайте), это сработает. Это просто не тот вариант, который хочет использовать наш пользователь (установка домена входа в систему для открытия в IE11), поскольку у нашего пользователя есть другие приложения, которые используют SSO и не должны находиться в режиме IE.
Есть ли параметр заголовка или IIS, который мы можем изменить, или другой параметр браузера Edge Chromium, или даже параметр реестра, который мы можем изменить, чтобы обойти эту проблему SSO Edge Chromium-to-IEMode?
Спасибо @YuZhou. Я попытался не использовать aspx из ответа, на который вы указали ссылку, но у меня все еще возникает та же проблема. Я отследил следующий трафик на Fiddler - с доменом входа SSO с использованием открытого IE11, как наш сайт: POST https://oursite.com/SSO HTTP/1.1 Referer: https://ssologin.com Content-Type: application/x-www-form-urlencoded Content-Length: 4763 Cache-Control: no-cache SAMLResponse=***
С доменом входа SSO с использованием открытого None, я получаю следующее: GET https://oursite.com/SSO HTTP/1.1
Я получаю одинаковые заголовки на обоих: Accept , Accept-Language, User-Agent, Accept-Encoding, Host, Connection и Cookie.
Переключение процесса с msedge на iexplore может привести к тому, что он сбросит данные POST и вернется к GET. Он выполняет два запроса CONNECT в обоих процессах.
Если инструменты разработчика не работают, вы можете использовать Скрипач для захвата HTTP-трафика, чтобы увидеть, может ли он устранить проблему. Я думаю, будет полезно определить, почему вы получаете HTTP-запрос Get. Кроме того, я также нашел похожую ветку, и вы можете обратиться к ответ.