SecurityPermissionFlag Enumeração

Definição

Especifica sinalizadores de acesso para o objeto de permissão de segurança.

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

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

Campos

Nome Valor Description
NoFlags 0

Sem acesso de segurança.

Assertion 1

Capacidade de afirmar que todos os chamadores desse código têm a permissão necessária para a operação.

UnmanagedCode 2

Capacidade de chamar código não gerenciado.

Como o código não gerenciado potencialmente permite que outras permissões sejam ignoradas, essa é uma permissão perigosa que só deve ser concedida a código altamente confiável. Ele é usado para aplicativos como chamar código nativo usando PInvoke ou usando interoperabilidade COM.

SkipVerification 4

Capacidade de ignorar a verificação de código neste assembly. O código não verificável poderá ser executado se essa permissão for concedida.

Essa é uma permissão poderosa que deve ser concedida apenas a um código altamente confiável.

Esse sinalizador não tem efeito quando usado dinamicamente com modificadores de pilha, como Deny(), Assert()e PermitOnly().

Execution 8

Permissão para a execução do código. Sem essa permissão, o código gerenciado não será executado.

Esse sinalizador não tem efeito quando usado dinamicamente com modificadores de pilha, como Deny(), Assert()e PermitOnly().

ControlThread 16

Capacidade de usar determinadas operações avançadas em threads.

ControlEvidence 32

Capacidade de fornecer evidências, incluindo a capacidade de alterar as evidências fornecidas pelo common language runtime.

Essa é uma permissão poderosa que só deve ser concedida a um código altamente confiável.

ControlPolicy 64

Capacidade de exibir e modificar a política.

Essa é uma permissão poderosa que só deve ser concedida a um código altamente confiável.

SerializationFormatter 128

Capacidade de fornecer serviços de serialização. Usado por formatadores de serialização.

ControlDomainPolicy 256

Capacidade de especificar a política de domínio.

ControlPrincipal 512

Capacidade de manipular o objeto principal.

ControlAppDomain 1024

Capacidade de criar e manipular um AppDomain.

RemotingConfiguration 2048

Permissão para configurar tipos e canais de Comunicação Remota.

Infrastructure 4096

Permissão para conectar código à infraestrutura de common language runtime, como adicionar coletores de contexto de comunicação remota, coletores envoy e coletores dinâmicos.

BindingRedirects 8192

Permissão para executar o redirecionamento de associação explícita no arquivo de configuração do aplicativo. Isso inclui o redirecionamento de .NET assemblies que foram unificados, bem como outros assemblies encontrados fora .NET.

AllFlags 16383

O estado irrestrito da permissão.

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 por SecurityPermission.

Caution

Muitos desses sinalizadores são poderosos e só devem ser concedidos a códigos altamente confiáveis.

Aplica-se a

Confira também