IPermission 介面

定義

警告

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

定義由權限類型實作的方法。

public interface class IPermission : System::Security::ISecurityEncodable
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public interface IPermission : System.Security.ISecurityEncodable
public interface IPermission : System.Security.ISecurityEncodable
[System.Runtime.InteropServices.ComVisible(true)]
public interface IPermission : System.Security.ISecurityEncodable
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type IPermission = interface
    interface ISecurityEncodable
type IPermission = interface
    interface ISecurityEncodable
[<System.Runtime.InteropServices.ComVisible(true)>]
type IPermission = interface
    interface ISecurityEncodable
Public Interface IPermission
Implements ISecurityEncodable
衍生
屬性
實作

備註

注意事項

.NET Framework 和 .NET 的所有版本中,代碼存取安全性(CAS)已被棄用。 最新版本的 .NET 不會接受 CAS 註釋,如果使用 CAS 相關 API,則會產生錯誤。 開發人員應尋求其他方法來完成安全任務。

公共語言執行時中的權限是描述可為指定資源保護的操作集合的物件。 權限物件描述受安全控制的操作或存取;它不代表存取權或執行操作的權利。 應用程式程式碼與 .NET Framework 安全系統的權限皆以以下方式使用:

  • 程式碼請求執行所需的權限。
  • 安全系統政策會授權程式碼執行。
  • 程式碼要求呼叫程式碼必須有權限。
  • 程式碼會用 assert/deny/permit-only 來覆蓋安全堆疊。

Note

如果你寫了新的權限,你必須在你的類別中實作這個介面。

Important

權限可以被多個執行緒存取。 實作此介面時,必須確保 IsSubsetOfIntersectUnionCopy 方法實作皆為執行緒安全。

方法

名稱 Description
Copy()
已淘汰.

建立並回傳與目前權限相同的副本。

Demand()
已淘汰.

若未達成安全要求,執行時會拋出 a SecurityException

FromXml(SecurityElement)
已淘汰.

從 XML 編碼中重建具有指定狀態的安全物件。

(繼承來源 ISecurityEncodable)
Intersect(IPermission)
已淘汰.

建立並回傳一個權限,該權限是目前權限與指定權限的交集。

IsSubsetOf(IPermission)
已淘汰.

判斷目前權限是否屬於指定權限的子集。

ToXml()
已淘汰.

建立安全物件及其當前狀態的 XML 編碼。

(繼承來源 ISecurityEncodable)
Union(IPermission)
已淘汰.

建立一個權限,結合目前權限與指定權限。

適用於