Проблема перенаправления Safari в Azure Active Directory - PullRequest
0 голосов
/ 27 сентября 2018

Похоже, что в настоящее время существует проблема с входом в Microsoft Online на устройствах Mac OS и iOS с использованием новейшей версии Safari (12).

Обновления для Safari 12 показаны здесь: https://developer.apple.com/safari/whats-new/

Из-за некоторых новых обновлений безопасности и конфиденциальности возникает проблема с файлами cookie, которая вызывает бесконечное перенаправление при входе в систему.конечная точка: http://login.microsoftonline.com

Это новое обновление приводит к тому, что пользователи Safari на устройствах Apple переходят в бесконечный цикл перенаправления при входе в систему.

Это, скорее всего, связано с тем, что Safari не позволяет использовать cookie-файлы Microsoftчерез, что заставляет серверы Microsoft перенаправлять обратно на страницу входа в систему, чтобы получить требуемый файл cookie.Тем не менее, браузер все еще имеет некоторую идентификационную информацию, которая заставляет пользователя автоматически войти снова, перенаправляя на сервер.Файл cookie по-прежнему не отправляется вместе с запросом, в результате чего сервер отправляет пользователя обратно на страницу входа.Такое перенаправление с сервера и браузера, по-видимому, является основной причиной бесконечного перенаправления.

Существуют ли какие-либо обновления, обоснования или решения для устранения / обхода проблемы, связанной с проблемой перенаправления входа в систему Safari и Microsoft?

Ответы [ 2 ]

0 голосов
/ 06 ноября 2018

Существует решение, задокументированное командой aspnet / security на GitHub.

https://github.com/aspnet/Security/issues/1864

Если вы используете ASP.NET Core Identity, вы отключаете защиту, настраиваяфайлы cookie со следующим кодом

services.ConfigureExternalCookie(options => {
    // Other options
    options.Cookie.SameSite = SameSiteMode.None; }); services.ConfigureApplicationCookie(options => {
    // Other options
    options.Cookie.SameSite = SameSiteMode.None; });

Если вы используете проверку подлинности файлов cookie без удостоверения ASP.NET Core, вы можете отключить защиту с помощью следующего кода

services.AddCookie(CookieAuthenticationDefaults.AuthenticationScheme, options => {
    // Other options
    options.Cookie.SameSite = Microsoft.AspNetCore.Http.SameSiteMode.None; })

Если вы используете внешних провайдеров OIDC, вы можете избежать этой проблемы, изменив режим ответа вашего провайдера с POST на запрос GET, используя следующий код.Не все поставщики могут поддерживать это.

.AddOpenIdConnect("myOIDProvider", options => {
    // Other options
    options.ResponseType = "code";
    options.ResponseMode = "query";
};
0 голосов
/ 28 сентября 2018

Вы правы.Есть некоторые известные проблемы с совместимостью AAD с Safari.Вы можете сделать запрос новой функции в User Voice или upvote и подписаться на некоторые из существующих.

https://support.microsoft.com/en-us/help/2535227/a-federated-user-is-prompted-unexp https://feedback.azure.com/forums/223579-azure-portal/suggestions/34373635-fix-signing-in-in-safari https://feedback.azure.com/forums/223579-azure-portal/suggestions/7513912-does-not-work-well-on-safari-but-works-fine-on-chr

ОБНОВЛЕНИЕ: команда разработчиков вернулась и ответила, что это проблема Apple.конец.Текущий статус таков, что команда Apple и команда Microsoft PG работают над этим, но команда разработчиков Microsoft ничего не может сделать, потому что на стороне Microsoft нет ничего плохого.Проблема заключается в том, что Apple неправильно отправляет файлы cookie на сервер login.microsoftonline из-за новых обновлений конфиденциальности и безопасности.https://developer.apple.com/safari/whats-new/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...