我的ASP.NET MVC站点要求对某些资源(下载、讨论论坛等)进行基于表单的身份验证。这对 [Authorize] 属性。
[Authorize]
但是,我需要我的管理站点(`~/areas/admin/*)对Active Directory进行身份验证。
对于常规的ASP.NET或经典的ASP,我只需进入IIS配置并更改目录安全性以拒绝匿名用户。但是,我不能用一个区域来解决这个问题。
我知道把 [authorize] 我的管理区域中控制器的属性需要登录,但它将使用与站点公共区域相同的基于表单的授权。现在,它根据数据库对用户进行身份验证(而不是使用ASP.NET成员资格系统,因为它对我的应用程序来说是多余的)。我需要用户根据域进行身份验证,但仅限于管理区域。
[authorize]
思想?
您需要编写自己的自定义域授权属性并将其添加到管理控制器。
请看下面的答案: asp.net mvc Adding to the AUTHORIZE attribute