authorization 元素(ASP.NET 设置架构)
[本文档仅供预览,在以后的发行版中可能会发生更改。包含的空白主题用作占位符。]
配置 Web 应用程序的授权,以控制客户端对 URL 资源的访问。
<authorization>
<allow .../>
<deny .../>
</authorization>
特性和元素
以下几节描述了特性、子元素和父元素。
特性
无。
子元素
子标记 |
说明 |
---|---|
allow |
向授权规则映射添加一个规则,该规则允许对资源进行访问。 |
deny |
向授权规则映射添加一条拒绝对资源的访问的授权规则。 |
父元素
元素 |
说明 |
---|---|
configuration |
指定公共语言运行时和 .NET Framework 应用程序所使用的每个配置文件中均需要的根元素。 |
system.web |
指定配置文件中 ASP.NET 配置设置的根元素,并包含用于配置 ASP.NET Web 应用程序和控制应用程序行为方式的配置元素。 |
备注
authorization 元素为 Web 应用程序配置授权,以控制对 URL 资源的客户端访问。
运行时,授权模块从最本地的配置文件开始,循环访问 allow 和 deny 元素,直到它找到适合特定用户帐户的第一个访问规则。 然后,该授权模块根据找到的第一个访问规则是 allow 还是 deny 规则来允许或拒绝对 URL 资源的访问。 默认的授权规则为 <allow users="*"/>。 因此,默认情况下允许访问,除非另外配置。
为了便于部署,支持表示当前计算机的句点 (.) 简便表示法。 这使您能够用句点-反斜杠序列 (.\) 为每个用户或角色加上前缀,如下所示:
<allow roles=".\roleName"/>
<allow users=".\userName"/>
运行时,句点-反斜杠序列会替换为 "本地计算机名\" 序列。 只有当 Microsoft Windows 标识用于请求时,才会进行此替换。 这是为了避免在句点-反斜杠序列用于具有自定义主体的任意规则时产生冲突。
因为 authorization 元素不表示集合,所以没有 clear 或 remove 子元素。 若要以编程方式清除授权规则映射,请使用 Clear() 或 Remove(AuthorizationRule) 方法。
默认配置
下面的默认 authorization 元素在 .Net Framework 2.0 版的根 Web.config 文件中配置,在 .NET Framework 1.1 和 1.0 版的 Machine.config 文件中配置。
<authorization>
<allow users="*" />
</authorization>
示例
下面的代码示例演示如何允许所有 Admins 角色成员进行访问以及如何拒绝所有 users 角色成员进行访问。
<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 |
请参见
任务
How to: Configure Specific Folders Using Location Settings
How to: Lock ASP.NET Configuration Settings
参考
authorization 的 allow 元素(ASP.NET 设置架构)
authorization 的 deny 元素(ASP.NET 设置架构)
概念
ASP.NET Configuration File Hierarchy
其他资源
Managing Authorization Using Roles