【问题标题】:Is it possible to have location authorization nodes in a web.config be external?是否可以将 web.config 中的位置授权节点设置为外部节点?
【发布时间】:2010-09-20 18:42:34
【问题描述】:

是否可以将 web.config 中的位置授权节点设置为外部节点?

这样我就可以把所有的节点都拿来

  <location path="elmah.axd">
    <system.web>
      <authorization>
        <allow roles="Administrator" />
        <deny users="*" />
      </authorization>
    </system.web>
  </location>      
  <location path="Admin">
    <system.web>
      <authorization>
        <allow roles="Administrator, Representative" />
        <deny users="*" />
      </authorization>
    </system.web>
  </location>

并将它们移出 web.config 或类似的东西?当这些节点相对静态时,我发现这些节点对 web.config 的噪音极大。通常我的方法是配置类似这样的源,但由于它属于根节点,我不确定这些节点是否可行。

【问题讨论】:

    标签: c# asp.net vb.net web-config


    【解决方案1】:

    您可以在每个文件夹中创建一个带有适当安全设置的 web.config,全部命名为 web config。

    • ~/members/web.config
    • ~/members/vip/web.config

    喜欢:

    <?xml version="1.0" encoding="utf-8"?>
      <configuration>
        <system.web>
        <authorization>
            <allow roles="developers" />
            <allow roles="testers" />
            <deny users="*" />
        </authorization>
       </system.web>
    </configuration>
    

    每个文件夹都可以有一个原始 web.config,因此将资源(处理程序、页面、控件)“按授权”移动到相应文件夹是一种好方法。

    【讨论】:

    • 我喜欢这个想法,因为这确实符合我的想法,即我的站点根目录上的任何内容都是公共的,并且特殊权限仅出现在目录树的深处
    猜你喜欢
    • 1970-01-01
    • 2020-12-07
    • 2011-09-28
    • 1970-01-01
    • 1970-01-01
    • 2014-11-24
    • 1970-01-01
    • 2015-10-12
    • 1970-01-01
    相关资源
    最近更新 更多