【问题标题】:Authorization in mixed web forms & mvc4 app混合网络表单和 mvc 4 应用程序中的授权
【发布时间】: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


    【解决方案1】:

    不久前我们不得不做一些类似的事情,结果我们把它搞砸了。我的意思是,我们将遗留的 asp.net 站点作为 mvc 应用程序的子应用程序,而不是相反。在 mvc 应用程序中,我们将登录页面的配置(我们使用这些站点的成员资格)设置为旧站点中的页面,然后我们保留旧站点的 web.config 原样。

    【讨论】:

      猜你喜欢
      • 2015-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多