FileIOPermissionAttribute Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Attention
Code Access Security is not supported or honored by the runtime.
Permet d’appliquer les actions de sécurité de FileIOPermission au code à l’aide de la sécurité déclarative. Cette classe ne peut pas être héritée.
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
- Héritage
- Attributs
Exemples
L’exemple de code suivant montre comment demander FileIOPermission à l’aide de la FileIOPermissionAttribute classe, en indiquant la seule autorisation à accorder au code.
[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
L’exemple suivant montre comment exiger que le code appelant dispose d’un code sans restriction FileIOPermission. Vous effectuez généralement des demandes dans les bibliothèques managées (DLL) pour protéger les méthodes ou les classes contre le code potentiellement dangereux.
[FileIOPermissionAttribute(SecurityAction::Demand,Unrestricted=true)]
[FileIOPermissionAttribute(SecurityAction.Demand, Unrestricted=true)]
<FileIOPermissionAttribute(SecurityAction.Demand, _
Unrestricted := True)> Public Class SampleClass
Remarques
Attention
La sécurité d’accès du code (CAS) a été déconseillée dans toutes les versions du .NET Framework et de .NET. Les versions récentes de .NET ne respectent pas les annotations CAS et produisent des erreurs si les API liées à CAS sont utilisées. Les développeurs doivent chercher d’autres moyens pour accomplir les tâches liées à la sécurité.
Les fichiers et les répertoires sont spécifiés à l’aide de chemins d’accès absolus. Lors de l’accès aux fichiers, une case activée de sécurité est effectuée lors de la création ou de l’ouverture du fichier. La case activée de sécurité n’est pas effectuée à nouveau, sauf si le fichier est fermé et rouvert. La vérification des autorisations lors de la première consultation du fichier réduit l’impact de l’case activée de sécurité sur les performances de l’application, car l’ouverture d’un fichier ne se produit qu’une seule fois, tandis que la lecture et l’écriture peuvent se produire plusieurs fois.
L’étendue de la déclaration autorisée dépend du SecurityAction qui est utilisé.
Les informations de sécurité déclarées par un attribut de sécurité sont stockées dans les métadonnées de la cible d’attribut et sont accessibles par le système au moment de l’exécution. Les attributs de sécurité sont utilisés uniquement pour la sécurité déclarative. Pour une sécurité impérative, utilisez la classe d’autorisation correspondante.
Attention
Unrestricted
FileIOPermission accorde l’autorisation pour tous les chemins d’accès d’un système de fichiers, y compris plusieurs noms de chemins qui peuvent être utilisés pour accéder à un seul fichier donné. Pour Deny accéder à un fichier, vous devez Deny
tous les chemins d’accès possibles au fichier. Par exemple, si \\server\share est mappé au lecteur réseau X, pour Deny
accéder à \\server\share\file, vous devez Deny
\\server\share\file, X :\file et tout autre chemin que vous pouvez utiliser pour accéder au fichier.
Constructeurs
FileIOPermissionAttribute(SecurityAction) |
Obsolète.
Initialise une nouvelle instance de la classe FileIOPermissionAttribute avec le SecurityAction spécifié. |
Propriétés
Action |
Obsolète.
Obtient ou définit une action de sécurité. (Hérité de SecurityAttribute) |
All |
Obsolète.
Obsolète.
Obtient ou définit l'accès complet pour le fichier ou le répertoire spécifié par la valeur de chaîne. |
AllFiles |
Obsolète.
Obtient ou définit l’accès autorisé pour tous les fichiers. |
AllLocalFiles |
Obsolète.
Obtient ou définit l’accès autorisé pour tous les fichiers locaux. |
Append |
Obsolète.
Obtient ou définit l'accès en ajout pour le fichier ou le répertoire spécifié par la valeur de chaîne. |
ChangeAccessControl |
Obsolète.
Obtient ou définit le fichier ou le répertoire dans lequel les informations de contrôle d'accès peuvent être modifiées. |
PathDiscovery |
Obsolète.
Obtient ou définit le fichier ou le répertoire pour lequel accorder l'autorisation de découverte du chemin d'accès. |
Read |
Obsolète.
Obtient ou définit l'accès en lecture pour le fichier ou le répertoire spécifié par la valeur de chaîne. |
TypeId |
Obsolète.
Lors de l'implémentation dans une classe dérivée, obtient un identificateur unique pour l'objet Attribute. (Hérité de Attribute) |
Unrestricted |
Obsolète.
Obtient ou définit une valeur indiquant si l'autorisation complète (sans restriction) d'accès à la ressource protégée par l'attribut est déclarée. (Hérité de SecurityAttribute) |
ViewAccessControl |
Obsolète.
Obtient ou définit le fichier ou le répertoire dans lequel les informations de contrôle d'accès peuvent être affichées. |
ViewAndModify |
Obsolète.
Obtient ou définit le fichier ou répertoire dans lequel les données de fichier peuvent être affichées et modifiées. |
Write |
Obsolète.
Obtient ou définit l'accès en écriture pour le fichier ou le répertoire spécifié par la valeur de chaîne. |
Méthodes
CreatePermission() |
Obsolète.
Crée et retourne un nouveau FileIOPermission. |
Equals(Object) |
Obsolète.
Retourne une valeur qui indique si cette instance est égale à un objet spécifié. (Hérité de Attribute) |
GetHashCode() |
Obsolète.
Retourne le code de hachage de cette instance. (Hérité de Attribute) |
GetType() |
Obsolète.
Obtient le Type de l'instance actuelle. (Hérité de Object) |
IsDefaultAttribute() |
Obsolète.
En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut pour la classe dérivée. (Hérité de Attribute) |
Match(Object) |
Obsolète.
En cas de substitution dans une classe dérivée, retourne une valeur indiquant si cette instance équivaut à un objet spécifié. (Hérité de Attribute) |
MemberwiseClone() |
Obsolète.
Crée une copie superficielle du Object actuel. (Hérité de Object) |
ToString() |
Obsolète.
Retourne une chaîne qui représente l'objet actuel. (Hérité de Object) |
Implémentations d’interfaces explicites
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Obsolète.
Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch. (Hérité de Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Obsolète.
Récupère les informations de type pour un objet, qui peuvent être utilisées pour obtenir les informations de type d'une interface. (Hérité de Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Obsolète.
Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1). (Hérité de Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Obsolète.
Fournit l'accès aux propriétés et aux méthodes exposées par un objet. (Hérité de Attribute) |
S’applique à
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour