Обработка аутентификации с несколькими провайдерами членства - PullRequest
2 голосов
/ 23 апреля 2009

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

В корневой и других папках есть другие страницы, предназначенные для гостевых посетителей.

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

Поскольку у меня может быть 1 запись формы аутентификации в веб-конфигурации, как я могу настроить приложение для отправки в правильную форму входа? (например, событие httpApplication.Authorize)

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

Это лучший подход? Есть ли другой способ?

Спасибо

1 Ответ

2 голосов
/ 30 июля 2009

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

...