Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 4 如何为带有Web窗体组件的MVC站点配置站点授权?_Asp.net Mvc 4_Web Config_Authorization_Forms Authentication_Webforms - Fatal编程技术网

Asp.net mvc 4 如何为带有Web窗体组件的MVC站点配置站点授权?

Asp.net mvc 4 如何为带有Web窗体组件的MVC站点配置站点授权?,asp.net-mvc-4,web-config,authorization,forms-authentication,webforms,Asp.net Mvc 4,Web Config,Authorization,Forms Authentication,Webforms,我有一个MVC站点,需要使用ReportViewer控件与SSR集成。这意味着我需要在网站中有一个专门用于处理报告的Web表单页面。谢天谢地,这是相当无痛的。然而,我的身份验证/授权的管理方式产生了一些问题 目前,我有一个全局过滤器将authorized属性应用于所有控制器。然后,我在登录控制器上用AllowAnonymous属性修饰了相应的方法 这并不影响Web表单页面,尽管这意味着匿名用户可以直接导航到它 在web.config中,我尝试了以下方法: <system.web>

我有一个MVC站点,需要使用ReportViewer控件与SSR集成。这意味着我需要在网站中有一个专门用于处理报告的Web表单页面。谢天谢地,这是相当无痛的。然而,我的身份验证/授权的管理方式产生了一些问题

目前,我有一个全局过滤器将
authorized属性
应用于所有控制器。然后,我在登录控制器上用
AllowAnonymous
属性修饰了相应的方法

这并不影响Web表单页面,尽管这意味着匿名用户可以直接导航到它

在web.config中,我尝试了以下方法:

<system.web>
    <authorization>
        <deny users="?"/>
    </authorization>
    <authentication mode="Forms">
      <forms loginUrl="login/index" defaultUrl="home/index"/>
    </authentication>

    ...etc...
</system.web>

这是正确的方法吗?或者我可以避免使用两个单独的位置来管理授权设置吗?

您使用的是站点地图吗?不,我们没有使用站点地图。
<location path="Reports.aspx">
  <system.web>
    <authorization>
      <deny users="?"/>
    </authorization>
  </system.web>
</location>
<system.web>

  <authentication mode="Forms">
    <forms loginUrl="login/index" defaultUrl="home/index"/>
  </authentication>

  ...etc...
</system.web>