Izolované úložiště

Izolované úložiště pro desktopové aplikace je mechanismus úložiště dat, který poskytuje izolaci a bezpečnost definováním standardizovaných způsobů přidružení kódu k uloženým datům. Standardizace poskytuje také další výhody. Správci mohou používat nástroje, které jsou navrženy pro manipulaci izolovaného úložiště, a nakonfigurovat kapacitu úložiště souborů, nastavit zásady zabezpečení a odstranit nepoužívaná data. Díky izolovanému úložišti váš kód pro zadání bezpečných umístění v systému souborů již nevyžaduje jedinečné cesty a data jsou chráněna před ostatními aplikacemi, které mají přístup pouze k izolovanému úložišti. Pevně zakódovaná informace, která označuje oblast umístění aplikace, není vyžadována.

Důležité

Izolované úložiště není dostupné pro aplikace pro Windows 8.x Store. Místo toho použijte datové třídy aplikace v Windows.Storage oborech názvů zahrnutých v rozhraní API prostředí Windows Runtime k ukládání místních dat a souborů. Další informace najdete v tématu Data aplikací v centru Windows Dev Center.

Datové přihrádky a úložiště dat

Pokud aplikace ukládá data do souboru, je nutné pečlivě zvolit název souboru a umístění úložiště, aby se minimalizovala možnost, že umístění úložiště bude známé jiné aplikaci, a proto je ohroženo poškozením. Bez standardního systému pro správu těchto problémů mohou být improvizační techniky, které minimalizují konflikty v úložišti složité, a výsledky mohou být nespolehlivé.

V případě izolovaného úložiště jsou data vždy izolována podle uživatele a podle sestavení. Pověření, jako je například původ nebo silný název sestavení, určují identitu sestavení. Data mohou být izolována také podle domény aplikace pomocí obdobných pověření.

Používáte-li izolované úložiště, aplikace uloží data do jedinečné datové přihrádky, která je přidružena k některým aspektům identity kódu, jako je vydavatel nebo signatura. Datová přihrádka je abstrakcí, nikoli specifickým umístěním úložiště. Sestává z jednoho nebo více souborů izolovaného úložiště, které se nazývají „úložiště“, jež obsahují umístění skutečného adresáře, ve kterém jsou data uložena. Aplikace může mít například přidruženou datovou přihrádku a adresář v systému souborů může implementovat úložiště, které uchovává skutečná data pro aplikaci. Data uložená v úložišti mohou být libovolného druhu, od informací o uživatelských předvolbách až po stav aplikace. Pro vývojáře je umístění datové přihrádky transparentní. Úložiště se většinou nachází na straně klienta, serverová aplikace však může využívat izolovaná úložiště k ukládání informací zosobňováním uživatele, jehož jménem funguje. Izolované úložiště může také ukládat informace na serveru s cestovním profilem uživatele, aby se informace mohly přesouvat spolu s uživatelem, který je na cestách.

Kvóty pro izolované úložiště

Kvóta je limit využívané velikosti izolovaného úložiště. Kvóta úložiště zahrnuje bajty prostoru pro soubory a také informace o režijních nákladech spojených s adresářem a další informace. Izolované úložiště používá kvóty oprávnění, což jsou limity úložiště nastavené pomocí IsolatedStoragePermission objektů. Pokud se pokusíte zapsat data, která překročí kvótu, vyvolá IsolatedStorageException se výjimka. Zásady zabezpečení, které lze upravit pomocí konfiguračního nástroje rozhraní .NET Framework (Mscorcfg.msc), určují, která oprávnění jsou kódu udělována. Kód, který byl udělen IsolatedStoragePermission , je omezen na použití žádného dalšího úložiště, než umožňuje UserQuota vlastnost. Avšak vzhledem k tomu, že kód může obejít kvóty oprávnění předložením identity jiného uživatele, slouží kvóty oprávnění jako pokyny pro chování kódu, nikoli jako pevně stanovené omezení chování kódu.

V případě cestovních úložišť nejsou kvóty vynucovány. Chcete-li je použít, je potřeba z tohoto důvodu použít mírně vyšší stupeň oprávnění pro kód. Hodnoty výčtu AssemblyIsolationByRoamingUser a DomainIsolationByRoamingUser zadání oprávnění k použití izolovaného úložiště pro roamingového uživatele.

Bezpečný přístup

Používání izolovaného úložiště umožňuje částečně důvěryhodným aplikacím ukládat data způsobem, který je řízen zásadami zabezpečení počítače. Tato možnost je vhodná především pro stažené komponenty, které by měl uživatel spouštět s rozvahou. Zásady zabezpečení zřídka udělí tento druh oprávnění kódu pro přístup k systému souborů pomocí standardních vstupně-výstupních mechanismů. Ve výchozím nastavení je však oprávnění k používání izolovaného úložiště uděleno kódu, který se spouští z místního počítače, místní sítě nebo z Internetu.

Správci mohou stanovit omezení kapacity izolovaného úložiště pro aplikaci nebo uživatele, a to na základě příslušné úrovně důvěryhodnosti. Dále mohou správci kompletně odebrat trvalá data uživatele. Aby bylo možné vytvořit izolované úložiště nebo získat přístup k izolovanému úložišti, musí mít kód udělená příslušná IsolatedStorageFilePermission oprávnění.

Chcete-li získat přístup k izolovanému úložišti, musí být kódu přidělena veškerá oprávnění pro operační systém nativní platformy. Musí být splněny podmínky seznamů řízení přístupu (ACL), jež ověřují, kteří uživatelé mají oprávnění použít systém souborů. Aplikace .NET už mají práva operačního systému pro přístup k izolovanému úložišti, pokud neprovádějí zosobnění (specifické pro platformu). V tomto případě musí aplikace zajistit, aby identita zosobněného uživatele měla příslušná oprávnění pro přístup k izolovanému úložišti. Tento přístup poskytuje kódu spuštěnému nebo staženému z webu čtení a zápis do oblasti úložiště vztahujícího se ke konkrétnímu uživateli.

K řízení přístupu k izolovanému úložišti používá IsolatedStorageFilePermission modul CLR (Common Language Runtime) objekty. Jednotlivé objekty mají vlastnosti, které určují následující hodnoty:

  • Povolené využití, které označuje typ povoleného přístupu. Hodnoty jsou členy výčtu IsolatedStorageContainment . Další informace o těchto hodnotách naleznete v tabulce v další části.

  • Kvóta úložiště, která byla popsána v předchozím oddílu.

Modul runtime vyžaduje IsolatedStorageFilePermission oprávnění při prvním pokusu o otevření úložiště kódem. Na základě toho, kolik kódu je důvěryhodné, se rozhodne, jestli se má toto oprávnění udělit. Pokud je oprávnění uděleno, povolené hodnoty využití a kvóty úložiště jsou určeny zásadami zabezpečení a požadavkem kódu na IsolatedStorageFilePermission. Zásada zabezpečení je nastavena pomocí konfiguračního nástroje rozhraní .NET Framework (Mscorcfg.msc). Aby měli jednotliví volající alespoň povolené využití, jsou ověřování všichni volající v zásobníku volání. Modul runtime ověřuje také kvóty zadané do kódu, který otevřel nebo vytvořil úložiště, ve kterém má být soubor uložen. Pokud jsou tyto podmínky splněny, je povolení uděleno. Kvóta se ověřuje znovu pokaždé, když je soubor zapsán do úložiště.

Kód aplikace není nutný k vyžádání oprávnění, protože modul CLR (Common Language Runtime) udělí to, co IsolatedStorageFilePermission je vhodné na základě zásad zabezpečení. Existují však dobré důvody, proč si vyžádat konkrétní oprávnění, která vaše aplikace potřebuje, včetně IsolatedStorageFilePermission.

Povolené využití a rizika zabezpečení

Povolené použití určené určením IsolatedStorageFilePermission míry, do které bude možné kód vytvářet a používat izolované úložiště. Následující tabulka znázorňuje, jakým způsobem povolené využití zadané v rámci oprávnění odpovídá typům izolace, a podává přehled rizik zabezpečení spojených s jednotlivými typy povoleného využití.

Povolené využití Typy izolace Dopad na zabezpečení
None Není povoleno žádné použití izolovaného úložiště. Neexistuje žádný dopad na zabezpečení.
DomainIsolationByUser Izolace podle uživatele, domény a sestavení. Každé sestavení má samostatné dílčí úložiště v rámci domény. Úložiště používající toto oprávnění jsou také implicitně izolována počítačem. Tato úroveň oprávnění ponechává prostředky otevřené neoprávněnému nadměrnému využití, ačkoli vynucené kvóty toto znesnadňují. Mluvíme o útoku na dostupnost služby (DOS).
DomainIsolationByRoamingUser Stejné jako DomainIsolationByUser, ale úložiště se uloží do umístění, které se bude používat, pokud jsou povolené cestovní profily uživatelů a kvóty se nevynucují. Vzhledem k tomu, že kvóty musí být zakázány, úložiště prostředků jsou zranitelnější vůči útokům na dostupnost služby (DOS).
AssemblyIsolationByUser Izolace podle uživatele a sestavení. Úložiště používající toto oprávnění jsou také implicitně izolována počítačem. Kvóty jsou na této úrovni vynuceny za účelem zamezení útoku na dostupnost služby (DOS). Možnost přístupu k tomuto úložišti stejným sestavením z jiné domény otevírá možnost úniku informací mezi aplikacemi.
AssemblyIsolationByRoamingUser Stejné jako AssemblyIsolationByUser, ale úložiště se uloží do umístění, které se bude používat, pokud jsou povolené cestovní profily uživatelů a kvóty se nevynucují. Stejně jako v AssemblyIsolationByUserpřípadě , ale bez kvót, se zvyšuje riziko útoku na dostupnost služby.
AdministerIsolatedStorageByUser Izolace podle uživatele. Tuto úroveň oprávnění používají obvykle pouze nástroje pro správu a ladění. Přístup s tímto oprávněním umožňuje kódu zobrazit nebo odstranit jakýkoli soubor nebo adresář v izolovaném úložišti uživatele (bez ohledu na izolaci sestavení). Mezi rizika patří mimo jiné únik informací a ztráta dat.
UnrestrictedIsolatedStorage Izolace podle všech uživatelů, domén a sestavení. Tuto úroveň oprávnění používají obvykle pouze nástroje pro správu a ladění. Toto oprávnění vytváří potenciál pro celkové vyzrazení veškerých izolovaných úložišť všech uživatelů.

Bezpečnost izolovaných součástí úložiště s ohledem na nedůvěryhodná data

Tato část se vztahuje na následující architektury:

  • .NET Framework (všechny verze)
  • .NET Core 2.1 nebo novější
  • .NET 5 nebo novější

Rozhraní .NET Framework a .NET Core nabízejí izolované úložiště jako mechanismus pro uchování dat pro uživatele, aplikaci nebo komponentu. Jedná se o starší komponentu, která je primárně navržená pro zastaralé scénáře zabezpečení přístupu kódu.

Různá izolovaná rozhraní API a nástroje úložiště se dají použít ke čtení dat přes hranice důvěryhodnosti. Například čtení dat z oboru celého počítače může agregovat data z jiných, potenciálně méně důvěryhodných uživatelských účtů na počítači. Komponenty nebo aplikace, které čtou z oborů izolovaného úložiště v celém počítači, by měly vědět o důsledkůch čtení těchto dat.

Rozhraní API citlivá na zabezpečení, která můžou číst z oboru celého počítače

Komponenty nebo aplikace, které volají některá z následujících rozhraní API, se čtou z oboru celého počítače:

Nástroj storeadm.exe izolovaného úložiště je ovlivněn, pokud se volá s přepínačem/machine, jak je znázorněno v následujícím kódu:

storeadm.exe /machine [any-other-switches]

Nástroj izolovaného úložiště je poskytován jako součást sady Visual Studio a sady .NET Framework SDK.

Pokud aplikace nezahrnuje volání na předchozí rozhraní API nebo pokud pracovní postup tímto způsobem nezahrnuje volání storeadm.exe , tento dokument se nepoužije.

Dopad na prostředí s více uživateli

Jak už bylo zmíněno dříve, dopad na zabezpečení z těchto rozhraní API vyplývá z dat zapsaných z jednoho důvěryhodného prostředí, načítá se z jiného důvěryhodného prostředí. Izolované úložiště obvykle používá jedno ze tří umístění ke čtení a zápisu dat:

  1. %LOCALAPPDATA%\IsolatedStorage\: Například C:\Users\<username>\AppData\Local\IsolatedStorage\, pro User obor.
  2. %APPDATA%\IsolatedStorage\: Například C:\Users\<username>\AppData\Roaming\IsolatedStorage\, pro User|Roaming obor.
  3. %PROGRAMDATA%\IsolatedStorage\: Například C:\ProgramData\IsolatedStorage\, pro Machine obor.

První dvě umístění jsou izolovaná pro jednotlivé uživatele. Systém Windows zajišťuje, že různé uživatelské účty na stejném počítači nemají přístup ke složkám profilů uživatelů. Dva různé uživatelské účty, které používají User nebo User|Roaming ukládají, neuvidí navzájem data a nemohou vzájemně kolidovat s daty ostatních.

Třetí umístění se sdílí napříč všemi uživatelskými účty na počítači. Různé účty můžou číst z tohoto umístění a zapisovat do tohoto umístění a vidí data ostatních.

Předchozí cesty se mohou lišit v závislosti na používané verzi Systému Windows.

Nyní zvažte víceuživatelný systém se dvěma registrovanými uživateli Mallory a Bobem. Mallory má možnost přistupovat ke svému adresáři C:\Users\Mallory\profilů uživatelů a má přístup ke sdílenému umístění C:\ProgramData\IsolatedStorage\úložiště na celém počítači . Nemůže získat přístup k adresáři C:\Users\Bob\profilu uživatele Boba .

Pokud Mallory chce napadnout Boba, může zapsat data do umístění úložiště na celém počítači a pak se pokusit o vliv Boba na čtení z úložiště v celém počítači. Když Bob spustí aplikaci, která čte z tohoto obchodu, bude tato aplikace fungovat s daty Mallory umístěnými tam, ale v kontextu uživatelského účtu Boba. Zbývající část tohoto dokumentu uvažuje o různých vektorech útoku a o tom, jaké kroky můžou aplikace udělat, aby se minimalizovalo riziko těchto útoků.

Poznámka:

Aby se takový útok uskutečnil, Mallory vyžaduje:

  • Uživatelský účet na počítači.
  • Možnost umístit soubor do známého umístění v systému souborů.
  • Znalost, že Bob v určitém okamžiku spustí aplikaci, která se pokusí číst tato data.

Nejedná se o vektory hrozeb, které platí pro standardní desktopová prostředí s jedním uživatelem, jako jsou domácí počítače nebo podnikové pracovní stanice s jedním zaměstnancem.

Zvýšení oprávnění

K útoku na zvýšení oprávnění dojde, když Aplikace Boba čte soubor Mallory a automaticky se pokusí provést nějakou akci na základě obsahu dané datové části. Vezměte v úvahu aplikaci, která čte obsah spouštěcího skriptu z úložiště pro celý počítač a předává tento obsah do Process.Start. Pokud Mallory může umístit škodlivý skript do obchodu pro celý počítač, když Bob spustí svou aplikaci:

  • Jeho aplikace analyzuje a spustí škodlivý skript Mallory v kontextu profilu uživatele Boba.
  • Mallory získá přístup k účtu Boba na místním počítači.

Odepření služby

Útok na dostupnost služby nastane, když Aplikace Boba čte soubor Mallory a chybově ukončí nebo jinak přestane fungovat správně. Zvažte znovu aplikaci uvedenou dříve, která se pokusí analyzovat spouštěcí skript z úložiště pro celý počítač. Pokud Mallory může umístit soubor s poškozeným obsahem v obchodě na celém počítači, může:

  • Způsobit, že aplikace Boba vyvolá výjimku v rané fázi spouštěcí cesty.
  • Zabránit úspěšnému spuštění aplikace kvůli výjimce

Potom bobovi zamítla možnost spustit aplikaci pod vlastním uživatelským účtem.

Zveřejnění informací

K útoku na zpřístupnění informací dojde, když Mallory může Boba oklamat do zveřejnění obsahu souboru, ke kterému Mallory obvykle nemá přístup. Vezměte v úvahu, že Bob má tajný soubor C:\Users\Bob\secret.txt , který Chce Mallory přečíst. Zná cestu k tomuto souboru, ale nemůže ji přečíst, protože jí Systém Windows zakázal získat přístup k adresáři profilu uživatele Boba.

Místo toho Mallory umístí pevný odkaz do obchodu pro celý počítač. Jedná se o speciální druh souboru, který sám neobsahuje žádný obsah, spíše odkazuje na jiný soubor na disku. Při pokusu o přečtení souboru s pevným odkazem se místo toho přečte obsah souboru, na který odkaz cílí. Po vytvoření pevného odkazu nemůže Mallory číst obsah souboru, protože nemá přístup k cíli (C:\Users\Bob\secret.txt) odkazu. Bob ale má k tomuto souboru přístup.

Když Bobova aplikace čte z úložiště na celém počítači, teď neúmyslně čte obsah svého secret.txt souboru, stejně jako kdyby samotný soubor byl v úložišti na celém počítači. Když se Bobova aplikace ukončí, pokusí se soubor znovu uložit do úložiště pro celý počítač, umístí skutečnou kopii souboru do adresáře *C:\ProgramData\IsolatedStorage*. Vzhledem k tomu, že tento adresář čte jakýkoli uživatel na počítači, Může teď Mallory přečíst obsah souboru.

Osvědčené postupy pro ochranu před těmito útoky

Důležité: Pokud má vaše prostředí více vzájemně nedůvěryhodných uživatelů, nevolejte rozhraní API IsolatedStorageFile.GetEnumerator(IsolatedStorageScope.Machine) ani nevyvolávejte nástroj storeadm.exe /machine /list. Obě tyto operace předpokládají, že pracují s důvěryhodnými daty. Pokud útočník může v úložišti v celém počítači založit škodlivou datovou část, může tato datová část vést k útoku na zvýšení oprávnění v kontextu uživatele, který tyto příkazy spouští.

Pokud pracujete v prostředí s více uživateli, znovu zvažte použití funkcí izolovaného úložiště, které cílí na obor počítače . Pokud aplikace musí číst data z celého počítače, raději čte data z umístění, které je zapisovatelné jenom účty správce. Adresář %PROGRAMFILES% a HKLM podregistr registru jsou příklady umístění, která se dají zapisovat jenom správci a číst ho všichni. Data načtená z těchto umístění se proto považují za důvěryhodná.

Pokud aplikace musí použít obor počítače v prostředí s více uživateli, ověřte obsah libovolného souboru, který čtete z úložiště pro celý počítač. Pokud aplikace deserializuje objektové grafy z těchto souborů, zvažte použití bezpečnější serializátory jako XmlSerializer místo nebezpečných serializátorů jako BinaryFormatter nebo NetDataContractSerializer. Buďte opatrní u hluboko vnořených grafů objektů nebo grafů objektů, které provádějí přidělování prostředků na základě obsahu souboru.

Umístění izolovaného úložiště

Někdy je vhodné ověřit změnu izolovaného úložiště pomocí systému souborů operačního systému. Budete pravděpodobně chtít znát umístění souborů izolovaného úložiště. Toto umístění se liší v závislosti na operačním systému. V následující tabulce jsou uvedeny kořenové adresáře, ve kterých je izolované úložiště vytvořeno v několika běžných operačních systémech. Hledejte v tomto kořenovém adresáři adresáře Microsoft\IsolatedStorage. Chcete-li izolované úložiště zobrazit v systému souborů, musíte změnit nastavení složek tak, aby se zobrazovaly skryté soubory a složky.

Operační systém Umístění v systému souborů
Windows 2000, Windows XP, Windows Server 2003 (upgrade z Windows NT 4.0) Úložiště podporující cestovní profily =

<SYSTEMROOT>\Profiles\<user>\Application Data

Úložiště bez možnosti cestovního profilu =

<SYSTEMROOT>\Profiles\<user>\Local Settings\Application Data
Windows 2000 – čistá instalace (a upgrady ze systému Windows 98 a Windows NT 3.51) Úložiště podporující cestovní profily =

<SYSTEMDRIVE>\Documents and Settings\user>\<Application Data

Úložiště bez možnosti cestovního profilu =

<SYSTEMDRIVE>\Documents and Settings\<user>\Local Settings\Application Data
Windows XP, Windows Server 2003 – čistá instalace (a upgrady ze systému Windows 2000 a Windows 98) Úložiště podporující cestovní profily =

<SYSTEMDRIVE>\Documents and Settings\user>\<Application Data

Úložiště bez možnosti cestovního profilu =

<SYSTEMDRIVE>\Documents and Settings\<user>\Local Settings\Application Data
Windows 8, Windows 7, Windows Server 2008, Windows Vista Úložiště podporující cestovní profily =

<SYSTEMDRIVE>\Users\<user>\AppData\Roaming

Úložiště bez možnosti cestovního profilu =

<SYSTEMDRIVE>\Users\<user>\AppData\Local

Vytváření, provádění výčtů a odstraňování izolovaného úložiště

.NET poskytuje tři třídy v System.IO.IsolatedStorage oboru názvů, které vám pomůžou provádět úlohy, které zahrnují izolované úložiště:

Třídy izolovaného úložiště umožňují vytvořit, provádět výčty a odstranit izolované úložiště. Metody pro provádění těchto úloh jsou k dispozici prostřednictvím objektu IsolatedStorageFile . Některé operace vyžadují, abyste měli IsolatedStorageFilePermission oprávnění, které představuje právo spravovat izolované úložiště. K přístupu k souboru nebo adresáři možná budete potřebovat také práva operačního systému.

Řadu příkladů, které demonstrují běžné úlohy izolovaného úložiště, najdete v tématech s postupy uvedenými v souvisejících tématech.

Scénáře pro izolované úložiště

Izolované úložiště lze využít v mnoha situacích, mezi které patří tyto čtyři scénáře:

  • Stažené ovládací prvky. Ovládací prvky spravovaného kódu stažené z Internetu nemohou zapisovat na pevný disk pomocí běžných vstupně-výstupních tříd, mohou však používat izolované úložiště pro uchování uživatelských nastavení a stavů aplikace.

  • Úložiště sdílených komponent. Komponenty sdílené mezi aplikacemi mohou používat izolované úložiště pro poskytování řízeného přístupu k úložišti dat.

  • Serverové úložiště. Serverové aplikace mohou používat izolované úložiště pro poskytování individuálních úložišť pro velký počet uživatelů, kteří vytvářejí požadavky na aplikaci. Vzhledem k tomu, že izolované úložiště je vždy odděleno od uživatele, musí server zosobnit uživatele, který vytváří daný požadavek. V tomto případě jsou data izolovaná na základě identity objektu zabezpečení, což je stejná identita, kterou aplikace používá k rozlišení mezi svými uživateli.

  • Cestovní profily. Aplikace mohou izolované úložiště používat také s cestovními profily uživatelů. Díky tomu se mohou izolovaná úložiště přesouvat spolu s profilem.

Izolované úložiště nepoužívejte v následujících situacích:

  • Pro ukládání vysoce citlivých údajů, jako jsou například nezašifrované klíče nebo hesla, protože izolované úložiště není chráněno před vysoce důvěryhodným kódem, nespravovaným kódem nebo před důvěryhodnými uživateli počítače.

  • Pro uložení kódu.

  • Pro uložení nastavení konfigurace a nasazení, které řídí správci. (Předvolby uživatele se nepovažují za nastavení konfigurace, protože je správci neovládají.)

Mnoho aplikací používá databáze k ukládání a izolaci dat. V tomto případě jeden nebo více řádků v databázi může představovat úložiště pro konkrétního uživatele. Můžete se rozhodnout pro používání izolovaného úložiště namísto databáze, pokud je počet uživatelů nízký, pokud je režie používání databáze značná, nebo pokud neexistuje žádné zařízení pro databázi. Také pokud aplikace vyžaduje úložiště, které je pružnější a složitější než možnosti řádku v databázi. Izolované úložiště může poskytnout reálnou alternativu.

Titulek Popis
Typy izolace Popisuje různé typy izolace.
Postupy: Získávání úložišť pro izolované úložiště Poskytuje příklad použití IsolatedStorageFile třídy k získání úložiště izolovaného uživatelem a sestavením.
Postupy: Vytvoření výčtu úložišť pro izolované úložiště Ukazuje, jak použít metodu IsolatedStorageFile.GetEnumerator k výpočtu velikosti veškerého izolovaného úložiště pro uživatele.
Postupy: Odstraňování úložišť v izolovaném úložišti Ukazuje, jak metodu IsolatedStorageFile.Remove použít dvěma různými způsoby odstranění izolovaných úložišť.
Postupy: Příprava na vyčerpání volného prostoru pomocí izolovaného úložiště Zobrazuje způsob měření zbývající kapacity v izolovaném úložišti.
Postupy: Vytváření souborů a adresářů v izolovaném úložišti Obsahuje některé příklady vytváření souborů a adresářů v izolovaném úložišti.
Postupy: Hledání existujících souborů a adresářů v izolovaném úložišti Znázorňuje způsob čtení struktury adresářů a souborů v izolovaném úložišti.
Postupy: Čtení a zápis do souborů v izolovaném úložišti Poskytuje příklad zápisu řetězce do souboru izolovaného úložiště a jeho zpětné čtení.
Postupy: Odstraňování souborů a adresářů v izolovaném úložišti Znázorňuje způsob odstraňování souborů a adresářů izolovaného úložiště.
Vstup/výstup souborů a streamů Objasňuje způsob vytváření synchronního a asynchronního přístupu k datovým proudům souborů a dat.

Reference