StrongNameIdentityPermission Třída

Definice

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
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}")]
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
type StrongNameIdentityPermission = class
    inherit 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
Public NotInheritable Class StrongNameIdentityPermission
Inherits CodeAccessPermission
Dědičnost
StrongNameIdentityPermission
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í.

Platí pro

Viz také