Я потратил весь день на то, чтобы заставить его работать, хотя кажется, что он предназначен для явной функциональности для IIS7. Я просто не могу понять, что я ошибаюсь.Аутентификация на уровне сайта с помощью IIS7
Я хочу иметь веб-сайт (скажем, веб-сайт по умолчанию, это нормально), настроенный для проверки подлинности форм. Под этим я хочу сказать, что независимо от того, сколько веб-приложений настроено на этом веб-сайте, каждый раз, когда анонимный пользователь пытается получить доступ к ограниченному ресурсу, он отправляется на ту же страницу входа, которая собирает свои учетные данные и отправляет их обратно на ресурс они хотели в первую очередь.
Таким образом, я установил аутентификацию на веб-сайте следующим образом: в основном все выключено, за исключением анонимного (который, как я полагаю, должен быть включен, чтобы незащищенный материал был виден без входа в систему) и формирует аутентификацию. У меня есть проверка подлинности в форме, настроенная на использование страницы входа в настроенное приложение, поэтому: [по умолчанию веб-сайт \ auth \ login.aspx]
У меня есть незащищенное приложение, которое, конечно, прекрасно.
У меня есть другое приложение, у которого есть некоторый незащищенный контент у его корня ([по умолчанию веб-сайт \ test \ readme.html]), а другой каталог, где я добавил файл конфигурации, который имеет <deny users="?"/>
(так, [по умолчанию веб-сайт \ test \ secure \ readme.html]) в файле конфигурации. Конечно, мое намерение состоит в том, что анонимные пользователи пытаются получить ресурсы в этом каталоге, они будут перенаправлены на страницу входа для всего сайта.
К моему удивлению, случается так: если я отключу анонимный доступ для приложения, которое я хочу защитить, вместо отправки мне на страницу входа, настроенную на уровне веб-сайта, я просто вижу несанкционированное сообщение в браузер. Если я перейду на защищенное приложение, тогда никаких проблем не будет, и каждый может просто увидеть все ресурсы без входа.
Я что-то пропустил? Не должны ли веб-приложения, настроенные на веб-сайте, действовать одинаково и использовать схему проверки подлинности сайтов? Неужели я ошибаюсь в этом вопросе, или я просто делает что-то не так, чтобы это произошло?
Я также (после того, как с ним долгое время) установил страницу входа в раздел «Страницы ошибок» на главном веб-сайте для управления статусом 401, без везения.
Две вещи - это фактически не отвечает на мой большой вопрос с картинкой: «Не должны ли веб-приложения, настроенные на веб-сайте, действовать одинаково и использовать схему аутентификации сайтов?». Кроме того, я сделал эти изменения, и все действует точно так же, без радости. – user2403744
Вы ссылаетесь на свой корень в качестве веб-сайта. Является ли он веб-сайтом или настроен с помощью пула приложений? Я предполагаю, что с тех пор, как вы сконфигурировали формы auth в корневом каталоге, тогда у вас есть веб-конфиг и преобразован веб-сайт в веб-приложение в IIS? –