C# 混合web表单和mvc4应用程序中的授权

C# 混合web表单和mvc4应用程序中的授权,c#,asp.net,asp.net-mvc,authorization,asp.net-mvc-4,C#,Asp.net,Asp.net Mvc,Authorization,Asp.net Mvc 4,我有一个项目已经使用ASP.NET Web表单很长时间了,安全方案要求我们拒绝根Web.config中的所有用户,并允许用户在特定文件夹中基于Web.config的网站特定区域,如下所示: <!-- Root Web.config --> <authorization> <deny users="*" /> </authorization> <!-- ~/Admin Web.config --> <authorizati

我有一个项目已经使用ASP.NET Web表单很长时间了,安全方案要求我们拒绝根Web.config中的所有用户,并允许用户在特定文件夹中基于Web.config的网站特定区域,如下所示:

<!-- Root Web.config -->
<authorization>
    <deny users="*" />
</authorization>

<!-- ~/Admin Web.config -->
<authorization>
    <allow roles="AdminRole" />
    <deny users="*"/>
</authorization>
[Authorize(Roles="OtherSectionRole")]
public class OtherSectionController : Controller
{ ... }

这似乎不起作用,即使我使用Roles=*。只有当我删除根web.config deny*时,我才能点击控制器操作。我错过什么了吗?我不希望为了让MVC工作而删除根级别的全面授权。提前谢谢

不久前,我们也做了类似的事情,结果我们把它撞到了头上。我的意思是,我们将传统asp.net站点作为mvc应用程序的子应用程序,而不是相反。在mvc应用程序中,我们将使用这些站点成员身份的登录页面的配置设置为遗留站点中的页面,然后保留遗留站点的web.config原样