我的web.config
<location path="Admin">
<system.web>
<authorization>
<allow roles="Administrator"/>
<deny users="?"/>
</authorization>
</system.web>
</location>
<location path="Admin/Page1">
<system.web>
<authorization>
<allow roles="SubAdmin"/>
</authorization>
</system.web>
</location>
这是否会正确阻止Admin / Page1的“Administrator”和“SubAdmin”角色以外的所有人?
或者我是否必须将<allow roles="Administrator"/> <deny users="?"/>
添加到Admin / Page1部分?
答案 0 :(得分:0)
如果可能,请将web.configs保留在每个文件夹中,而不是保留在一个web.config中。
我不确定哪个角色更强大 - 管理员或SubAdmin。您需要在嵌套文件夹中保留最强大的角色。
仅限内部管理员文件夹
<?xml version="1.0"?>
<configuration>
<system.web>
<authorization>
<allow roles="Administrator"/>
<deny users="*"/>
</authorization>
</system.web>
</configuration>
在SubAdmin和Administrator文件夹中
<?xml version="1.0"?>
<configuration>
<system.web>
<authorization>
<allow roles="Administrator, SubAdmin"/>
<deny users="*"/>
</authorization>
</system.web>
</configuration>
答案 1 :(得分:0)
你可以这样使用它:
<allow roles="Admin"/>
<allow roles="SubAdmin"/>
<deny users="*"/>
供将来参考:http://msdn.microsoft.com/en-us/library/8d82143t%28VS.71%29.aspx