Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez aussi afficher la version anglaise dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte.
Traduction
Anglais
Cette documentation est archivée et n’est pas conservée.

ReflectionPermissionFlag, énumération

Spécifie l'utilisation autorisée des espaces de noms System.Reflection et System.Reflection.Emit.

Cette énumération possède un attribut FlagsAttribute qui permet la combinaison d'opérations de bits de ses valeurs de membres.

Espace de noms :  System.Security.Permissions
Assembly :  mscorlib (dans mscorlib.dll)

[SerializableAttribute]
[FlagsAttribute]
[ComVisibleAttribute(true)]
public enum ReflectionPermissionFlag

Nom de membreDescription
NoFlagsL'é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.
TypeInformation Obsolète. 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.
MemberAccessLes 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.
ReflectionEmit Obsolète. L'émission de symboles de débogage est autorisée. À compter du .NET Framework version 2.0 Service Pack 1, cet indicateur n'est plus requis pour émettre du code.
RestrictedMemberAccessL'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.
AllFlags Obsolète. TypeInformation , MemberAccess et ReflectionEmit sont définis. AllFlags n'inclut pas RestrictedMemberAccess.

Cette énumération est utilisée par les classes ReflectionPermission et ReflectionPermissionAttribute. Si aucun ReflectionPermission n'est accordé, 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 les membres visibles. Pour plus d'informations, consultez Considérations sur la sécurité de la réflexion.

Remarque AttentionAttention

Étant donné que ReflectionPermission peut permettre d'accéder aux membres de classes privées, nous conseillons d'accorder ReflectionPermission uniquement au code Internet avec l'indicateur RestrictedMemberAccess et non à tout autre indicateur.

L'indicateur RestrictedMemberAccess est présenté dans .NET Framework 2.0 SP1. Pour utiliser cet indicateur, votre application doit cibler le .NET Framework version 3.5 ou version ultérieure.

Remarque importanteImportant

AllFlags ne comprend pas l'indicateur RestrictedMemberAccess. Pour obtenir un masque qui inclut tous les indicateurs dans cette énumération, vous devez utiliser la combinaison de AllFlags avec RestrictedMemberAccess.

À partir du .NET Framework 2.0 SP1, l'indicateur ReflectionEmit n'est plus requis pour émettre du code, sauf si des symboles de débogage sont émis. Pour utiliser cette fonctionnalité, votre application doit cibler le .NET Framework 3.5 ou version ultérieure.

À partir du .NET Framework 2.0, l'indicateur TypeInformation n'est plus requis pour refléter les types et les membres non publics ; l'indicateur a été marqué comme obsolète.

L'exemple suivant montre comment utiliser l'énumération ReflectionPermissionFlag pour initialiser une nouvelle instance de la classe ReflectionPermission qui représente le droit d'effectuer l'accès membre restreint. Cet exemple est extrait d'un exemple plus développé fourni pour la classe ReflectionPermission.

Pour obtenir un exemple qui montre comment utiliser l'indicateur RestrictedMemberAccess avec le code Internet, consultez Procédure pas à pas : émission de code dans des scénarios de confiance partielle.


ReflectionPermission restrictedMemberAccessPerm = new ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess);


.NET Framework

Pris en charge dans : 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows XP SP2 Édition x64, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
Afficher: