2010-05-26 3 views
8

Может ли кто-нибудь сказать мне, можно ли использовать как базовую, так и бланковую аутентификацию на моем сайте, не вмешиваясь друг в друга?Использование базовой проверки подлинности и проверки подлинности форм на том же сайте

У меня есть новый сайт, который я хочу видеть только для определенных людей.

На сайте есть область, в которой используется проверка подлинности форм, и теперь, когда кто-либо входит на сайт после прохождения базовой проверки подлинности, они направляются на страницу проверки подлинности форм, хотя они должны просматривать страницу, которая не защищена формами аутентификация.

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

+0

Как ваша аутентификация настроена прямо сейчас? – MarioDS

+0

Пожалуйста, размещайте некоторые данные (код или псевдокод) о том, как настроена ваша аутентификация/авторизация. Это больше похоже на проблему * авторизации *, чем на проблему аутентификации, если вы перенаправлены в неправильное место. Вы используете 'AuthorizeAttribute'? Вы используете 'AllowAnonymousAttribute'? См. [Как создать минимальный, полный и проверенный пример] (http://stackoverflow.com/help/mcve). – NightOwl888

+0

Я обновил вопрос. Атрибут '[Authorize]' используется и работает по назначению с помощью Autodesk Forms. Однако весь сайт должен быть защищен базовой аутентификацией. То есть Когда пользователь пытается получить доступ к сайту, ему предлагается диалоговое окно входа в браузер. После очистки этого пользователя пользователь должен иметь возможность просматривать весь сайт, исключая методы/контроллеры с атрибутами '[Authorize]' (где для проверки доступа к этим частям сайта требуется формальная аутентификация) – cnorthfield

ответ

2

Похоже, что вы просто не настроили проверку подлинности для конкретной области, но настроили ее на все.

Посмотрите на the authorization element и the location element (если вы хотите управлять настройками в основном Web.config, вместо создания Web.config для области участника).

См. Также ASP.NET Forms Authentication and a "No Authentication" subfolder (кроме того, что вы хотите обратить вспять).

1

Один из вариантов заключается в том, чтобы написать свой собственный базовый атрибут фильтра аутентификации и защитить действие, требующее базовой аутентификации с помощью настраиваемого атрибута. Действие контроллера, которое требует проверки подлинности, должно быть защищено с помощью обычного атрибута [Авторизовать]. Пожалуйста, обратитесь на следующий пример: -

http://www.ryadel.com/en/http-basic-authentication-asp-net-mvc-using-custom-actionfilter/

У меня была аналогичная проблема в прошлом, но было больше вдоль линий предоставления базовой аутентификации для REST вызовов и аутентификации формы, когда кто-то доступ к сайту MVC. Мы закончили создание собственного фильтра проверки подлинности

Смежные вопросы