无法在单个位置元素中指定多个路径。我想你要问的是这样的:
<location path="Default.aspx,aboutus.aspx,contactus,aspx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
不幸的是,我不相信这是可能的。
你有几个选择如何做到这一点。
A)指定位置元素多次,一个是要允许匿名访问的每个文件:
<location path="Default.aspx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="aboutus.aspx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="contactus,aspx">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
B)把所有要允许在一个单独的匿名访问的文件目录,就像上面提到的Admirer一样。 C)你可能想使用文件授权而不是URL授权。通过文件授权,您可以将Windows ACL权限直接分配给文件。可以将要保护的文件分配给一个Windows帐户,以及希望允许匿名访问另一个ACL帐户的文件。然后,您的任务是使用ASP.Net模拟将匿名访问请求中的请求映射到只能访问未受保护文件的windows帐户的安全上下文中,并将请求从经过身份验证的请求映射到Windows帐户有权访问所有文件。
我不确定你想要走这条路,因为只需要多次复制“location”元素,一次为每个要公开给匿名访问的资源,可能会简单得多。但如果你想看看这个,有一些好的资源here或here
感谢您的回复。这真的很有帮助。 – techblog 2012-04-29 03:58:55