Condividi tramite


SecurityPermissionAttribute Classe

Definizione

Attenzione

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

Consente di applicare azioni di sicurezza per SecurityPermission al codice usando la sicurezza dichiarativa. La classe non può essere ereditata.

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.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
Public NotInheritable Class SecurityPermissionAttribute
Inherits CodeAccessSecurityAttribute
Ereditarietà
Attributi

Commenti

Attenzione

La sicurezza dall'accesso al codice è stata deprecata in tutte le versioni di .NET Framework e .NET. Le versioni recenti di .NET non rispettano le annotazioni CAS e generano errori se vengono usate API correlate a CAS. Gli sviluppatori devono cercare metodi alternativi per eseguire attività di sicurezza.

L'ambito della dichiarazione consentita dipende dall'oggetto SecurityAction utilizzato.

Le informazioni di sicurezza dichiarate da un attributo di sicurezza vengono archiviate nei metadati della destinazione dell'attributo e sono accessibili dal sistema in fase di esecuzione. Gli attributi di sicurezza vengono usati solo per la sicurezza dichiarativa. Per la sicurezza imperativa, usare la classe di autorizzazione corrispondente.

Quando si usa la SecurityPermissionAttribute classe , seguire l'azione di sicurezza con le autorizzazioni richieste. Ogni autorizzazione di sicurezza che può essere richiesta, come definito nell'enumerazione SecurityPermissionFlag , ha una proprietà corrispondente nella SecurityPermissionAttribute classe . Ad esempio, per richiedere la possibilità di accedere al codice non gestito, seguire l'istruzione demand con l'impostazione della proprietà richiesta, come indicato di seguito: . SecurityPermissionAttribute(SecurityAction.Demand, UnmanagedCode=true)

Nota

Un'eccezione all'equivalenza tra l'enumerazione SecurityPermissionFlag e le SecurityPermissionAttribute proprietà è che il AllFlags valore di enumerazione è rappresentato dalla Unrestricted proprietà (ereditata dalla SecurityAttribute classe ). Per richiedere tutte le autorizzazioni di sicurezza, specificare Unrestricted=true.

Costruttori

SecurityPermissionAttribute(SecurityAction)
Obsoleti.

Inizializza una nuova istanza della classe SecurityPermissionAttribute con l'oggetto SecurityAction specificato.

Proprietà

Action
Obsoleti.

Ottiene o imposta un'azione di sicurezza.

(Ereditato da SecurityAttribute)
Assertion
Obsoleti.

Ottiene o imposta un valore che indica se è stata dichiarata l'autorizzazione per l'asserzione secondo la quale tutti i chiamanti di questo codice hanno l'autorizzazione necessaria per l'operazione.

BindingRedirects
Obsoleti.

Ottiene o imposta un valore che indica se il codice dispone dell'autorizzazione necessaria per eseguire il reindirizzamento dell'associazione nel file di configurazione dell'applicazione.

ControlAppDomain
Obsoleti.

Ottiene o imposta un valore che indica se è dichiarata l'autorizzazione per modificare AppDomain.

ControlDomainPolicy
Obsoleti.

Ottiene o imposta un valore che indica se è dichiarata l'autorizzazione per modificare o gestire i criteri di sicurezza del dominio.

ControlEvidence
Obsoleti.

Ottiene o imposta un valore che indica se è dichiarata l'autorizzazione per alterare o modificare l'evidenza.

ControlPolicy
Obsoleti.

Ottiene o imposta un valore che indica se è dichiarata l'autorizzazione per visualizzare e modificare i criteri di sicurezza.

ControlPrincipal
Obsoleti.

Ottiene o imposta un valore che indica se è stata dichiarata l'autorizzazione per modificare l'entità corrente.

ControlThread
Obsoleti.

Ottiene o imposta un valore che indica se è dichiarata l'autorizzazione per modificare thread.

Execution
Obsoleti.

Ottiene o imposta un valore che indica se è dichiarata l'autorizzazione per eseguire il codice.

Flags
Obsoleti.

Ottiene o imposta tutti i flag di autorizzazione che comprendono le autorizzazioni SecurityPermission.

Infrastructure
Obsoleti.

Ottiene o imposta un valore che indica se il codice può essere inserito nell'infrastruttura Common Language Runtime, ad esempio aggiungendo sink di contesto remoto, di invio e dinamici.

RemotingConfiguration
Obsoleti.

Ottiene o imposta un valore che indica se nel codice possono essere configurati canali e tipi in remoto.

SerializationFormatter
Obsoleti.

Ottiene o imposta un valore che indica se il codice può usare un formattatore di serializzazione per serializzare o deserializzare un oggetto.

SkipVerification
Obsoleti.

Ottiene o imposta un valore che indica se è stata dichiarata l'autorizzazione per ignorare la verifica del codice.

TypeId
Obsoleti.

Quando è implementata in una classe derivata, ottiene un identificatore univoco della classe Attribute.

(Ereditato da Attribute)
UnmanagedCode
Obsoleti.

Ottiene o imposta un valore che indica se è dichiarata l'autorizzazione per chiamare il codice non gestito.

Unrestricted
Obsoleti.

Ottiene o imposta un valore che indica se esiste una dichiarazione di autorizzazione completa, ovvero senza restrizioni, alla risorsa protetta dall’attributo.

(Ereditato da SecurityAttribute)

Metodi

CreatePermission()
Obsoleti.

Crea e restituisce un nuovo oggetto SecurityPermission.

Equals(Object)
Obsoleti.

Restituisce un valore che indica se questa istanza è uguale a un oggetto specificato.

(Ereditato da Attribute)
GetHashCode()
Obsoleti.

Restituisce il codice hash per l'istanza.

(Ereditato da Attribute)
GetType()
Obsoleti.

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
IsDefaultAttribute()
Obsoleti.

In caso di override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata.

(Ereditato da Attribute)
Match(Object)
Obsoleti.

Quando è sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato.

(Ereditato da Attribute)
MemberwiseClone()
Obsoleti.

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ToString()
Obsoleti.

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)
Obsoleti.

Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch.

(Ereditato da Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)
Obsoleti.

Recupera le informazioni sul tipo relative a un oggetto, che possono essere usate per ottenere informazioni sul tipo relative a un'interfaccia.

(Ereditato da Attribute)
_Attribute.GetTypeInfoCount(UInt32)
Obsoleti.

Recupera il numero delle interfacce di informazioni sul tipo fornite da un oggetto (0 o 1).

(Ereditato da Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)
Obsoleti.

Fornisce l'accesso a proprietà e metodi esposti da un oggetto.

(Ereditato da Attribute)

Si applica a

Vedi anche