【发布时间】:2012-09-22 21:16:53
【问题描述】:
我有一个项目使用 ASP.NET Web Forms 很长时间了,安全方案让我们拒绝根 web.config 中的所有用户,并允许基于 web 的站点特定区域的用户.config 在某些文件夹中,如下所示:
<!-- Root Web.config -->
<authorization>
<deny users="*" />
</authorization>
<!-- ~/Admin Web.config -->
<authorization>
<allow roles="AdminRole" />
<deny users="*"/>
</authorization>
我正在将 MVC4 添加到这个项目中,我最初的理解是授权是通过如下属性控制的:
[Authorize(Roles="OtherSectionRole")]
public class OtherSectionController : Controller
{ ... }
这似乎不起作用,即使我使用Roles="*"。只有当我删除根 web.config deny * 时,我才能点击控制器操作。我错过了什么吗?我宁愿不删除根级别的全面授权以使 MVC 工作正常。提前致谢!
【问题讨论】:
标签: c# asp.net asp.net-mvc authorization asp.net-mvc-4