У меня возникает странная ситуация, которую я пытаюсь диагностировать и буду признателен за любой совет, где искать.
У меня есть приложение ASP.NET, использующее WIF, которое содержит другое приложение ASP.NET в качестве дочернего в IIS 7.5. Это дочернее приложение содержит веб-службу на основе REST. Доступ к этой службе напрямую путем вставки URL-адреса в браузер приведет к перенаправлению на страницу входа ADFS. Вот как я ожидаю, что это сработает. Странно то, что у меня есть вторая среда с теми же развернутыми приложениями и службами, и в этой среде меня никогда не перенаправляют на страницу входа.
Я проверил, что все файлы web.config идентичны, а также проверил все настройки IIS, которые, по моему мнению, могут быть связаны. Для просмотра веб-страниц во второй среде требуется вход в систему, но не при просмотре непосредственно файла REST .svc. Я проверил все HttpModules и сопоставления обработчиков в IIS. Я также включил трассировку событий Microsoft.IdentityModel, и в первой среде можно увидеть базовые записи для перенаправления на STS. Во второй среде я не вижу событий WIF. Кажется, что SessionAuthenticationModule вызывается, когда я исследую поток данных с помощью трассировки неудачных событий IIS, но я не уверен, почему он не требует проверки подлинности.
Я знаком с проблемами, связанными с файлами cookie в WIF, и убедился, что все настройки cookieHandler верны. Я также закрыл окна браузера и очистил все файлы cookie, чтобы убедиться, что модуль SessionAuthenticationModule не видит предыдущие файлы cookie WIF.
Если вы можете придумать что-нибудь еще, я должен проверить, пожалуйста, дайте мне знать.