Compartilhar via


ReflectionPermission Classe

Definição

Cuidado

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

Controla o acesso a membros e tipos não públicos por meio das APIs System.Reflection. Controla alguns recursos das APIs System.Reflection.Emit.

public ref class ReflectionPermission sealed : System::Security::CodeAccessPermission, System::Security::Permissions::IUnrestrictedPermission
public sealed class ReflectionPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[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 ReflectionPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[System.Serializable]
public sealed class ReflectionPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class ReflectionPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
type ReflectionPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type ReflectionPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
[<System.Serializable>]
type ReflectionPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ReflectionPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
Public NotInheritable Class ReflectionPermission
Inherits CodeAccessPermission
Implements IUnrestrictedPermission
Herança
ReflectionPermission
Atributos
Implementações

Comentários

Cuidado

O CAS (Segurança de Acesso do Código) foi preterido em todas as versões do .NET Framework e do .NET. As versões recentes do .NET não aceitam anotações de CAS e produzem erros caso as APIs relacionadas ao CAS sejam usadas. Os desenvolvedores devem buscar meios alternativos de realizar tarefas de segurança.

Sem ReflectionPermission, o código pode usar reflexão para acessar apenas os membros públicos de objetos. O código com ReflectionPermission e os sinalizadores apropriados ReflectionPermissionFlag podem acessar os protected membros e private dos objetos .

Cuidado

Como ReflectionPermission pode fornecer acesso a tipos e membros não públicos, recomendamos que você não conceda ReflectionPermission ao código da Internet, exceto com o ReflectionPermissionFlag.RestrictedMemberAccess sinalizador . RestrictedMemberAccess permite o acesso a membros não públicos, com a restrição de que o conjunto de concessões dos membros não públicos deve ser igual ou um subconjunto do conjunto de concessões do código que acessa os membros não públicos.

Determinados recursos de emissão de reflexão, como emitir símbolos de depuração, exigem ReflectionPermission com o ReflectionPermissionFlag.ReflectionEmit sinalizador .

Para obter mais informações, consulte a enumeração ReflectionPermissionFlag.

Construtores

ReflectionPermission(PermissionState)
Obsoleto.

Inicializa uma nova instância da classe ReflectionPermission com permissão irrestrita ou totalmente restrita, conforme especificado.

ReflectionPermission(ReflectionPermissionFlag)
Obsoleto.

Inicializa uma nova instância da classe ReflectionPermission com o acesso especificado.

Propriedades

Flags
Obsoleto.

Obtém ou define o tipo de reflexão permitido para a permissão atual.

Métodos

Assert()
Obsoleto.

Declara que o código de chamada pode acessar o recurso protegido por uma demanda de permissão através do código que chama este método, mesmo que os chamadores na pilha não tenham recebido permissão para acessar o recurso. Usar Assert() pode criar problemas de segurança.

(Herdado de CodeAccessPermission)
Copy()
Obsoleto.

Cria e retorna uma cópia idêntica da permissão atual.

Demand()
Obsoleto.

Força um SecurityException no tempo de execução se todos os chamadores no topo da pilha de chamadas não receberam as permissões especificadas pela instância atual.

(Herdado de CodeAccessPermission)
Deny()
Obsoleto.
Obsoleto.

Impede que os chamadores no nível superior da pilha de chamadas usem o código que chama esse método para acessar o recurso especificado pela instância atual.

(Herdado de CodeAccessPermission)
Equals(Object)
Obsoleto.

Determina se o objeto CodeAccessPermission especificado é igual ao CodeAccessPermission atual.

(Herdado de CodeAccessPermission)
FromXml(SecurityElement)
Obsoleto.

Reconstrói um a permissão com um estado especificado de uma codificação XML.

GetHashCode()
Obsoleto.

Obtém um código hash para o objeto CodeAccessPermission atual, adequado para algoritmos de hash e estruturas de dados, tais como uma tabela de hash.

(Herdado de CodeAccessPermission)
GetType()
Obsoleto.

Obtém o Type da instância atual.

(Herdado de Object)
Intersect(IPermission)
Obsoleto.

Cria e retorna uma permissão que é a interseção de permissão atual e da permissão especificada.

IsSubsetOf(IPermission)
Obsoleto.

Determina se a permissão atual é um subconjunto da permissão especificada.

IsUnrestricted()
Obsoleto.

Retorna um valor que indica se a permissão atual é irrestrita.

MemberwiseClone()
Obsoleto.

Cria uma cópia superficial do Object atual.

(Herdado de Object)
PermitOnly()
Obsoleto.

Impede que os chamadores no topo da pilha de chamadas usem o código que chama esse método para acessar todos os recursos, com exceção do recurso especificado pela instância atual.

(Herdado de CodeAccessPermission)
ToString()
Obsoleto.

Cria e retorna uma representação de cadeia de caracteres do objeto de permissão atual.

(Herdado de CodeAccessPermission)
ToXml()
Obsoleto.

Cria uma codificação XML da permissão e de seu estado atual.

Union(IPermission)
Obsoleto.

Cria uma permissão que é a união entre a permissão atual e a permissão especificada.

Aplica-se a

Confira também