SecurityPermissionAttribute Classe

Definição

Cuidado

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

Cuidado

CAS support is not available with Silverlight applications.

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.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Obsolete("CAS support is not available with Silverlight applications.")]
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
[<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)>]
[<System.Obsolete("CAS support is not available with Silverlight applications.")>]
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 são 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 de demanda 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.
Obsoleto.

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

Propriedades

Action
Obsoleto.
Obsoleto.

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

(Herdado de SecurityAttribute)
Assertion
Obsoleto.
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.
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.
Obsoleto.

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

ControlDomainPolicy
Obsoleto.
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.
Obsoleto.

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

ControlPolicy
Obsoleto.
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.
Obsoleto.

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

ControlThread
Obsoleto.
Obsoleto.

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

Execution
Obsoleto.
Obsoleto.

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

Flags
Obsoleto.
Obsoleto.

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

Infrastructure
Obsoleto.
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.
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.
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.
Obsoleto.

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

TypeId
Obsoleto.
Obsoleto.

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

(Herdado de Attribute)
UnmanagedCode
Obsoleto.
Obsoleto.

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

Unrestricted
Obsoleto.
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.
Obsoleto.

Cria e retorna um novo SecurityPermission.

Equals(Object)
Obsoleto.
Obsoleto.

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

(Herdado de Attribute)
GetHashCode()
Obsoleto.
Obsoleto.

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

(Herdado de Attribute)
GetType()
Obsoleto.
Obsoleto.

Obtém o Type da instância atual.

(Herdado de Object)
IsDefaultAttribute()
Obsoleto.
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.
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.
Obsoleto.

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()
Obsoleto.
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.
Obsoleto.

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

(Herdado de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)
Obsoleto.
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.
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.
Obsoleto.

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

(Herdado de Attribute)

Aplica-se a

Confira também