HTTP 401 Challenge и HTTP 302 Login/Redirect не будут работать вместе в IIS7
Я занимаюсь разработкой веб-сайта с использованием.NET 3.5, который позволяет пользователям посещать сайт и создавать логины с использованием стандартных элементов управления входом Microsoft. Тем не менее, пользователям не нужно входить в систему, чтобы делать общие вещи, такие как просмотр продуктов.
Теперь мне нужно настроить сайт таким образом, чтобы некоторые из наших сотрудников по продаже путешествий могли получить к нему доступ, но не позволили кому-либо еще доступ к нему. Самый простой способ, которым я знаю, как это сделать, - включить проверку подлинности Windows для сайта в IIS7. Когда я это делаю, я получаю всевозможные ошибки из-за того, что включена проверка подлинности с помощью форм. Если я включаю Auth Forms, то получаю другую ошибку.
Кто-нибудь знает, как сделать так, чтобы Forms Auth и Windows Auth хорошо играли на одном сайте в IIS7, или каким-либо другим способом создать необходимый логин, не заставляя меня убивать Forms Auth?
2 ответа
Ответ заключается в том, что в настоящее время нет способа сделать это в IIS7. Поэтому мне пришлось реализовать специальный логин.
Посмотрите на эту статью: http://mvolo.com/blogs/serverside/archive/2008/02/11/IIS-7.0-Two_2D00_Level-Authentication-with-Forms-Authentication-and-Windows-Authentication.aspx
Это проливает некоторый свет на то, почему это так, и обеспечивает несколько ограниченный обходной путь. Может работать на вас или поставить вас на правильный путь.