Partilhar via


StrongNameIdentityPermission Construtores

Definição

Inicializa uma nova instância da classe StrongNameIdentityPermission.

Sobrecargas

StrongNameIdentityPermission(PermissionState)

Inicializa uma nova instância da classe StrongNameIdentityPermission com o PermissionState especificado.

StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version)

Inicializa uma nova instância da classe StrongNameIdentityPermission para a identidade de nome forte especificada.

StrongNameIdentityPermission(PermissionState)

Inicializa uma nova instância da classe StrongNameIdentityPermission com o PermissionState especificado.

public:
 StrongNameIdentityPermission(System::Security::Permissions::PermissionState state);
public StrongNameIdentityPermission (System.Security.Permissions.PermissionState state);
new System.Security.Permissions.StrongNameIdentityPermission : System.Security.Permissions.PermissionState -> System.Security.Permissions.StrongNameIdentityPermission
Public Sub New (state As PermissionState)

Parâmetros

state
PermissionState

Um dos valores de PermissionState.

Exceções

O parâmetro state não é um valor válido de PermissionState.

Exemplos

O exemplo de código a seguir mostra o uso do StrongNameIdentityPermission construtor.

snIdPerm2 = gcnew StrongNameIdentityPermission(PermissionState::None);
snIdPerm2 = new StrongNameIdentityPermission(PermissionState.None);
snIdPerm2 = New StrongNameIdentityPermission(PermissionState.None)

Comentários

Cria uma permissão (None) ou Unrestricted totalmente restrita.

Observação

No .NET Framework versões 1.0 e 1.1, as permissões de identidade não podem ter um valor de estado de Unrestricted permissão. No .NET Framework versão 2.0 e posterior, as permissões de identidade podem ter qualquer valor de estado de permissão. Isso significa que, na versão 2.0 e versões posteriores, as permissões de identidade têm o mesmo comportamento que as permissões que implementam a IUnrestrictedPermission interface. Ou seja, uma demanda por uma identidade sempre terá êxito, independentemente da identidade do assembly, se o assembly tiver recebido total confiança.

No .NET Framework versões 1.0 e 1.1, as demandas sobre as permissões de identidade são efetivas, mesmo quando o assembly de chamada é totalmente confiável. Ou seja, embora o assembly de chamada tenha total confiança, uma demanda por uma permissão de identidade falhará se o assembly não atender aos critérios exigidos. No .NET Framework versão 2.0 e posterior, as demandas por permissões de identidade serão ineficazes se o assembly de chamada tiver total confiança. Isso garante a consistência de todas as permissões, eliminando o tratamento de permissões de identidade como um caso especial.

Use esse construtor com um valor de estado de permissão para criar uma permissão de None identidade que não corresponda a nomes fortes. Se você definir posteriormente as propriedades e Version as Name propriedades, uma identidade de nome forte específica poderá ser representada pela permissão.

Aplica-se a

StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version)

Inicializa uma nova instância da classe StrongNameIdentityPermission para a identidade de nome forte especificada.

public:
 StrongNameIdentityPermission(System::Security::Permissions::StrongNamePublicKeyBlob ^ blob, System::String ^ name, Version ^ version);
public StrongNameIdentityPermission (System.Security.Permissions.StrongNamePublicKeyBlob blob, string name, Version version);
new System.Security.Permissions.StrongNameIdentityPermission : System.Security.Permissions.StrongNamePublicKeyBlob * string * Version -> System.Security.Permissions.StrongNameIdentityPermission
Public Sub New (blob As StrongNamePublicKeyBlob, name As String, version As Version)

Parâmetros

blob
StrongNamePublicKeyBlob

A chave pública que define o namespace de identidade do e nome forte.

name
String

A parte do nome simples da identidade de nome forte. Isso corresponde ao nome do assembly.

version
Version

O número de versão da identidade.

Exceções

O parâmetro blob é null.

O parâmetro name é uma cadeia de caracteres vazia ("").

Exemplos

O exemplo de código a seguir mostra o uso do StrongNameIdentityPermission construtor.

snIdPerm1 = gcnew StrongNameIdentityPermission(blob, "MyCompany.MyDepartment.*", gcnew Version("1.0.0.0"));
snIdPerm1 = new StrongNameIdentityPermission(blob, "MyCompany.MyDepartment.*", new Version("1.0.0.0"));
snIdPerm1 = New StrongNameIdentityPermission(blob, "MyCompany.MyDepartment.*", New Version("1.0.0.0"))

Comentários

O name e version os parâmetros só podem ser null quando a chave pública é usada para identificar o assembly. Uma cadeia de caracteres vazia ("") não deve ser usada no lugar de null. Se name for uma cadeia de caracteres vazia, será lançada uma ArgumentException .

Para obter mais informações sobre nomes e números de versão de assemblies, consulte assemblies com nome forte.

Aplica-se a