FormsAuthentication:如何为特定子目录/MVC控制器指定不同的cookie名称?
-
02-10-2019 - |
题
我正在使用formauthentication(带有cookie)进行用户身份验证,并使用默认的cookie名称(“ .aspxauth”)。
我需要的是“/admin/”虚拟目录的不同登录系统(由ASP.NET MVC控制器,“ AdminController”支持)...好像“/admin/”目录是另一个Web应用程序,但没有在我的解决方案中创建另一个Web项目。
在运行时,如何自定义formauthentication使用的cookie名称? formauthentication.formscookiename已阅读(和静态...),并且只能在Web.config ...中只能自定义一次。
我应该创建一个自定义formauthentication module吗?
如下以下的控制器过滤器可能很棒:
[CustomFormsAuthenticationCookie("NewCookieName")]
public class AdminController : Controller
{
解决方案
诀窍是基础身份验证框架确实无法处理 - 您无法运行多个形式的身份验证位。最简单的解决方案是将管理位分解为一个单独的网站,该网站最终会居住在其他地方,不会陷入公共网站的身份验证中。
不隶属于 StackOverflow