FileIOPermissionAttribute 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.
Umožňuje použití akcí zabezpečení pro FileIOPermission na kód pomocí deklarativního zabezpečení. Tuto třídu nelze zdědit.
public ref class FileIOPermissionAttribute sealed : System::Security::Permissions::CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[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 FileIOPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
public sealed class FileIOPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class FileIOPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
public sealed class FileIOPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type FileIOPermissionAttribute = class
inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
type FileIOPermissionAttribute = class
inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type FileIOPermissionAttribute = class
inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
type FileIOPermissionAttribute = class
inherit CodeAccessSecurityAttribute
Public NotInheritable Class FileIOPermissionAttribute
Inherits CodeAccessSecurityAttribute
- Dědičnost
- Atributy
Příklady
Následující příklad kódu ukazuje, jak požadovat FileIOPermission pomocí FileIOPermissionAttribute třídy, což označuje jediné oprávnění, které má být uděleno kódu.
[FileIOPermissionAttribute(SecurityAction::PermitOnly,ViewAndModify="C:\\example\\sample.txt")]
[FileIOPermissionAttribute(SecurityAction.PermitOnly, ViewAndModify = "C:\\example\\sample.txt")]
<FileIOPermissionAttribute(SecurityAction.PermitOnly, _
ViewAndModify:="C:\example\sample.txt")> Public Class SampleClass
Následující příklad ukazuje, jak požadovat, aby volající kód má neomezený FileIOPermission. Obvykle požadujete ve spravovaných knihovnách (DLL), které pomáhají chránit metody nebo třídy před potenciálně škodlivým kódem.
[FileIOPermissionAttribute(SecurityAction::Demand,Unrestricted=true)]
[FileIOPermissionAttribute(SecurityAction.Demand, Unrestricted=true)]
<FileIOPermissionAttribute(SecurityAction.Demand, _
Unrestricted := True)> Public Class SampleClass
Poznámky
Opatrnost
Zabezpečení přístupu kódu (CAS) je zastaralé ve všech verzích rozhraní .NET Framework a .NET. Nedávné verze rozhraní .NET nedotknou poznámek CAS a generují chyby, pokud se používají rozhraní API související s casem. Vývojáři by měli hledat alternativní způsoby provádění úloh zabezpečení.
Soubory a adresáře se zadají pomocí absolutních cest. Při přístupu k souborům se při vytváření nebo otevření souboru provede kontrola zabezpečení. Kontrola zabezpečení se neprovede znovu, pokud není soubor zavřený a znovu otevřen. Kontrola oprávnění při prvním přístupu k souboru minimalizuje dopad kontroly zabezpečení na výkon aplikace, protože otevření souboru probíhá jen jednou, zatímco čtení a zápis může proběhnout několikrát.
Rozsah povolené deklarace závisí na použitém SecurityAction.
Informace o zabezpečení deklarované atributem zabezpečení jsou uloženy v metadatech cíle atributu a jsou přístupné systémem za běhu. Atributy zabezpečení se používají pouze pro deklarativní zabezpečení. Pro imperativní zabezpečení použijte odpovídající třídu oprávnění.
Opatrnost
Unrestricted
FileIOPermission uděluje oprávnění pro všechny cesty v systému souborů, včetně více názvů cest, které lze použít pro přístup k jednomu danému souboru. Pokud chcete Deny přístup k souboru, musíte Deny
všechny možné cesty k souboru. Pokud je například složka \\server\sdílená složka namapována na síťovou jednotku X, abyste mohli Deny
přístup k souboru \\server\sdílená složka, musíte Deny
\\server\sdílená_složka\soubor, soubor X:\a jakoukoli jinou cestu, kterou můžete použít pro přístup k souboru.
Konstruktory
FileIOPermissionAttribute(SecurityAction) |
Zastaralé.
Inicializuje novou instanci třídy FileIOPermissionAttribute se zadaným SecurityAction. |
Vlastnosti
Action |
Zastaralé.
Získá nebo nastaví akci zabezpečení. (Zděděno od SecurityAttribute) |
All |
Zastaralé.
Zastaralé.
Získá nebo nastaví úplný přístup k souboru nebo adresáři, který je určen řetězcovou hodnotou. |
AllFiles |
Zastaralé.
Získá nebo nastaví povolený přístup ke všem souborům. |
AllLocalFiles |
Zastaralé.
Získá nebo nastaví povolený přístup ke všem místním souborům. |
Append |
Zastaralé.
Získá nebo nastaví přístup k připojení pro soubor nebo adresář, který je určen řetězcovou hodnotou. |
ChangeAccessControl |
Zastaralé.
Získá nebo nastaví soubor nebo adresář, ve kterém lze změnit informace řízení přístupu. |
PathDiscovery |
Zastaralé.
Získá nebo nastaví soubor nebo adresář, na který chcete udělit zjišťování cesty. |
Read |
Zastaralé.
Získá nebo nastaví přístup pro čtení pro soubor nebo adresář určený řetězcovou hodnotou. |
TypeId |
Zastaralé.
Při implementaci v odvozené třídě získá jedinečný identifikátor pro tento Attribute. (Zděděno od Attribute) |
Unrestricted |
Zastaralé.
Získá nebo nastaví hodnotu určující, zda je deklarováno úplné (neomezené) oprávnění k prostředku chráněnému atributem. (Zděděno od SecurityAttribute) |
ViewAccessControl |
Zastaralé.
Získá nebo nastaví soubor nebo adresář, ve kterém lze zobrazit informace řízení přístupu. |
ViewAndModify |
Zastaralé.
Získá nebo nastaví soubor nebo adresář, ve kterém lze zobrazit a upravit data souboru. |
Write |
Zastaralé.
Získá nebo nastaví přístup k zápisu pro soubor nebo adresář určený řetězcovou hodnotou. |
Metody
CreatePermission() |
Zastaralé.
Vytvoří a vrátí novou FileIOPermission. |
Equals(Object) |
Zastaralé.
Vrátí hodnotu, která určuje, zda je tato instance rovna zadanému objektu. (Zděděno od Attribute) |
GetHashCode() |
Zastaralé.
Vrátí kód hash pro tuto instanci. (Zděděno od Attribute) |
GetType() |
Zastaralé.
Získá Type aktuální instance. (Zděděno od Object) |
IsDefaultAttribute() |
Zastaralé.
Při přepsání v odvozené třídě určuje, zda hodnota této instance je výchozí hodnotou pro odvozenou třídu. (Zděděno od Attribute) |
Match(Object) |
Zastaralé.
Při přepsání v odvozené třídě vrátí hodnotu, která určuje, zda se tato instance rovná zadanému objektu. (Zděděno od Attribute) |
MemberwiseClone() |
Zastaralé.
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
ToString() |
Zastaralé.
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Explicitní implementace rozhraní
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Zastaralé.
Mapuje sadu názvů na odpovídající sadu identifikátorů odeslání. (Zděděno od Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Zastaralé.
Načte informace o typu objektu, který lze použít k získání informací o typu pro rozhraní. (Zděděno od Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Zastaralé.
Načte počet rozhraní informací o typu, která objekt poskytuje (buď 0, nebo 1). (Zděděno od Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Zastaralé.
Poskytuje přístup k vlastnostem a metodám vystaveným objektem. (Zděděno od Attribute) |