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

时间:2010-09-20 18:42:35

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

是否可以将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相对静态时会产生极大的噪音。通常我的方法是配置像这样的源,但由于它属于根节点,我不确定这些节点是否可行。

1 个答案:

答案 0 :(得分:2)

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

  • 〜/构件/ web.config中
  • 〜/构件/ 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,因此将资源(处理程序,页面,控件)“per-authorazition”移动到相应的文件夹是一个很好的方法。