FileIOPermissionAttribute Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Attenzione
Code Access Security is not supported or honored by the runtime.
Consente di applicare azioni di sicurezza per FileIOPermission al codice usando la sicurezza dichiarativa. La classe non può essere ereditata.
public ref class FileIOPermissionAttribute 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 FileIOPermissionAttribute : 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 FileIOPermissionAttribute : 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 FileIOPermissionAttribute : 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 FileIOPermissionAttribute : 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 FileIOPermissionAttribute = 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 FileIOPermissionAttribute = 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 FileIOPermissionAttribute = 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 FileIOPermissionAttribute = class
inherit CodeAccessSecurityAttribute
Public NotInheritable Class FileIOPermissionAttribute
Inherits CodeAccessSecurityAttribute
- Ereditarietà
- Attributi
Esempio
Nell'esempio di codice seguente viene illustrato come richiedere FileIOPermission usando la FileIOPermissionAttribute classe , che indica l'unica autorizzazione che deve essere concessa al codice.
[FileIOPermissionAttribute(SecurityAction::PermitOnly,ViewAndModify="C:\\example\\sample.txt")]
[FileIOPermissionAttribute(SecurityAction.PermitOnly, ViewAndModify = "C:\\example\\sample.txt")]
<FileIOPermissionAttribute(SecurityAction.PermitOnly, _
ViewAndModify:="C:\example\sample.txt")> Public Class SampleClass
Nell'esempio seguente viene illustrato come richiedere che il codice chiamante disponga di un numero illimitato FileIOPermissiondi . In genere si richiedono librerie gestite (DLL) per proteggere metodi o classi da codice potenzialmente dannoso.
[FileIOPermissionAttribute(SecurityAction::Demand,Unrestricted=true)]
[FileIOPermissionAttribute(SecurityAction.Demand, Unrestricted=true)]
<FileIOPermissionAttribute(SecurityAction.Demand, _
Unrestricted := True)> Public Class SampleClass
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.
I file e le directory vengono specificati usando percorsi assoluti. Quando si accede ai file, viene eseguito un controllo di sicurezza quando il file viene creato o aperto. Il controllo di sicurezza non viene eseguito di nuovo a meno che il file non venga chiuso e riaperto. Il controllo delle autorizzazioni al primo accesso al file riduce al minimo l'impatto del controllo di sicurezza sulle prestazioni dell'applicazione perché l'apertura di un file avviene una sola volta, mentre la lettura e la scrittura possono verificarsi più volte.
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.
Attenzione
Unrestricted
FileIOPermission concede l'autorizzazione per tutti i percorsi all'interno di un file system, inclusi più nomi di percorso che possono essere usati per accedere a un singolo file specificato. Per Deny accedere a un file, è necessario Deny
tutti i percorsi possibili per il file. Ad esempio, se \\server\share è mappato all'unità di rete X, per Deny
accedere a \\server\share\file, è necessario Deny
\\server\share\file, X:\file e qualsiasi altro percorso che è possibile usare per accedere al file.
Costruttori
FileIOPermissionAttribute(SecurityAction) |
Obsoleti.
Inizializza una nuova istanza della classe FileIOPermissionAttribute con l'oggetto SecurityAction specificato. |
Proprietà
Action |
Obsoleti.
Ottiene o imposta un'azione di sicurezza. (Ereditato da SecurityAttribute) |
All |
Obsoleti.
Obsoleti.
Ottiene o imposta l'accesso completo per il file o la directory specificati dal valore di stringa. |
AllFiles |
Obsoleti.
Ottiene o imposta l'accesso autorizzato a tutti i file. |
AllLocalFiles |
Obsoleti.
Ottiene o imposta l'accesso autorizzato a tutti i file locali. |
Append |
Obsoleti.
Ottiene o imposta l'accesso Append per il file o la directory specificati dal valore di stringa. |
ChangeAccessControl |
Obsoleti.
Ottiene o imposta il file o la directory in cui è possibile modificare le informazioni sul controllo dell'accesso. |
PathDiscovery |
Obsoleti.
Ottiene o imposta il file o la directory a cui concedere l’accesso PathDiscovery. |
Read |
Obsoleti.
Ottiene o imposta l’accesso Read per il file o la directory specificata dal valore di stringa. |
TypeId |
Obsoleti.
Quando è implementata in una classe derivata, ottiene un identificatore univoco della classe Attribute. (Ereditato da Attribute) |
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) |
ViewAccessControl |
Obsoleti.
Ottiene o imposta il file o la directory in cui è possibile esaminare le informazioni sul controllo dell'accesso. |
ViewAndModify |
Obsoleti.
Ottiene o imposta il file o la directory in cui è possibile esaminare e modificare i dati dei file. |
Write |
Obsoleti.
Ottiene o imposta l’accesso Write per il file o la directory specificata dal valore di stringa. |
Metodi
CreatePermission() |
Obsoleti.
Crea e restituisce un nuovo oggetto FileIOPermission. |
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
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per