FileIOPermission 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.
Řídí možnost přístupu k souborům a složkám. Tato třída se nemůže dědit.
public ref class FileIOPermission sealed : System::Security::CodeAccessPermission, System::Security::Permissions::IUnrestrictedPermission
[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 FileIOPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[System.Serializable]
public sealed class FileIOPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class FileIOPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
public sealed class FileIOPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type FileIOPermission = class
inherit CodeAccessPermission
interface IUnrestrictedPermission
[<System.Serializable>]
type FileIOPermission = class
inherit CodeAccessPermission
interface IUnrestrictedPermission
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type FileIOPermission = class
inherit CodeAccessPermission
interface IUnrestrictedPermission
type FileIOPermission = class
inherit CodeAccessPermission
interface IUnrestrictedPermission
Public NotInheritable Class FileIOPermission
Inherits CodeAccessPermission
Implements IUnrestrictedPermission
- Dědičnost
- Atributy
- Implementuje
Poznámky
Caution
Zabezpečení přístupu kódu (CAS) je zastaralé ve všech verzích rozhraní .NET Framework a .NET. Nedávné verze .NET nezohledňují anotace CAS a způsobují chyby, pokud se používají API související s CAS. Vývojáři by měli hledat alternativní způsoby provádění úloh zabezpečení.
Toto oprávnění rozlišuje následující čtyři typy vstupně-výstupních operací souborů, které FileIOPermissionAccessposkytuje:
Read: Čtení přístupu k obsahu souboru nebo přístup k informacím o souboru, jako je jeho délka nebo čas poslední úpravy.Write: Zápis přístupu k obsahu souboru nebo přístup ke změně informací o souboru, například jeho název. Umožňuje také odstranění a přepsání.Append: Možnost zápisu pouze na konec souboru. Žádná schopnost číst.PathDiscovery: Přístup k informacím v samotné cestě. To pomáhá chránit citlivé informace v cestě, jako jsou uživatelská jména, a také informace o adresářové struktuře, která je v cestě odhalena. Tato hodnota neuděluje přístup k souborům nebo složkám reprezentovaným cestou.
Note
Udělení Write přístupu k sestavení se podobá udělení úplného vztahu důvěryhodnosti. Pokud by aplikace neměla zapisovat do systému souborů, neměla by mít Write přístup.
Všechna tato oprávnění jsou nezávislá, což znamená, že práva k jednomu neznamená práva na jinou. Například Write oprávnění neznamená oprávnění k Read nebo Append. Pokud potřebujete více než jedno oprávnění, můžete je zkombinovat pomocí bitové operace OR, jak je znázorněno v následujícím příkladu kódu. Oprávnění k souboru je definováno z hlediska kanonických absolutních cest; Volání by měla být vždy provedena pomocí kanonických cest k souborům.
FileIOPermission popisuje operace chráněné u souborů a složek. Třída File pomáhá zajistit zabezpečený přístup k souborům a složkám. Kontrola přístupu zabezpečení se provádí při vytvoření popisovače souboru. Provedením kontroly při vytváření se minimalizuje dopad kontroly zabezpečení na výkon. K otevření souboru dochází jednou, zatímco čtení a zápis může probíhat několikrát. Po otevření souboru nebudou provedeny žádné další kontroly. Pokud je objekt předán nedůvěryhodnému volajícímu, může být zneužit. Popisovače souborů by například neměly být uloženy ve veřejných globálních statických objektech, kde k nim může přistupovat kód s menším oprávněním.
FileIOPermissionAccess určuje akce, které lze provést se souborem nebo složkou. Kromě toho lze tyto akce zkombinovat pomocí bitové operace OR k vytvoření složitých instancí.
Přístup ke složce znamená přístup ke všem souborům, které obsahuje, a přístup ke všem souborům a složkám v jejích podsložkách. Například Read přístup k C:\folder1\ znamená Read přístup k C:\folder1\file1.txt, C:\folder1\folder2\, C:\folder1\folder2\file2.txtatd.
Note
Ve verzích .NET Framework před .NET Framework 4 můžete použít metodu CodeAccessPermission.Deny k zabránění neúmyslného přístupu k systémovým prostředkům důvěryhodným kódem. Deny je nyní zastaralý a přístup k prostředkům je nyní určen výhradně uděleným oprávněním nastaveným pro sestavení. Pokud chcete omezit přístup k souborům, musíte v sandboxu spustit částečně důvěryhodný kód a přiřadit mu oprávnění pouze k prostředkům, ke kterým má kód povolený přístup. Informace o spuštění aplikace v sandboxu najdete v tématu Postupy: Spuštění částečně důvěryhodného kódu v sandboxu.
Konstruktory
| Name | Description |
|---|---|
| FileIOPermission(FileIOPermissionAccess, AccessControlActions, String) |
Zastaralé.
Inicializuje novou instanci FileIOPermission třídy se zadaným přístupem k určenému souboru nebo adresáři a zadanými přístupovými právy k informacím o řízení souborů. |
| FileIOPermission(FileIOPermissionAccess, AccessControlActions, String[]) |
Zastaralé.
Inicializuje novou instanci FileIOPermission třídy se zadaným přístupem k určeným souborům a adresářům a zadaným přístupovým právům k informacím o řízení souborů. |
| FileIOPermission(FileIOPermissionAccess, String) |
Zastaralé.
Inicializuje novou instanci FileIOPermission třídy se zadaným přístupem k určenému souboru nebo adresáři. |
| FileIOPermission(FileIOPermissionAccess, String[]) |
Zastaralé.
Inicializuje novou instanci FileIOPermission třídy se zadaným přístupem k určeným souborům a adresářům. |
| FileIOPermission(PermissionState) |
Zastaralé.
Inicializuje novou instanci FileIOPermission třídy s plně omezeným nebo neomezeným oprávněním, jak je uvedeno. |
Vlastnosti
| Name | Description |
|---|---|
| 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. |
Metody
| Name | Description |
|---|---|
| AddPathList(FileIOPermissionAccess, String) |
Zastaralé.
Přidá přístup pro zadaný soubor nebo adresář do existujícího stavu oprávnění. |
| AddPathList(FileIOPermissionAccess, String[]) |
Zastaralé.
Přidá přístup pro zadané soubory a adresáře do existujícího stavu oprávnění. |
| Assert() |
Zastaralé.
Deklaruje, že volající kód má přístup k prostředku chráněnému požadavkem oprávnění prostřednictvím kódu, který tuto metodu volá, i když volajícím vyšší v zásobníku nebyla udělena oprávnění pro přístup k prostředku. Použití Assert() může vytvářet problémy se zabezpečením. (Zděděno od CodeAccessPermission) |
| Copy() |
Zastaralé.
Vytvoří a vrátí stejnou kopii aktuálního oprávnění. |
| Demand() |
Zastaralé.
SecurityException Vynutí čas spuštění, pokud všichni volající vyšší v zásobníku volání nebyl uděleni oprávnění určená aktuální instancí. (Zděděno od CodeAccessPermission) |
| Deny() |
Zastaralé.
Zastaralé.
Zabrání volajícím ve vyšší části zásobníku volání použít kód, 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 zadaný FileIOPermission objekt je roven aktuální FileIOPermission. |
| FromXml(SecurityElement) |
Zastaralé.
Rekonstruuje oprávnění se zadaným stavem z kódování XML. |
| GetHashCode() |
Zastaralé.
Získá hash kód pro FileIOPermission objekt, který je vhodný pro použití v hashovací algoritmy a datové struktury, jako je hash tabulka. |
| GetPathList(FileIOPermissionAccess) |
Zastaralé.
Získá všechny soubory a adresáře se zadaným FileIOPermissionAccess. |
| GetType() |
Zastaralé.
Získá Type aktuální instance. (Zděděno od Object) |
| Intersect(IPermission) |
Zastaralé.
Vytvoří a vrátí oprávnění, které je průnikem 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í. |
| IsUnrestricted() |
Zastaralé.
Vrátí hodnotu označující, jestli je aktuální oprávnění neomezené. |
| MemberwiseClone() |
Zastaralé.
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| PermitOnly() |
Zastaralé.
Zabrání volajícím v zásobníku volání používat kód, 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) |
| SetPathList(FileIOPermissionAccess, String) |
Zastaralé.
Nastaví zadaný přístup k zadanému souboru nebo adresáři a nahradí stávající stav oprávnění. |
| SetPathList(FileIOPermissionAccess, String[]) |
Zastaralé.
Nastaví zadaný přístup k zadaným souborům a adresářům a nahradí aktuální stav zadaného přístupu novou sadou cest. |
| 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í stav. |
| Union(IPermission) |
Zastaralé.
Vytvoří oprávnění, které je sjednocením aktuálního oprávnění a zadaného oprávnění. |