我设置了角色管理,只有具有“员工”角色的用户才能查看页面。但是,它允许任何登录的人查看该页面,如何更改它以便只有那些同时登录并具有“员工”角色的用户才能查看我的页面?
<location path="About.aspx">
<system.web>
<authorization>
<deny users="?"/>
<allow roles="Employee"/>
</authorization>
</system.web>
</location>
答案 0 :(得分:3)
根据MSDN:
在运行时,授权模块遍历allow和 拒绝元素,从最本地的配置文件开始,直到 授权模块找到适合的第一个访问规则 特定用户帐户。然后,授权模块授予或 拒绝访问URL资源,具体取决于是否第一次访问 找到的规则是允许或拒绝规则
根据该解释,您应该允许员工(因为这将首先匹配),然后拒绝其他人。
<location path="About.aspx">
<system.web>
<authorization>
<allow roles="Employee"/>
<deny users="*"/>
</authorization>
</system.web>
</location>