ASP.NET Membership Roles Web.config设置

时间:2010-11-25 19:07:19

标签: asp.net web-config

我想了解web.config上的system.web授权标记是如何工作的,以及每个属性和属性的确切含义。

例如,

是什么
  <system.web>
    <authorization>
      <deny users="?"/>
      <allow users="*"/>
    </authorization>
  </system.web>

具体来说,我想要做的是禁止未经身份验证的用户访问网站的大多数,允许某些网站访问属于某个角色的经过身份验证的用户,并允许完全访问权限来自第二个角色的用户。

2 个答案:

答案 0 :(得分:6)

<system.web>
    <authorization>
      <deny users="?"/>
      <allow users="*"/>
    </authorization>
</system.web>`

这将允许访问任何已登录的人。

<deny users="?"/>拒绝访问任何匿名用户 - 未登录的用户然后<allow users="*"/>将允许访问所有其他用户,在这种情况下,所有其他用户都是经过身份验证的用户。

如果这是在您的主web.config文件中,这将适用于整个网站。如果您想拥有不同级别的访问权限,可以使用<location>标记:

<location path="~/Admin">
 <system.web>
   <authorization>
     <allow roles="Admin"/>
     <deny users="*"/>
   </authorization>
 </system.web>

这将限制管理员文件夹中任何文件/文件夹以“管理员”角色访问用户。

答案 1 :(得分:2)

没关系,在msdn上找到它:

Authorization Element
Allow Element
Deny Element