ReflectionPermissionFlag Énumération
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.
Spécifie l'utilisation autorisée des espaces de noms System.Reflection et System.Reflection.Emit.
Cette énumération prend en charge une combinaison au niveau du bit de ses valeurs membres.
public enum class ReflectionPermissionFlag
[System.Flags]
public enum ReflectionPermissionFlag
[System.Flags]
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public enum ReflectionPermissionFlag
[System.Flags]
[System.Serializable]
public enum ReflectionPermissionFlag
[System.Flags]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum ReflectionPermissionFlag
[<System.Flags>]
type ReflectionPermissionFlag =
[<System.Flags>]
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type ReflectionPermissionFlag =
[<System.Flags>]
[<System.Serializable>]
type ReflectionPermissionFlag =
[<System.Flags>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ReflectionPermissionFlag =
Public Enum ReflectionPermissionFlag
- Héritage
- Attributs
Champs
AllFlags | 7 |
|
MemberAccess | 2 | Les opérations d'appel sur tous les membres sont autorisées, quel que soit le jeu d'autorisations. Si cet indicateur n'est pas défini, les opérations d'appel sont autorisées uniquement sur des membres visibles. |
NoFlags | 0 | L'énumération de types et de membres est autorisée. Les opérations d'appel sont autorisées sur les types et les membres visibles. |
ReflectionEmit | 4 | L'émission de symboles de débogage est autorisée. À compter de .NET Framework 2.0 Service Pack 1, cet indicateur n’est plus nécessaire pour émettre du code. |
RestrictedMemberAccess | 8 | L'accès membre restreint est fourni pour le code d'un niveau de confiance partiel. Le code d'un niveau de confiance partiel peut accéder à des types et des membres non publics, mais uniquement si le jeu d'autorisations du code d'un niveau de confiance partiel inclut toutes les autorisations dans le jeu d'autorisations de l'assembly qui contient les types et les membres non publics faisant l'objet d'un accès. Cet indicateur est nouveau dans .NET Framework 2.0 SP1. |
TypeInformation | 1 | Cet indicateur est obsolète. Aucun indicateur n'est nécessaire pour énumérer les types et les membres et pour examiner leurs métadonnées. Utilisez plutôt NoFlags. |
Exemples
L’exemple suivant montre comment utiliser l’énumération ReflectionPermissionFlag
pour initialiser une nouvelle instance de la ReflectionPermission classe qui représente le droit d’effectuer un accès membre restreint. Cet exemple fait partie d’un exemple plus grand fourni pour la ReflectionPermission classe.
Pour obtenir un exemple montrant comment utiliser l’indicateur RestrictedMemberAccess avec du code Internet, consultez procédure pas à pas : émission de code dans des scénarios d’approbation partielle.
ReflectionPermission restrictedMemberAccessPerm = new ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess);
Dim restrictedMemberAccessPerm As New ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess)
Remarques
Attention
La sécurité de l’accès au code (CAS) a été déconseillée dans toutes les versions de .NET Framework et .NET. Les versions récentes de .NET ne respectent pas les annotations CAS et produisent des erreurs si les API associées au cas sont utilisées. Les développeurs doivent rechercher d’autres moyens d’accomplir des tâches de sécurité.
Cette énumération est utilisée par les classes et ReflectionPermissionAttribute les ReflectionPermission classes. Si aucune valeur n’est ReflectionPermission accordée, la réflexion est autorisée sur tous les types et membres, mais les opérations d’appel sont autorisées uniquement sur les types et membres visibles. Pour plus d’informations, consultez Considérations relatives à la sécurité de la réflexion.
Attention
Étant donné que ReflectionPermission vous pouvez fournir l’accès aux membres de classe privée, nous vous recommandons d’accorder ReflectionPermission au code Internet uniquement avec l’indicateur RestrictedMemberAccess
et non avec d’autres indicateurs.
L’indicateur RestrictedMemberAccess
est introduit dans .NET Framework 2.0 SP1. Pour utiliser cet indicateur, votre application doit cibler .NET Framework 3.5 ou version ultérieure.
Important
AllFlags
n’inclut pas l’indicateur RestrictedMemberAccess
. Pour obtenir un masque qui inclut tous les indicateurs de cette énumération, vous devez utiliser la combinaison de AllFlags
.RestrictedMemberAccess
À compter de .NET Framework 2.0 SP1, l’indicateur n’est plus nécessaire pour émettre du ReflectionEmit
code, sauf si des symboles de débogage sont émis. Pour utiliser cette fonctionnalité, votre application doit cibler .NET Framework 3.5 ou version ultérieure.
À compter de .NET Framework 2.0, l’indicateur TypeInformation
n’est plus nécessaire pour refléter les types et les membres non publics ; l’indicateur a été marqué comme obsolète.