StrongNameIdentityPermission Konstruktory
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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
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.