StrongNameIdentityPermission Třída
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í.
Upozornění
Code Access Security is not supported or honored by the runtime.
Definuje oprávnění identity pro silné názvy. Tato třída se nemůže dědit.
public ref class StrongNameIdentityPermission sealed : System::Security::CodeAccessPermission
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public sealed class StrongNameIdentityPermission : System.Security.CodeAccessPermission
[System.Serializable]
public sealed class StrongNameIdentityPermission : System.Security.CodeAccessPermission
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class StrongNameIdentityPermission : System.Security.CodeAccessPermission
public sealed class StrongNameIdentityPermission : System.Security.CodeAccessPermission
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type StrongNameIdentityPermission = class
inherit CodeAccessPermission
[<System.Serializable>]
type StrongNameIdentityPermission = class
inherit CodeAccessPermission
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type StrongNameIdentityPermission = class
inherit CodeAccessPermission
type StrongNameIdentityPermission = class
inherit CodeAccessPermission
Public NotInheritable Class StrongNameIdentityPermission
Inherits CodeAccessPermission
- Dědičnost
- Atributy
Poznámky
Upozornění
Zabezpečení přístupu kódu (CAS) bylo zastaralé ve všech verzích rozhraní .NET Framework a .NET. Nedávné verze rozhraní .NET nedodržují poznámky CAS a při použití rozhraní API souvisejících s cas vytvářejí chyby. Vývojáři by měli hledat alternativní způsoby provádění úloh zabezpečení.
Důležité
Počínaje rozhraním .NET Framework 4 se nepoužívají oprávnění identit.
V rozhraní .NET Framework verze 1.0 a 1.1 nemohou mít Unrestricted oprávnění identity hodnotu stavu oprávnění. V rozhraní .NET Framework verze 2.0 a novější můžou mít oprávnění identity libovolnou hodnotu stavu oprávnění. To znamená, že ve verzi 2.0 a novějších mají oprávnění identit stejné chování jako oprávnění implementovaná rozhraní IUnrestrictedPermission . To znamená, že požadavek na identitu vždy uspěje bez ohledu na identitu sestavení, pokud bylo sestavení uděleno úplné důvěryhodnosti.
Použijte StrongNameIdentityPermission k potvrzení, že volající kód je v konkrétním sestavení kódu se silným názvem. Úplné požadavky na StrongNameIdentityPermission úspěch pouze v případě, že všechna sestavení v zásobníku mají správné důkazy k uspokojení poptávky. Požadavky odkazu, které používají StrongNameIdentityPermissionAttribute atribut, jsou úspěšné pouze v případě, že má okamžitý volající správné důkazy.
Identita silného názvu je založena na kryptografickém veřejném klíči označovaného jako binární velký objekt (BLOB), který je volitelně kombinován s názvem a verzí konkrétního sestavení. Klíč definuje jedinečný obor názvů a poskytuje silné ověření, že název je pravý, protože definice názvu musí být v sestavení, které je podepsáno odpovídajícím privátním klíčem.
Všimněte si, že platnost klíče silného názvu nezávisí na vztahu důvěryhodnosti ani na tom, že pro klíč je nutně vystavený certifikát.
V rozhraní .NET Framework verze 1.0 a 1.1 jsou požadavky na oprávnění identity účinné i v případě, že volající sestavení je plně důvěryhodné. To znamená, že i v případě, že volající sestavení má úplný vztah důvěryhodnosti, požadavek na oprávnění identity selže, pokud sestavení nesplňuje požadavkům kritéria. V rozhraní .NET Framework verze 2.0 a novější jsou požadavky na oprávnění identity neefektivní, pokud volající sestavení má úplný vztah důvěryhodnosti. Tím se zajistí konzistence pro všechna oprávnění a eliminuje se zpracování oprávnění identity jako zvláštní případ.
Úplný popis silných názvů najdete na stránce s referenčními StrongName informacemi. Další informace o sestaveních se silnými názvy naleznete v tématu Sestavení se silnými názvy.
Třída StrongNameIdentityPermission se používá k definování požadavků silného názvu pro přístup k veřejným členům typu. Atribut StrongNameIdentityPermissionAttribute lze použít k definování požadavků strong-name na úrovni sestavení. V rozhraní .NET Framework verze 2.0 a novější můžete také použít InternalsVisibleToAttribute atribut k určení, že všechny neveřejné typy v daném sestavení jsou viditelné pro jiné sestavení. Další informace najdete v tématu Přátelská sestavení.
Konstruktory
StrongNameIdentityPermission(PermissionState) |
Zastaralé.
Inicializuje novou instanci StrongNameIdentityPermission třídy se zadaným PermissionStateobjektem . |
StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version) |
Zastaralé.
Inicializuje novou instanci třídy pro zadanou identitu silného StrongNameIdentityPermission názvu. |
Vlastnosti
Name |
Zastaralé.
Získá nebo nastaví část jednoduchého názvu identity silného názvu. |
PublicKey |
Zastaralé.
Získá nebo nastaví objekt blob veřejného klíče, který definuje obor názvů identity se silným názvem. |
Version |
Zastaralé.
Získá nebo nastaví číslo verze identity. |
Metody
Assert() |
Zastaralé.
Deklaruje, že volající kód má přístup k prostředku chráněnému požadavkem na oprávnění prostřednictvím kódu, který volá tuto metodu, i když volajícím vyššímu v zásobníku nebylo uděleno oprávnění pro přístup k prostředku. Použití Assert() může vytvořit problémy se zabezpečením. (Zděděno od CodeAccessPermission) |
Copy() |
Zastaralé.
Vytvoří a vrátí identickou kopii aktuálního oprávnění. |
Demand() |
Zastaralé.
SecurityException Vynutí hodnotu za běhu, pokud všem volajícím, kteří jsou výše v zásobníku volání, nebylo uděleno oprávnění určené aktuální instancí. (Zděděno od CodeAccessPermission) |
Deny() |
Zastaralé.
Zastaralé.
Zabraňuje volajícím, kteří jsou výše v zásobníku volání, v použití kódu, který volá tuto metodu pro přístup k prostředku určenému aktuální instancí. (Zděděno od CodeAccessPermission) |
Equals(Object) |
Zastaralé.
Určuje, zda je zadaný CodeAccessPermission objekt roven aktuálnímu CodeAccessPermissionobjektu . (Zděděno od CodeAccessPermission) |
FromXml(SecurityElement) |
Zastaralé.
Rekonstruuje oprávnění se zadaným stavem z kódování XML. |
GetHashCode() |
Zastaralé.
Získá hash kód pro CodeAccessPermission objekt, který je vhodný pro použití v hashovací algoritmy a datové struktury, jako je hash tabulky. (Zděděno od CodeAccessPermission) |
GetType() |
Zastaralé.
Získá aktuální Type instanci. (Zděděno od Object) |
Intersect(IPermission) |
Zastaralé.
Vytvoří a vrátí oprávnění, které je průsečíkem aktuálního oprávnění a zadaného oprávnění. |
IsSubsetOf(IPermission) |
Zastaralé.
Určuje, zda je aktuální oprávnění podmnožinou zadaného oprávnění. |
MemberwiseClone() |
Zastaralé.
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
PermitOnly() |
Zastaralé.
Zabraňuje volajícím, kteří jsou výše v zásobníku volání, v použití kódu, který volá tuto metodu pro přístup ke všem prostředkům s výjimkou prostředku určeného aktuální instancí. (Zděděno od CodeAccessPermission) |
ToString() |
Zastaralé.
Vytvoří a vrátí řetězcovou reprezentaci aktuálního objektu oprávnění. (Zděděno od CodeAccessPermission) |
ToXml() |
Zastaralé.
Vytvoří kódování XML oprávnění a jeho aktuálního stavu. |
Union(IPermission) |
Zastaralé.
Vytvoří oprávnění, které je sjednocením aktuálního a zadaného oprávnění. |