Compartilhar via


SecurityPermissionAttribute Classe

Definição

Cuidado

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

Permite que as ações de segurança para SecurityPermission sejam aplicadas ao código usando a segurança declarativa. Essa classe não pode ser herdada.

public ref class SecurityPermissionAttribute sealed : System::Security::Permissions::CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[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 SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type SecurityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
type SecurityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
type SecurityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type SecurityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
Public NotInheritable Class SecurityPermissionAttribute
Inherits CodeAccessSecurityAttribute
Herança
Atributos

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.

O escopo da declaração permitida depende do SecurityAction usado.

As informações de segurança declaradas por um atributo de segurança são armazenadas nos metadados do destino do atributo e acessadas pelo sistema em tempo de execução. Os atributos de segurança são usados apenas para segurança declarativa. Para segurança imperativa, use a classe de permissão correspondente.

Ao usar a SecurityPermissionAttribute classe , siga a ação de segurança com as permissões que estão sendo solicitadas. Cada permissão de segurança que pode ser solicitada, conforme definido na SecurityPermissionFlag enumeração, tem uma propriedade correspondente na SecurityPermissionAttribute classe . Por exemplo, para exigir a capacidade de acessar código não gerenciado, siga a instrução demand com a configuração de propriedade que está sendo solicitada, da seguinte maneira: SecurityPermissionAttribute(SecurityAction.Demand, UnmanagedCode=true).

Observação

Uma exceção à equivalência entre a SecurityPermissionFlag enumeração e as SecurityPermissionAttribute propriedades é que o valor de AllFlags enumeração é representado pela Unrestricted propriedade (herdada da SecurityAttribute classe ). Para exigir todas as permissões de segurança, especifique Unrestricted=true.

Construtores

SecurityPermissionAttribute(SecurityAction)
Obsoleto.

Inicializa uma nova instância da classe SecurityPermissionAttribute com o SecurityAction especificado.

Propriedades

Action
Obsoleto.

Obtém ou define uma ação de segurança.

(Herdado de SecurityAttribute)
Assertion
Obsoleto.

Obtém ou define um valor que indica se a permissão para declarar que todos os chamadores deste código têm a permissão necessária para a operação é declarada.

BindingRedirects
Obsoleto.

Obtém ou define um valor que indica se o código tem permissão para executar o redirecionamento de associação no arquivo de configuração de aplicativo.

ControlAppDomain
Obsoleto.

Obtém ou define um valor que indica se a permissão para manipular AppDomain é declarada.

ControlDomainPolicy
Obsoleto.

Obtém ou define um valor que indica se a permissão para alterar ou manipular a política de segurança de domínio é declarada.

ControlEvidence
Obsoleto.

Obtém ou define um valor que indica se a permissão para alterar ou manipular evidência é declarada.

ControlPolicy
Obsoleto.

Obtém ou define um valor que indica se a permissão para exibir e manipular a política de segurança é declarada.

ControlPrincipal
Obsoleto.

Obtém ou define um valor que indica se a permissão para manipular a entidade de segurança atual é declarada.

ControlThread
Obsoleto.

Obtém ou define um valor que indica se a permissão para manipular threads é declarada.

Execution
Obsoleto.

Obtém ou define um valor que indica se a permissão para executar código é declarada.

Flags
Obsoleto.

Obtém ou define todos os sinalizadores de permissão que compõem as permissões SecurityPermission.

Infrastructure
Obsoleto.

Obtém ou define um valor que indica se o código pode conectar-se à infraestrutura de Common Language Runtime, como ao adicionar Coletores de Contexto de Comunicação Remota, Coletores Envoy e Coletores Dinâmico.

RemotingConfiguration
Obsoleto.

Obtém ou define um valor que indica se o código pode configurar os tipos e canais de comunicação remota.

SerializationFormatter
Obsoleto.

Obtém ou define um valor que indica se o código pode usar um formatador de serialização para serializar ou desserializar um objeto.

SkipVerification
Obsoleto.

Obtém ou define um valor que indica se a permissão para ignorar a verificação de código é declarada.

TypeId
Obsoleto.

Quando implementado em uma classe derivada, obtém um identificador exclusivo para este Attribute.

(Herdado de Attribute)
UnmanagedCode
Obsoleto.

Obtém ou define um valor que indica se a permissão para chamar código não gerenciado é declarada.

Unrestricted
Obsoleto.

Obtém ou define um valor que indica se a permissão total (irrestrita) para o recurso protegido pelo atributo é declarada.

(Herdado de SecurityAttribute)

Métodos

CreatePermission()
Obsoleto.

Cria e retorna um novo SecurityPermission.

Equals(Object)
Obsoleto.

Retorna um valor que indica se essa instância é igual a um objeto especificado.

(Herdado de Attribute)
GetHashCode()
Obsoleto.

Retorna o código hash para a instância.

(Herdado de Attribute)
GetType()
Obsoleto.

Obtém o Type da instância atual.

(Herdado de Object)
IsDefaultAttribute()
Obsoleto.

Quando substituído em uma classe derivada, indica se o valor dessa instância é o valor padrão para a classe derivada.

(Herdado de Attribute)
Match(Object)
Obsoleto.

Quando substituído em uma classe derivada, retorna um valor que indica se essa instância é igual a um objeto especificado.

(Herdado de Attribute)
MemberwiseClone()
Obsoleto.

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()
Obsoleto.

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Implantações explícitas de interface

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)
Obsoleto.

Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição.

(Herdado de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)
Obsoleto.

Recupera as informações de tipo para um objeto, que pode ser usado para obter as informações de tipo para uma interface.

(Herdado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)
Obsoleto.

Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1).

(Herdado de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)
Obsoleto.

Fornece acesso a propriedades e métodos expostos por um objeto.

(Herdado de Attribute)

Aplica-se a

Confira também