ReflectionPermissionFlag Enumeração
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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
- 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 |
|
| 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.