Назад | Перейти на главную страницу

Заблокируйте сайт с помощью Forms Auth в IIS7 с Windows Auth

У меня есть приложение ASP.NET MVC 1.0, которое использует проверку подлинности с помощью форм. Мы используем Windows Server 2008. Мне нужно заблокировать сайт, чтобы только определенные пользователи (в группах AD) могли получить доступ к сайту. К сожалению, однако, когда я настроил сайт, чтобы не разрешать анонимным пользователям и использовать проверку подлинности Windows, из-за интеграции сайта и IIS, он показывает, что пользователь вошел в систему в качестве своей учетной записи домена, вместо того, чтобы разрешать им вход через формы Авт.

Итак, мне нужна аутентификация в смешанном режиме. Мне нужно, чтобы сайт был доступен только через авторизацию Windows, без анонимных пользователей, но как только вы войдете, ему нужно будет использовать только авторизацию форм. Как мне поступить правильно?

Вы должны отключить встроенную проверку подлинности Windows и использовать функции поставщика IIS и «поставщик ролей AD». Пример приведен здесь:

https://stackoverflow.com/questions/726837/user-group-and-role-management-in-net-with-active-directory/728808#728808

Я не проверял это, но я вернусь к вам сегодня вечером. Вы можете настроить свое приложение MVC для проверки подлинности с помощью форм, как и в настоящее время. Но в IIS7 щелкните сайт (в папке «Сайты») и выберите аутентификацию, отключите анонимную аутентификацию и включите аутентификацию Windows. Затем щелкните свой веб-сайт правой кнопкой мыши и выберите разрешения на редактирование. Затем щелкните вкладку Безопасность и группы AD, которым вы хотите предоставить доступ к сайту.

РЕДАКТИРОВАТЬ: Также проверьте это, так как это выглядит полезным для того, что вы делаете: http://learn.iis.net/page.aspx/142/understanding-iis-70-url-authorization/