Izolované úložiště
Izolované úložiště je mechanismus pro ukládání dat poskytující izolaci a bezpečnost definováním standardizovaných způsobů asociace kódu s uloženými daty. Standardizace také poskytuje další výhody. Správci mohou používat nástroje, které jsou navrženy pro nastavení kapacity izolovaného úložiště, nastavení zásad zabezpečení a odstraňování nepoužívaných dat. S izolovaným úložištěm již kód dále nepotřebuje jedinečné cesty pro určení bezpečných umístění v souborovém systému a data jsou chráněny před jinými aplikacemi, které mají pouze přístup k izolovanému úložišti. Pevně zakódovaná informace, která označuje, kde je umístěna oblast úložiště aplikace není potřebná.
Toto téma obsahuje následující části:
Datové oddíly a úložiště
Zabezpečení přístupu
Umístění izolovaného úložiště
Vytváření, provádění výčtů a odstraňování izolovaného úložiště
Scénáře pro izolované úložiště
Příbuzná témata
Odkaz
Datové oddíly a úložiště
Když aplikace ukládá data do souboru, umístění souboru a jeho název musí být pečlivě vybrány, aby se minimalizovala možnost, že umístění úložiště bude známo jiné aplikaci, což by zapříčinilo možnost poškození. Bez standardního systému pro správu těchto problémů může být vývoj ad hoc technik, které minimalizují konflikty úložiště 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 sestavení. Pověření, jako je například původ nebo silný název sestavení určují identitu sestavení. Data mohou také být izolována podle domény aplikace s použitím podobných pověření.
Používáte-li izolované úložiště, aplikace uloží data do jedinečného datového oddílu, který je přidružený k některým aspektům identity kódu, jako je vydavatel nebo signatura. Datový oddíl je abstrakcí, nikoli specifickým umístěním úložiště. Skládá se z jednoho nebo více souborů izolovaného úložiště, volaných úložišť, které obsahují skutečný adresář, kde jsou umístěna data. Aplikace může mít například přidružené datové oddíly a adresář v souborovém systému může implementovat úložiště, které ve skutečnosti uchovává data pro danou 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ého oddílu transparentní. Úložiště jsou obvykle umístěny u klienta, ale serverové aplikace mohou používat izolované úložiště k ukládání informací zosobněním uživatele, pro kterého je úložiště třeba. Izolované úložiště může také ukládat informace na serveru s cestovním profilem uživatele, aby informace cestovaly s pohyblivým uživatelem.
Back to top
Zabezpečení přístupu
Použití 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. To je zvláště užitečné pro stažené součásti, které uživatel bude pravděpodobně chtít spustit opatrně. Zásady zabezpečení zřídka udělí tento druh oprávnění kódu pro přístup k souborovému systému pomocí standardních vstupně-výstupní mechanismů. Avšak ve výchozím nastavení má kód spuštěný z místního počítače, místní sítě nebo Internetu uděleno právo používat izolované úložiště.
Správci mohou omezit, kolik izolovaného úložiště je dostupné aplikaci nebo uživateli, na základě příslušné úrovně vztahu důvěryhodnosti. Dále správci mohou kompletně odebrat trvalá data uživatele. Chcete-li vytvořit nebo získat přístup k izolovanému úložišti, musí mít kód uděleno příslušné IsolatedStorageFilePermission.
Chcete-li získat přístup k izolovanému úložišti, kód musí mít veškerá práva nezbytná pro operační systém nativní platformy. Například v systému Windows 2000 musí být splněny seznamy řízení přístupů (ACL), které určující, kteří uživatelé mají práva k používání souborového systému. Aplikace rozhraní .NET framework již mají práva operačního systému pro přístup k izolovanému úložišti, pokud vykonávají zosobnění (specifické pro platformu). V tomto případě je aplikace zodpovědná za zajištění, že zosobněná identita uživatele má správná práva operačního systému pro přístup k izolovanému úložišti. Tento přístup poskytuje pohodlný způsob pro kód, který je spuštěn nebo stáhnut z Webu pro čtení a zápis do oblasti úložiště vztahující se k určitému uživateli.
Back to top
Umístění izolovaného úložiště
Někdy je vhodné ověřit změnu izolovaného úložiště pomocí souborového systému operačního systému. Vývojáři mohou také potřebovat znát umístění izolovaného úložiště souborů. Toto umístění se liší v závislosti na operačním systému. V následující tabulce jsou uvedeny kořenové umístění, kde je izolované úložiště vytvořeno v několika běžných operačních systémech. Hledejte adresáře Microsoft\IsolatedStorage spadající pod toto umístění kořenového adresáře. Je nutné změnit nastavení složky pro zobrazování skrytých souborů a složek, aby bylo možné vidět izolované úložiště v souborovém systému.
Operační systém |
Umístění v souborovém systému |
---|---|
Windows 98, Windows Me - profily uživatelů nejsou povoleny |
Úložiště podporující roaming = <SYSTEMROOT>\Application Data Úložiště nonRoaming = WINDOWS\Local Settings\Application Data |
Windows 98, Windows Me - profily uživatelů jsou povoleny |
Úložiště podporující roaming = <SYSTEMROOT>\Profiles\<user>\Application Data Úložiště nonroaming = Windows\Local Settings\Application Data |
Windows NT 4.0 |
<SYSTEMROOT>\Profiles\<user>\Application Data |
Windows NT 4.0 - Service Pack 4 |
Úložiště podporující roaming = <SYSTEMROOT>\Profiles\<user>\Application Data Úložiště nonroaming = <SYSTEMROOT>\Profiles\<user>\Local Settings\Application Data |
Windows 2000, Windows XP, Windows Server 2003 - upgrade z Windows NT 4.0 |
Úložiště podporující roaming = <SYSTEMROOT>\Profiles\<user>\Application Data Úložiště nonroaming = <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í roaming = <SYSTEMDRIVE>\Documents and Settings\<user>\Application Data Úložiště nonroaming = <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í roaming = <SYSTEMDRIVE>\Documents and Settings\<user>\Application Data Úložiště nonroaming = <SYSTEMDRIVE>\Documents and Settings\<user>\Local Settings\Application Data |
Windows Vista |
Úložiště podporující roaming = <SYSTEMDRIVE>\Users\<user>\AppData\Roaming Úložiště nonroaming = <SYSTEMDRIVE>\Users\<user>\AppData\Local |
Back to top
Vytváření, provádění výčtů a odstraňování izolovaného úložiště
Tři hlavní třídy jsou poskytnuty, aby pomohly provádět úlohy, které se týkají izolovaného úložiště:
IsolatedStorageFile, která je odvozena z IsolatedStorage, poskytuje základní správu uloženého sestavení a souborů aplikace. Instance třídy IsolatedStorageFile představuje jedno úložiště umístěné v souborovém systému.
IsolatedStorageFileStream, která je odvozena z System.IO.FileStream, poskytuje přístup k souborům v úložišti.
IsolatedStorageScope je výčet, který umožňuje vytvořit a vybrat úložiště s příslušným typem izolace.
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 úkolů jsou k dispozici prostřednictvím objektů IsolatedStorageFile. Některé operace vyžadují, aby měly IsolatedStorageFilePermission, které představuje právo spravovat izolované úložiště. Může také potřebovat mít práva operačního systému pro přístup k souboru nebo adresáři. V systémech Microsoft Windows NT, Microsoft Windows 2000, Windows XP a Windows Vista, vám může nastavení seznamu řízení přístupů (ACL) bránit v přístupu k izolovanému úložišti. Nástroj izolovaného úložiště Storeadm.exe, lze také použít pro základní správu úložiště jako je například výpis nebo odstranění všech úložišť pro aktuálního uživatele.
Série příkladů, které ukazují běžné úlohy izolovaného úložiště naleznete v tématech uvedených v Příbuzná témata. Každý příklad má zdrojový soubor, který ukazuje jednu konkrétní úlohu. Pokyny pro nastavení, kompilaci a spuštění jsou uvedeny na hlavní stránce každého příkladu. Příklady jsou uvedeny pouze v jazyce C#.
Back to top
Scénáře pro izolované úložiště
Izolované úložiště je užitečné v mnoha situacích. Pět nejsnadněji identifikovatelných scénářů je dále popsáno:
Stažené ovládací prvky. Ovládací prvky spravovaného kódu staženého z Internetu nemají povolen zápis na pevný disk pomocí normálních I/O tříd, ale mohou používat izolované úložiště pro zachování nastavení uživatelů a stavů aplikace.
Sdílené součásti úložiště. Součásti, které jsou sdíleny mezi aplikacemi mohou používat izolované úložiště pro poskytnutí řízeného přístupu k úložišti dat.
Serverové úložiště. Serverové aplikace mohou používat izolované úložiště pro poskytnutí individuálních úložišť velkému počtu uživatelů, kteří tvoří požadavky na aplikaci. Protože je izolované úložiště vždy odděleno od uživatele, server musí zosobnit uživatele, který tvoří požadavek. V tomto případě jsou data izolována na základě identity principal, což je stejná identita jakou aplikace používá pro rozlišení uživatelů.
Roaming. Aplikace mohou také používat izolované úložiště s cestovními profily uživatelů. To umožňuje úložištím izolovaným podle uživatele, aby se pohybovaly spolu s profilem.
Přestože se izolované úložiště dobře hodí pro dříve popsané scénáře, existuje několik případů, ve kterých byste neměli používat izolované úložiště:
Nepoužívejte izolované úložiště 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.
Nepoužívejte izolované úložiště k ukládání kódu.
Nepoužívejte izolované úložiště k ukládání nastavení konfigurace a nasazení, které ovládají správci. (Předvolby uživatele se nepovažují za nastavení konfigurace, protože je správci neovládají.)
Mnoho dnešních 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ě místo databáze, když je počet uživatelů nízký, když je významná režie používání databáze, 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ž to, co poskytuje řádek databáze. Izolované úložiště může poskytnout reálnou alternativu.
Back to top
Příbuzná témata
Title |
Popis |
---|---|
Popisuje různé typy izolace. |
|
Obsahuje příklad použití třídy IsolatedStorageFile pro získání úložiště, které je izolováno podle uživatele a sestavení. |
|
Zobrazuje způsob použití metody IsolatedStorageFile.GetEnumerator pro výpočet velikosti všech izolovaných úložišť pro uživatele. |
|
Zobrazuje jak použít metodu IsolatedStorageFile.Remove dvěma různými způsoby pro odstranění izolovaných úložišť. |
|
Postupy: Předvídání podmínek nedostatku místa v rámci izolovaného úložiště |
Ukazuje, jak změřit zbývající prostor 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 |
Ukazuje, jak číst strukturu adresářů a souborů v izolovaném úložišti. |
Poskytuje příklad zápisu řetězce do IsolatedStorageFile a jeho čtení zpět. |
|
Postupy: Odstraňování souborů a adresářů v izolovaném úložišti |
Ukazuje, jak odstranit soubory a adresáře izolovaného úložiště. |
Vysvětluje, jak lze provést synchronní a asynchronní přístup k souboru a datovému proudu. |
Back to top