StrongNameIdentityPermissionAttribute Classe

Definição

Permite que as ações de segurança para StrongNameIdentityPermission sejam aplicadas ao código usando a segurança declarativa.Allows security actions for StrongNameIdentityPermission to be applied to code using declarative security. Esta classe não pode ser herdada.This class cannot be inherited.

public ref class StrongNameIdentityPermissionAttribute 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)]
public sealed class StrongNameIdentityPermissionAttribute : 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 StrongNameIdentityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.Runtime.InteropServices.ComVisible(true)]
[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 StrongNameIdentityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
type StrongNameIdentityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
Public NotInheritable Class StrongNameIdentityPermissionAttribute
Inherits CodeAccessSecurityAttribute
Herança
StrongNameIdentityPermissionAttribute
Atributos

Comentários

Importante

Não há mais suporte para código parcialmente confiável.Partially trusted code is no longer supported. Esse atributo não tem nenhum efeito no .NET Core.This attribute has no effect in .NET Core.

Importante

A partir do .NET Framework 4.NET Framework 4, as permissões de identidade não são usadas.Starting with the .NET Framework 4.NET Framework 4, identity permissions are not used.

Nas versões 1,0 e 1,1 do .NET Framework, as demandas das permissões de identidade são efetivas, mesmo quando o assembly de chamada é totalmente confiável.In the .NET Framework versions 1.0 and 1.1, demands on the identity permissions are effective, even when the calling assembly is fully trusted. Ou seja, embora o assembly de chamada tenha confiança total, uma demanda por uma permissão de identidade falhará se o assembly não atender aos critérios exigidos.That is, although the calling assembly has full trust, a demand for an identity permission fails if the assembly does not meet the demanded criteria. No .NET Framework versão 2,0 e posterior, as solicitações de permissões de identidade serão ineficazes se o assembly de chamada tiver confiança total.In the .NET Framework version 2.0 and later, demands for identity permissions are ineffective if the calling assembly has full trust. Isso garante a consistência de todas as permissões, eliminando o tratamento de permissões de identidade como um caso especial.This assures consistency for all permissions, eliminating the treatment of identity permissions as a special case.

O escopo da declaração que é permitido depende do SecurityAction usado.The scope of the declaration that is allowed depends on the SecurityAction that is used. Você pode obter a cadeia de caracteres de chave para esse atributo executando a ferramenta de nome forte (SN. exe) com as opções de token e chave pública (SN -TP keyfile) em um arquivo que tenha uma assinatura Authenticode.You can obtain the key string for this attribute by running the Strong Name tool (Sn.exe) with the token and public key options (Sn -tp keyfile) against a file that has an Authenticode signature. Para saber mais, veja Sn.exe (Ferramenta de Nome Forte).For more information, see Sn.exe (Strong Name Tool).

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.The security information declared by a security attribute is stored in the metadata of the attribute target and is accessed by the system at run time. Os atributos de segurança são usados apenas para segurança declarativa.Security attributes are used only for declarative security. Para segurança imperativa, use a classe de permissão correspondente.For imperative security, use the corresponding permission class.

O atributo StrongNameIdentityPermissionAttribute pode ser usado para definir requisitos de nome forte para acesso a membros públicos no nível do assembly.The StrongNameIdentityPermissionAttribute attribute can be used to define strong-name requirements for access to public members at the assembly level. No .NET Framework versão 2,0 e posterior, você também pode usar o atributo InternalsVisibleToAttribute para especificar que todos os tipos não públicos nesse assembly sejam visíveis para outro assembly.In the .NET Framework version 2.0 and later, you can also use the InternalsVisibleToAttribute attribute to specify that all nonpublic types in that assembly are visible to another assembly. Para obter mais informações, consulte Friend Assemblies.For more information, see Friend assemblies.

Construtores

StrongNameIdentityPermissionAttribute(SecurityAction)

Inicializa uma nova instância da classe StrongNameIdentityPermissionAttribute com SecurityAction especificado.Initializes a new instance of the StrongNameIdentityPermissionAttribute class with the specified SecurityAction.

Propriedades

Action

Obtém ou define uma ação de segurança.Gets or sets a security action.

(Herdado de SecurityAttribute)
Name

Obtém ou define o nome da identidade de nome forte.Gets or sets the name of the strong name identity.

PublicKey

Obtém ou define o valor de chave pública da identidade de nome forte expresso como uma cadeia de caracteres hexadecimal.Gets or sets the public key value of the strong name identity expressed as a hexadecimal string.

TypeId

Quando implementado em uma classe derivada, obtém um identificador exclusivo para este Attribute.When implemented in a derived class, gets a unique identifier for this Attribute.

(Herdado de Attribute)
Unrestricted

Obtém ou define um valor que indica se a permissão total (irrestrita) para o recurso protegido pelo atributo é declarada.Gets or sets a value indicating whether full (unrestricted) permission to the resource protected by the attribute is declared.

(Herdado de SecurityAttribute)
Version

Obtém ou define a versão da identidade de nome forte.Gets or sets the version of the strong name identity.

Métodos

CreatePermission()

Cria e retorna um novo StrongNameIdentityPermission.Creates and returns a new StrongNameIdentityPermission.

Equals(Object)

Retorna um valor que indica se essa instância é igual a um objeto especificado.Returns a value that indicates whether this instance is equal to a specified object.

(Herdado de Attribute)
GetHashCode()

Retorna o código hash para a instância.Returns the hash code for this instance.

(Herdado de Attribute)
GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Herdado de Object)
IsDefaultAttribute()

Quando substituído em uma classe derivada, indica se o valor dessa instância é o valor padrão para a classe derivada.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(Herdado de Attribute)
Match(Object)

Quando substituído em uma classe derivada, retorna um valor que indica se essa instância é igual a um objeto especificado.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Herdado de Attribute)
MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object.

(Herdado de Object)

Implantações explícitas de interface

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

Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição.Maps a set of names to a corresponding set of dispatch identifiers.

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

Recupera as informações de tipo para um objeto, que pode ser usado para obter as informações de tipo para uma interface.Retrieves the type information for an object, which can be used to get the type information for an interface.

(Herdado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

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

Fornece acesso a propriedades e métodos expostos por um objeto.Provides access to properties and methods exposed by an object.

(Herdado de Attribute)

Aplica-se a

Veja também