问题描述
|
我的问题很天真,对此我深表歉意。我的受限访问文件夹的Web配置文件如下
<?xml version=\"1.0\" encoding=\"utf-8\"?>
<configuration>
<system.web>
<authorization>
<allow roles=\"Member\" />
<allow roles=\"Admin\" />
<deny users=\"?\" />
</authorization>
</system.web>
</configuration>
现在这适用于文件夹中的所有页面,有一种方法可以修改它,以使具有角色Member的任何用户都只能说members.aspx,而Admin可以访问整个页面。
我想我可以通过创建不同的文件夹并在其中存储不同的页面并根据需要分配webconfig来做到这一点,但我想知道是否可以在单个文件夹中获得页面级别的授权(基于角色)
谢谢 !
解决方法
您可以使用location元素指定对站点中不同的特定URL的访问。请注意,您可以从父级web.config中配置所有位置。不需要具有多个web.config文件。
<location path="members.aspx">
<system.web>
<authorization>
<allow roles="Member" />
<allow roles="Admin" />
<deny users="?" />
</authorization>
</system.web>
</location>
<location path="adminsonly.aspx">
<system.web>
<authorization>
<allow roles="Admin" />
<deny users="?" />
</authorization>
</system.web>
</location>