SecurityPermissionAttribute 類別

定義

警告

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

警告

CAS support is not available with Silverlight applications.

允許將 SecurityPermission 的安全性動作套用至使用宣告式安全性的程式碼。 此類別無法獲得繼承。

public ref class SecurityPermissionAttribute sealed : System::Security::Permissions::CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[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 SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Obsolete("CAS support is not available with Silverlight applications.")]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type SecurityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
type SecurityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
type SecurityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type SecurityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Obsolete("CAS support is not available with Silverlight applications.")>]
type SecurityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
Public NotInheritable Class SecurityPermissionAttribute
Inherits CodeAccessSecurityAttribute
繼承
屬性

備註

警告

程式碼啟用安全性 (CAS) 在所有版本的 .NET Framework 和 .NET 中已被取代。 最新版本的 .NET 不接受 CAS 批註,並在使用 CAS 相關 API 時產生錯誤。 開發人員應該尋求替代方式來完成安全性工作。

允許的宣告範圍取決於 SecurityAction 所使用的 。

安全性屬性所宣告的安全性資訊會儲存在屬性目標的中繼資料中,並在執行時間由系統存取。 安全性屬性僅用於宣告式安全性。 若要取得命令式安全性,請使用對應的許可權類別。

當您使用 類別 SecurityPermissionAttribute 時,請遵循安全性動作,並遵循要求的許可權 () 。 每個可以要求的安全性許可權,如 列舉中所 SecurityPermissionFlag 定義,都有 類別中的 SecurityPermissionAttribute 對應屬性。 例如,若要要求能夠存取 Unmanaged 程式碼,請遵循 demand 語句搭配所要求的屬性設定,如下所示: SecurityPermissionAttribute(SecurityAction.Demand, UnmanagedCode=true)

注意

列舉與 SecurityPermissionAttribute 屬性之間的 SecurityPermissionFlag 等價例外狀況是 AllFlags 列舉值是由 Unrestricted 繼承自 SecurityAttribute 類別) 屬性所表示 (。 若要要求所有安全性許可權,請指定 Unrestricted=true

建構函式

SecurityPermissionAttribute(SecurityAction)
已淘汰.
已淘汰.

使用指定的 SecurityPermissionAttribute 初始化 SecurityAction 類別的新執行個體。

屬性

Action
已淘汰.
已淘汰.

取得或設定安全性動作。

(繼承來源 SecurityAttribute)
Assertion
已淘汰.
已淘汰.

取得或設定值,表示是否宣告了權限,可判斷提示這個程式碼的所有呼叫端都要具有此作業的必要權限。

BindingRedirects
已淘汰.
已淘汰.

取得或設定值,表示程式碼是否有權限執行應用程式組態檔中的繫結重新導向。

ControlAppDomain
已淘汰.
已淘汰.

取得或設定值,指出是否宣告管理 AppDomain 的權限。

ControlDomainPolicy
已淘汰.
已淘汰.

取得或設定值,表示是否宣告變更或管理定義域安全性原則的權限。

ControlEvidence
已淘汰.
已淘汰.

取得或設定值,指出是否宣告變更或管理辨識項的權限。

ControlPolicy
已淘汰.
已淘汰.

取得或設定值,表示是否宣告檢視和管理安全性原則的權限。

ControlPrincipal
已淘汰.
已淘汰.

取得或設定值,表示是否宣告管理目前主體的權限。

ControlThread
已淘汰.
已淘汰.

取得或設定值,指出是否宣告管理執行緒的使用權限。

Execution
已淘汰.
已淘汰.

取得或設定值,指出是否已宣告執行程式碼的權限。

Flags
已淘汰.
已淘汰.

取得或設定所有組成 SecurityPermission 權限的權限旗標。

Infrastructure
已淘汰.
已淘汰.

取得或設定值,指出程式碼是否可插入 Common Language Runtime 基礎結構,例如加入遠端內容接收、Envoy 接收和動態接收。

RemotingConfiguration
已淘汰.
已淘汰.

取得或設定值,指出程式碼是否可以設定遠端類型和通道。

SerializationFormatter
已淘汰.
已淘汰.

取得或設定值,表示程式碼是否可以使用序列化格式子,將物件序列化或還原序列化。

SkipVerification
已淘汰.
已淘汰.

取得或設定值,指出是否已宣告略過程式碼驗證的權限。

TypeId
已淘汰.
已淘汰.

在衍生類別中實作時,取得這個 Attribute 的唯一識別碼。

(繼承來源 Attribute)
UnmanagedCode
已淘汰.
已淘汰.

取得或設定值,指出是否已宣告呼叫 Unmanaged 程式碼的權限。

Unrestricted
已淘汰.
已淘汰.

取得或設定數值,表示是否宣告由屬性所保護之資源的完整 (不受限制的) 使用權限。

(繼承來源 SecurityAttribute)

方法

CreatePermission()
已淘汰.
已淘汰.

建立及傳回新的 SecurityPermission

Equals(Object)
已淘汰.
已淘汰.

傳回值,這個值指出此執行個體是否與指定的物件相等。

(繼承來源 Attribute)
GetHashCode()
已淘汰.
已淘汰.

傳回這個執行個體的雜湊碼。

(繼承來源 Attribute)
GetType()
已淘汰.
已淘汰.

取得目前執行個體的 Type

(繼承來源 Object)
IsDefaultAttribute()
已淘汰.
已淘汰.

在衍生類別中覆寫時,表示這個執行個體的值是衍生類別的預設值。

(繼承來源 Attribute)
Match(Object)
已淘汰.
已淘汰.

在衍生類別中覆寫時,會傳回值,表示這個執行個體是否等於指定物件。

(繼承來源 Attribute)
MemberwiseClone()
已淘汰.
已淘汰.

建立目前 Object 的淺層複製。

(繼承來源 Object)
ToString()
已淘汰.
已淘汰.

傳回代表目前物件的字串。

(繼承來源 Object)

明確介面實作

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)
已淘汰.
已淘汰.

將一組名稱對應至一組對應的分派識別項 (Dispatch Identifier)。

(繼承來源 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)
已淘汰.
已淘汰.

擷取物件的類型資訊,可以用來取得介面的類型資訊。

(繼承來源 Attribute)
_Attribute.GetTypeInfoCount(UInt32)
已淘汰.
已淘汰.

擷取物件提供的類型資訊介面數目 (0 或 1)。

(繼承來源 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)
已淘汰.
已淘汰.

提供物件所公開的屬性和方法的存取權。

(繼承來源 Attribute)

適用於

另請參閱