Editatu

ReflectionPermissionAttribute Class

Definition

Caution

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

Allows security actions for ReflectionPermission to be applied to code using declarative security.

public ref class ReflectionPermissionAttribute 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 ReflectionPermissionAttribute : 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 ReflectionPermissionAttribute : 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 ReflectionPermissionAttribute = 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 ReflectionPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
Public NotInheritable Class ReflectionPermissionAttribute
Inherits CodeAccessSecurityAttribute
Inheritance
Attributes

Remarks

Caution

Code Access Security (CAS) has been deprecated across all versions of .NET Framework and .NET. Recent versions of .NET do not honor CAS annotations and produce errors if CAS-related APIs are used. Developers should seek alternative means of accomplishing security tasks.

The scope of the declaration that is allowed depends on the SecurityAction that is used.

The security information declared by a security attribute is stored in the metadata of the attribute target and is accessed by the system at run time. Security attributes are used only for declarative security. For imperative security, use the corresponding permission class.

Constructors

Name Description
ReflectionPermissionAttribute(SecurityAction)

Initializes a new instance of the ReflectionPermissionAttribute class with the specified SecurityAction.

Properties

Name Description
Flags

Gets or sets the current allowed uses of reflection.

MemberAccess

Gets or sets a value that indicates whether invocation of operations on non-public members is allowed.

ReflectionEmit
Obsolete.
Obsolete.

Gets or sets a value that indicates whether use of certain features in System.Reflection.Emit, such as emitting debug symbols, is allowed.

RestrictedMemberAccess

Gets or sets a value that indicates whether restricted invocation of non-public members is allowed. Restricted invocation means that the grant set of the assembly that contains the non-public member that is being invoked must be equal to, or a subset of, the grant set of the invoking assembly.

TypeInformation
Obsolete.
Obsolete.

Gets or sets a value that indicates whether reflection on members that are not visible is allowed.

Methods

Name Description
CreatePermission()

Creates and returns a new ReflectionPermission.

Applies to

See also