UrlIdentityPermission 类

定义

注意

Code Access Security is not supported or honored by the runtime.

为代码的来源 URL 定义标识权限。 此类不能被继承。

public ref class UrlIdentityPermission sealed : System::Security::CodeAccessPermission
public sealed class UrlIdentityPermission : System.Security.CodeAccessPermission
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public sealed class UrlIdentityPermission : System.Security.CodeAccessPermission
[System.Serializable]
public sealed class UrlIdentityPermission : System.Security.CodeAccessPermission
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class UrlIdentityPermission : System.Security.CodeAccessPermission
type UrlIdentityPermission = class
    inherit CodeAccessPermission
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type UrlIdentityPermission = class
    inherit CodeAccessPermission
[<System.Serializable>]
type UrlIdentityPermission = class
    inherit CodeAccessPermission
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type UrlIdentityPermission = class
    inherit CodeAccessPermission
Public NotInheritable Class UrlIdentityPermission
Inherits CodeAccessPermission
继承
UrlIdentityPermission
属性

注解

注意

代码访问安全性 (CAS) 已在所有版本的 .NET Framework 和 .NET 中弃用。 如果使用与 CAS 相关的 API,最新版本的 .NET 不会遵循 CAS 注释,并会生成错误。 开发人员应寻求用于完成安全任务的替代方法。

考虑完整的 URL,包括 http、HTTPS、FTP) 和 文件 (协议。 例如, http://www.fourthcoffee.com/process/grind.htm 是一个完整的 URL。

URL 可以完全匹配,也可以由最后位置的通配符匹配,例如: http://www.fourthcoffee.com/process/*。 URL 还可以在点分隔符处包含通配符 (“*”) 前缀。 例如,URL 名称字符串http://www.fourthcoffee.com/process/grind.htm/是 和 http://*.com/process/grind.htm/http://*.fourthcoffee.com/process/grind.htm/子集。

重要

从.NET Framework 4 开始,不使用标识权限。

在.NET Framework版本 1.0 和 1.1 中,即使调用程序集完全受信任,对标识权限的要求也有效。 也就是说,尽管调用程序集具有完全信任,但如果程序集不符合所需的条件,则对标识权限的要求会失败。 从.NET Framework版本 2.0 开始,如果调用程序集具有完全信任,则对标识权限的要求无效。 也就是说,如果已向程序集授予完全信任,则无论程序集的标识如何,对标识的需求始终成功。 这可确保所有权限的一致性,消除了将标识权限视为特殊情况。

注意

在.NET Framework 4 之前的.NET Framework版本中,可以使用 CodeAccessPermission.Deny 方法防止受信任的代码无意中访问系统资源。 Deny 现已过时,对资源的访问现在完全由程序集的已授予权限集决定。 若要限制对文件的访问权限,必须在沙盒中运行部分受信任的代码,并仅将其权限分配给允许该代码访问的资源。 有关在沙盒中运行应用程序的信息,请参阅 如何:在沙盒中运行部分受信任的代码

注意

在.NET Framework版本 1.0 和 1.1 中,标识权限不能具有Unrestricted权限状态值。 从.NET Framework版本 2.0 开始,标识权限可以具有任何权限状态值。 这意味着在 2.0 及更高版本中,标识权限的行为与实现 IUnrestrictedPermission 接口的权限的行为相同。

构造函数

UrlIdentityPermission(PermissionState)
已过时.

使用指定的 UrlIdentityPermission 初始化 PermissionState 类的新实例。

UrlIdentityPermission(String)
已过时.

初始化 UrlIdentityPermission 类的新实例,以表示 site 所描述的 URL 标识。

属性

Url
已过时.

获取或设置表示 Internet 代码的标识的 URL。

方法

Assert()
已过时.

声明调用代码能够通过调用此方法的代码,访问受权限请求保护的资源,即使未对堆栈中处于较高位置的调用方授予访问该资源的权限。 使用 Assert() 会引起安全问题。

(继承自 CodeAccessPermission)
Copy()
已过时.

创建并返回当前权限的相同副本。

Demand()
已过时.

如果未对调用堆栈中处于较高位置的所有调用方授予当前实例所指定的权限,则在运行时强制 SecurityException

(继承自 CodeAccessPermission)
Deny()
已过时.
已过时.

防止处于调用堆栈较高位置的调用函数使用可以调用此方法来访问当前实例指定资源的代码。

(继承自 CodeAccessPermission)
Equals(Object)
已过时.

确定指定的 CodeAccessPermission 对象是否等于当前的 CodeAccessPermission

(继承自 CodeAccessPermission)
FromXml(SecurityElement)
已过时.

从 XML 编码重新构造具有指定状态的权限。

GetHashCode()
已过时.

获取 CodeAccessPermission 对象的哈希代码,此代码适合在哈希算法和数据结构(例如哈希表)中使用。

(继承自 CodeAccessPermission)
GetType()
已过时.

获取当前实例的 Type

(继承自 Object)
Intersect(IPermission)
已过时.

创建并返回一个权限,该权限是当前权限与指定权限的交集。

IsSubsetOf(IPermission)
已过时.

确定当前权限是否为指定权限的子集。

MemberwiseClone()
已过时.

创建当前 Object 的浅表副本。

(继承自 Object)
PermitOnly()
已过时.

防止处于调用堆栈较高位置的调用函数使用此代码,此代码将调用此方法来访问除当前实例指定的资源以外的所有资源。

(继承自 CodeAccessPermission)
ToString()
已过时.

创建并返回当前权限对象的字符串表示形式。

(继承自 CodeAccessPermission)
ToXml()
已过时.

创建权限及其当前状态的 XML 编码。

Union(IPermission)
已过时.

创建一个权限,该权限是当前权限与指定权限的并集。

适用于

另请参阅