FormsAuthentication: как указать разные имена файлов cookie для определенных подкаталогов / контроллеров MVC? - PullRequest
2 голосов
/ 15 сентября 2010

Я использую FormsAuthentication (с файлами cookie) для проверки подлинности пользователей с именем файла cookie по умолчанию (".ASPXAUTH").

Мне нужна другая система входа для виртуального каталога "/ Admin /" (поддерживаемая контроллером ASP.NET MVC, "AdminController") ... как если бы каталог "/ Admin /" был другим веб-приложением , но без создания другого веб-проекта внутри моего решения.

Как я могу настроить во время выполнения имя файла cookie, используемого FormsAuthentication? FormsAuthentication.FormsCookieName доступен только для чтения (и статический ...) и может быть настроен только один раз в файле web.config ...

Должен ли я создать собственный модуль FormsAuthenticationModule?

Может пригодиться фильтр контроллера, подобный следующему:

[CustomFormsAuthenticationCookie("NewCookieName")]
public class AdminController : Controller
{

1 Ответ

1 голос
/ 15 сентября 2010

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

...