Condividi tramite


StrongNameIdentityPermission Costruttori

Definizione

Inizializza una nuova istanza della classe StrongNameIdentityPermission.

Overload

StrongNameIdentityPermission(PermissionState)

Inizializza una nuova istanza della classe StrongNameIdentityPermission con l'oggetto PermissionState specificato.

StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version)

Inizializza una nuova istanza della classe StrongNameIdentityPermission per l'identità del nome sicuro specificato.

StrongNameIdentityPermission(PermissionState)

Inizializza una nuova istanza della classe StrongNameIdentityPermission con l'oggetto PermissionState specificato.

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)

Parametri

state
PermissionState

Uno dei valori di PermissionState.

Eccezioni

Il parametro state non è un valore valido di PermissionState.

Esempio

Nell'esempio di codice seguente viene illustrato l'uso del StrongNameIdentityPermission costruttore .

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

Commenti

Crea un'autorizzazione conNone restrizioni () o Unrestricted completamente limitata.

Nota

Nelle versioni .NET Framework 1.0 e 1.1 le autorizzazioni di identità non possono avere un Unrestricted valore di stato di autorizzazione. Nella .NET Framework versione 2.0 e successive le autorizzazioni di identità possono avere qualsiasi valore di stato di autorizzazione. Ciò significa che nelle versioni 2.0 e successive le autorizzazioni di identità hanno lo stesso comportamento delle autorizzazioni che implementano l'interfaccia IUnrestrictedPermission . Vale a dire, una richiesta di identità ha sempre esito positivo, indipendentemente dall'identità dell'assembly, se all'assembly è stata concessa l'attendibilità totale.

Nella .NET Framework versioni 1.0 e 1.1, le richieste relative alle autorizzazioni di identità sono valide, anche quando l'assembly chiamante è completamente attendibile. Ovvero, anche se l'assembly chiamante ha un trust completo, una richiesta di autorizzazione di identità ha esito negativo se l'assembly non soddisfa i criteri richiesti. Nella .NET Framework versione 2.0 e successive, le richieste di autorizzazioni di identità sono inefficaci se l'assembly chiamante ha un trust completo. In questo modo si garantisce la coerenza per tutte le autorizzazioni, eliminando il trattamento delle autorizzazioni di identità come caso speciale.

Usare questo costruttore con un valore di stato di autorizzazione di None per creare un'autorizzazione identity che non corrisponda a nomi sicuri. Se successivamente si impostano le Name proprietà e Version , un'identità del nome sicuro specifica può essere rappresentata dall'autorizzazione .

Si applica a

StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version)

Inizializza una nuova istanza della classe StrongNameIdentityPermission per l'identità del nome sicuro specificato.

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)

Parametri

blob
StrongNamePublicKeyBlob

Chiave pubblica che definisce lo spazio dei nomi dell'identità del nome sicuro.

name
String

Parte del nome semplice dell'identità del nome sicuro. Corrisponde al nome dell'assembly.

version
Version

Numero di versione dell'identità.

Eccezioni

Il valore del parametro blob è null.

Il parametro name è una stringa vuota ("").

Esempio

Nell'esempio di codice seguente viene illustrato l'uso del StrongNameIdentityPermission costruttore .

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"))

Commenti

I name parametri e version possono essere null solo quando viene usata la chiave pubblica per identificare l'assembly. Una stringa vuota ("") non deve essere utilizzata al posto di null. Se name è una stringa vuota, viene generata un'eccezione ArgumentException .

Per altre informazioni sui nomi e sui numeri di versione degli assembly, vedere Assembly con nome sicuro.

Si applica a