Файлы cookie ADFS не удаляются после успешного выхода из системы - PullRequest
0 голосов
/ 02 июля 2018

мы используем ADFS для единого входа, когда мы успешно выйдем из нашего приложения, используя этот URL https://XXXXX/adfs/ls/?wa=wsignout1.0 мы удаляем все куки уровня приложения, но как только пользователь нажмет на кнопку «Назад» в браузере, его пользователь сможет снова войти в приложение. enter image description here

мы видим там некоторые файлы cookie, связанные с ADFS, которые мы не можем удалить из приложения. Любое предложение, чтобы решить эту проблему.

Ответы [ 2 ]

0 голосов
/ 04 июля 2018

Вы используете неверную конечную точку для выхода из системы. Конечная точка для выхода из SAML: https://XXXXX/adfs/ls/{your_saml_logout_request}. Конечная точка с "? Wa = wsignout1.0" предназначена для выхода из ws-federation и фактически не очищает cookie для сеанса входа в SAML. Чтобы заставить работать выход SAML, проверьте соответствие алгоритма хэширования для SP и ADFS. Кроме того, ваш запрос на выход из системы должен быть подписан.

0 голосов
/ 02 июля 2018

Я столкнулся с подобной проблемой. Теперь я очищаю свои cookie-файлы аутентификации Azure AD следующим образом. Возможно, это не лучшее решение, но оно работает

 while (Request.Cookies["MyCookie"] != null && Request.Cookies["MyCookie1"] != null)
        {
            Request.Cookies["MyCookie"].Expires = DateTime.Now.AddDays(-5);
            Response.Cookies.Add(new HttpCookie("MyCookie"));
            Request.Cookies["MyCookie1"].Expires = DateTime.Now.AddDays(-5);
            Response.Cookies.Add(new HttpCookie("MyCookie1"));                
        }
...