ReflectionPermissionFlag Enumeração

Definição

Especifica o uso permitido dos namespaces System.Reflection e System.Reflection.Emit.

Essa enumeração dá suporte a uma combinação bit a bit dos valores de membro.

public enum class ReflectionPermissionFlag
[System.Flags]
[System.Serializable]
public enum ReflectionPermissionFlag
[System.Flags]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum ReflectionPermissionFlag
[<System.Flags>]
[<System.Serializable>]
type ReflectionPermissionFlag = 
[<System.Flags>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ReflectionPermissionFlag = 
Public Enum ReflectionPermissionFlag
Herança
ReflectionPermissionFlag
Atributos

Campos

Nome Valor Description
NoFlags 0

A enumeração de tipos e membros é permitida. As operações de invocação são permitidas em tipos e membros visíveis.

TypeInformation 1

Este sinalizador é obsoleto. Nenhum sinalizador é necessário para enumerar tipos e membros e examinar seus metadados. Use NoFlags em seu lugar.

MemberAccess 2

As operações de invocação em todos os membros são permitidas, independentemente do conjunto de concessões. Se esse sinalizador não estiver definido, as operações de invocação serão permitidas somente em membros visíveis.

ReflectionEmit 4

A emissão de símbolos de depuração é permitida. A partir do .NET Framework 2.0 Service Pack 1, esse sinalizador não é mais necessário para emitir código.

AllFlags 7

TypeInformation , MemberAccesse ReflectionEmit são definidos. AllFlags não inclui RestrictedMemberAccess.

RestrictedMemberAccess 8

O acesso restrito a membros é fornecido para código parcialmente confiável. O código parcialmente confiável pode acessar tipos e membros não públicos, mas somente se o conjunto de concessões do código parcialmente confiável incluir todas as permissões no conjunto de concessões do assembly que contém os tipos não públicos e os membros que estão sendo acessados.

Comentários

Caution

O CAS (Code Access Security) foi preterido em todas as versões do .NET Framework e do .NET. As versões recentes do .NET não honram as anotações CAS e geram erros se as APIs relacionadas ao CAS forem usadas. Os desenvolvedores devem buscar meios alternativos para realizar tarefas de segurança.

Essa enumeração é usada pelas classes e ReflectionPermissionAttribute pelas ReflectionPermission classes. Se não ReflectionPermission for concedido, a reflexão será permitida em todos os tipos e membros, mas as operações de invocação serão permitidas somente em tipos e membros visíveis. Para obter mais informações, consulte Considerações de segurança para reflexão.

Caution

Como ReflectionPermission pode fornecer acesso a membros de classe privada, recomendamos que você conceda ReflectionPermission ao código da Internet apenas com o RestrictedMemberAccess sinalizador e não com nenhum outro sinalizador.

Importante

AllFlags não inclui o RestrictedMemberAccess sinalizador. Para obter uma máscara que inclua todos os sinalizadores nesta enumeração, você deve usar a combinação de AllFlags com RestrictedMemberAccess.

Aplica-se a

Confira também