<NetFx40_LegacySecurityPolicy> 元素
指定运行时是否使用旧版代码访问安全性 (CAS) 策略。
configuration
runtime
<NetFx40_LegacySecurityPolicy>
注意
代码访问安全性 (CAS) 已在所有版本的 .NET Framework 和 .NET 中弃用。 如果使用与 CAS 相关的 API,最新版本的 .NET 不会遵循 CAS 注释,并会生成错误。 开发人员应寻求用于完成安全任务的替代方法。
语法
<NetFx40_LegacySecurityPolicy
enabled="true|false"/>
特性和元素
下列各节描述了特性、子元素和父元素。
特性
属性 | 描述 |
---|---|
enabled |
必需的特性。 指定运行时是否使用旧版 CAS 策略。 |
enabled 特性
值 | 说明 |
---|---|
false |
运行时不使用旧版 CAS 策略。 这是默认值。 |
true |
运行时使用旧版 CAS 策略。 |
子元素
无。
父元素
元素 | 说明 |
---|---|
configuration |
公共语言运行时和 .NET Framework 应用程序所使用的每个配置文件中的根元素。 |
runtime |
包含有关运行时初始化选项的信息。 |
备注
在 .NET Framework 3.5 版及更早版本中,CAS 策略始终有效。 在 .NET Framework 4 中,必须启用 CAS 策略。
CAS 策略特定于版本。 .NET Framework 早期版本中的自定义 CAS 策略必须在 .NET Framework 4 中重新指定。
将 <NetFx40_LegacySecurityPolicy>
元素应用于 .NET Framework 4 程序集不会影响安全透明代码;透明度规则仍然适用。
重要
应用 <NetFx40_LegacySecurityPolicy>
元素可能会对由本机映像生成器 (Ngen.exe) 创建且没有安装在全局程序集缓存中的本机映像程序集造成显著的性能损失。 性能降低的原因是,当应用该属性时,运行时无法将程序集作为本机映像加载,从而导致它们作为实时程序集加载。
注意
如果在 Visual Studio 项目的项目设置中指定的目标 .NET Framework 版本早于 .NET Framework 4,则会启用 CAS 策略,包括为该版本指定的任何自定义 CAS 策略。 但是,你将不能使用新的 .NET Framework 4 类型和成员。 也可以通过使用应用程序配置文件的启动设置架构中的 <supportedRuntime> 元素来指定早期版本的 .NET Framework。
注意
配置文件语法区分大小写。 应该使用语法部分和示例部分中提供的语法。
配置文件
此元素只能在应用程序配置文件中使用。
示例
以下示例演示如何为应用程序启用旧版 CAS 策略。
<configuration>
<runtime>
<NetFx40_LegacySecurityPolicy enabled="true"/>
</runtime>
</configuration>