Я ударил эту проблему с выводом в течение длительного времени и не смог найти решение. Вначале мой сайт, использующий ADFS 2.0, не мог выписать, даже если был открыт правильный URL-адрес рассылки. Я думал, что некоторые куки не очищены. После этого я обнаружил, что это, вероятно, проблема сервера ADFS.ADFS 2.0, как очистить кеш учетных данных?
Я попытался:
- Остановить сервер IIS, так что я не имею мой сайт вообще, только тестирование ADFS.
- Очистить cookies браузера. Закрыть и снова открыть. Так что это чисто.
- Непосредственно подключитесь к adfs, например: https://mydomain/adfs/ls/?wtrealm=mysite&wa=wsignin1.0, здесь я получаю всплывающее окно для имени пользователя и пароля.
- Прямой выход из системы: https://mydomain/adfs/ls/?wtrealm=mysite&wa=wsignout1.0
- Очистить cookies браузера.
- Попробуйте войти в систему, используя URL-адрес от 3 снова. Я вошел в систему и не вижу всплывающих окон. В инструменте разработчика браузера. Я вижу перенаправление на мой сайт.
Я использовал Fiddler для захвата трафика, кажется, что аутентификация использует NTLM. Похоже, что браузер получил учетные данные откуда-то (а не в файлах cookie, как было подтверждено). Единственный способ получить всплывающее окно - закрыть процесс браузера и снова открыть URL-адрес входа. Кто-нибудь знает, как это сделать?
Спасибо за пояснения. Требуется ли 2012R2 для решения? Моя ADFS находится на 2008R2. – bigbearzhu
Для указанных опций да, поскольку это новые возможности, которые мы добавили в 2012R2. Существует 3-й вариант, который я не рекомендую, так как это может привести к неправильному поведению для вас, чтобы вы запросили «wauth = password-uri» wrefresh = 0, который заставляет U/P auth. Это работает в 2008R2. –