authorization 的 allow 元素(ASP.NET 设置架构)
更新:2007 年 11 月
向授权规则映射添加一条允许对资源的访问的授权规则。
configuration 元素(常规设置架构)
system.web 元素(ASP.NET 设置架构)
authorization 元素(ASP.NET 设置架构)
authorization 的 allow 元素(ASP.NET 设置架构)
<allow
users="comma-separated list of users"
roles="comma-separated list of roles"
verbs="comma-separated list of verbs"
/>
属性和元素
下面几部分描述了属性、子元素和父元素。
属性
属性 |
说明 |
---|---|
users |
必选的 String 属性。 逗号分隔的用户名列表,这些用户具有访问资源的权限。问号 (?) 指示授予匿名用户对资源的访问权。星号 (*) 指示授予所有用户对资源的访问权。 |
roles |
必选的 String 属性。 一个逗号分隔的角色列表,已授予这些角色对资源的访问权。 |
verbs |
可选的 String 属性。 一个逗号分隔的 HTTP 传输方法列表,这些 HTTP 传输方法被授予对资源的访问权限。 注册到 ASP.NET 的谓词有 GET、HEAD、POST 和 DEBUG。 |
子元素
无。
父元素
元素 |
说明 |
---|---|
configuration |
指定公共语言运行时和 .NET Framework 应用程序所使用的每个配置文件中均需要的根元素。 |
system.web |
指定配置文件中 ASP.NET 配置设置的根元素,并包含用于配置 ASP.NET Web 应用程序和控制应用程序行为方式的配置元素。 |
authorization |
为 Web 应用程序配置授权。authorization 标记控制对 URL 资源的客户端访问。此元素可以在任何级别(计算机、站点、应用程序、子目录或页)上声明。 |
备注
allow 元素向存储在 authorization 元素中的授权规则映射添加一条允许对资源的访问的授权规则。
authorization 元素通过控制客户端对 URL 资源的访问,配置 Web 应用程序的授权。对于必选的属性,您可以使用 users 或/和 roles 属性。
运行时,授权模块从最本地的配置文件开始,循环访问 allow 和 deny 元素,直到它找到适合特定用户帐户的第一个访问规则。然后,该授权模块根据找到的第一个访问规则是 allow 还是 deny 规则来允许或拒绝对 URL 资源的访问。默认的授权规则为 <allow users="*"/>。因此,默认情况下允许访问,除非另外配置。
为了便于部署,支持表示当前计算机的句点 (.) 简便表示法。这使您能够用句点和反斜杠 (.\) 序列为每个用户或角色加上前缀,如下面的代码示例所示:
运行时,句点-反斜杠序列会替换为 "localmachinename\" 序列。只有当 Windows 标识用于请求时,才会进行此替换。这是为了避免在句点-反斜杠序列用于具有自定义主体的任意角色时产生冲突。
因为 authorization 元素不表示集合,所以没有 clear 或 remove 子元素。若要以编程方式清除授权规则映射,请使用 Clear() 或 Remove 方法。
默认配置
下面的默认 authorization 元素对于 .NET Framework 2.0 版在根 Web.config 文件中配置,而对于 .NET Framework 1.1 和 1.0 版在 Machine.config 文件中配置。
<authorization>
<allow users="*" />
</authorization>
示例
下面的代码示例演示如何拒绝对所有用户帐户的访问,以及允许对 admins 角色的所有成员的访问。
<configuration>
<system.web>
<authorization>
<allow roles="admins"/>
<deny users="*"/>
</authorization>
</system.web>
</configuration>
元素信息
配置节处理程序 |
|
配置成员 |
|
可配置的位置 |
Machine.config 根级别的 Web.config 应用程序级别的 Web.config 虚拟或物理目录级别的 Web.config |
要求 |
Microsoft Internet 信息服务 (IIS) 版本 5.0、5.1 或 6.0 .NET Framework 版本 1.0、1.1 或 2.0 Microsoft Visual Studio 2003 或 Visual Studio 2005 |
请参见
任务
概念
参考
authorization 元素(ASP.NET 设置架构)
authorization 的 deny 元素(ASP.NET 设置架构)