SecurityPermissionFlag Enumeração

Definição

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

Esta enumeração suporta uma combinação bit-a-bit dos respetivos valores 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

Name Valor Description
NoFlags 0

Sem acesso de segurança.

Assertion 1

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

UnmanagedCode 2

Capacidade de chamar código não gerido.

Como o código não gerido potencialmente permite que outras permissões sejam contornadas, esta é uma permissão perigosa que só deve ser concedida a código altamente confiável. É usado para aplicações como chamar código nativo usando PInvoke ou usar interoperação COM.

SkipVerification 4

Capacidade de saltar a verificação do código nesta assembleia. Código não verificável pode ser executado se esta permissão for concedida.

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

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

Execution 8

Permissão para o código correr. Sem esta permissão, o código gerido não será executado.

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

ControlThread 16

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

ControlEvidence 32

Capacidade de fornecer provas, incluindo a capacidade de alterar as provas fornecidas pelo runtime da linguagem comum.

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

ControlPolicy 64

Capacidade de visualizar e modificar políticas.

Esta é uma permissão poderosa que só deve ser concedida a 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 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 remotos.

Infrastructure 4096

Permissão para ligar código à infraestrutura de runtime da linguagem comum, como adicionar Remoting Context Sinks, Envoy Sinks e Dynamic Sinks.

BindingRedirects 8192

Permissão para realizar redirecionamento explícito de binding no ficheiro de configuração da aplicação. Isto inclui o redirecionamento de assemblies .NET que foram unificados, bem como de outros assemblies encontrados fora do .NET.

AllFlags 16383

O estado irrestrito da autorização.

Observações

Atenção

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 respeitam as anotações do CAS e produzem erros se as APIs relacionadas ao CAS forem usadas. Os desenvolvedores devem procurar meios alternativos de realizar tarefas de segurança.

Esta enumeração é usada por SecurityPermission.

Atenção

Muitas destas bandeiras são poderosas e só devem ser concedidas a código altamente confiável.

Aplica-se a

Ver também