StrongNameIdentityPermission Konstruktory

Definice

Inicializuje novou instanci StrongNameIdentityPermission třídy.

Přetížení

StrongNameIdentityPermission(PermissionState)

Inicializuje novou instanci StrongNameIdentityPermission třídy se zadaným PermissionState.

StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version)

Inicializuje novou instanci StrongNameIdentityPermission třídy pro zadanou identitu silného názvu.

StrongNameIdentityPermission(PermissionState)

Inicializuje novou instanci StrongNameIdentityPermission třídy se zadaným PermissionState.

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)

Parametry

state
PermissionState

Jedna z PermissionState hodnot.

Výjimky

Parametr state není platná hodnota PermissionState.

Příklady

Následující příklad kódu ukazuje použití konstruktoru StrongNameIdentityPermission .

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

Poznámky

Vytvoří buď plně omezený (None) nebo Unrestricted oprávnění.

Poznámka

V .NET Framework verze 1.0 a 1.1 nesmí mít Unrestricted oprávnění identit hodnotu stavu oprávnění. V .NET Framework verze 2.0 a novější můžou mít oprávnění identit libovolnou hodnotu stavu oprávnění. To znamená, že ve verzi 2.0 a novějších verzích mají oprávnění identit stejné chování jako oprávnění, která implementují IUnrestrictedPermission rozhraní. To znamená, že poptávka po identitě vždy proběhne úspěšně bez ohledu na identitu sestavení, pokud bylo sestavení uděleno úplné důvěryhodnosti.

V .NET Framework verze 1.0 a 1.1 jsou požadavky na oprávnění identity efektivní, i když je volání sestavení plně důvěryhodné. To znamená, že i když volající sestavení má úplný vztah důvěryhodnosti, požadavek na oprávnění k identitě selže, pokud sestavení nesplňuje požadavkům kritéria. V .NET Framework verze 2.0 a novější jsou požadavky na oprávnění identity neefektivní, pokud má volající sestavení plnou důvěryhodnost. To zajišťuje konzistenci pro všechna oprávnění a eliminuje zacházení s oprávněními identit jako zvláštní případ.

Pomocí tohoto konstruktoru s hodnotou None stavu oprávnění vytvořte oprávnění identity, která odpovídá žádným silným názvům. Pokud následně nastavíte Name a Version vlastnosti, může oprávnění reprezentovat konkrétní identitu silného názvu.

Platí pro

StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version)

Inicializuje novou instanci StrongNameIdentityPermission třídy pro zadanou identitu silného názvu.

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)

Parametry

blob
StrongNamePublicKeyBlob

Veřejný klíč definující obor názvů identity silného názvu.

name
String

Jednoduchá část názvu identity silného názvu. To odpovídá názvu sestavení.

version
Version

Číslo verze identity.

Výjimky

Parametr blob je null.

Parametr name je prázdný řetězec ("").

Příklady

Následující příklad kódu ukazuje použití konstruktoru StrongNameIdentityPermission .

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

Poznámky

Parametry name a parametry version mohou být null použity pouze v případě, že se veřejný klíč používá k identifikaci sestavení. Prázdný řetězec ("") by neměl být použit místo null. Pokud name je prázdný řetězec, vyvolá se.ArgumentException

Další informace o názvech a číslech verzí sestavení najdete v tématu Sestavení se silným názvem.

Platí pro