隔离的类型
更新:2007 年 11 月
对独立存储的访问总是限制在创建该存储的用户。要实现这种类型的隔离,公共语言运行库使用的用户标识注记与操作系统识别的注记相同,该用户标识注记是与存储区打开时代码在其中运行的进程相关联的标识。虽然该标识是已验证身份的用户标识,但是模拟可以导致当前用户的标识动态地改变。
除了按用户隔离之外,还根据与应用程序的域和程序集相关的(或仅与程序集相关的)标识限制对独立存储的访问。运行库以下面几种方式获得这些标识:
代表应用程序的证据的域标识,在 Web 应用程序情况下,该域标识可能是完整 URL。对于寄宿于外壳的代码,该域标识可能基于应用程序目录路径。例如,如果可执行文件在路径 C:\Office\MyApp.exe 中运行,域标识可能为 C:\Office\MyApp.exe。
程序集标识是程序集的证据。程序集标识可能来自于加密的数字签名,它可以是程序集的强名称、程序集的发行者或其 URL 标识。如果程序集同时具有强名称和发行者标识,则使用发行者标识。如果程序集来自 Internet 并且未签名,则使用 URL 标识。有关程序集和强名称的更多信息,请参见使用程序集编程。
漫游存储区和具有漫游用户配置文件的用户一起移动。文件被写入网络目录并被下载到用户登录的任何一台计算机上。有关漫游用户配置文件的更多信息,请参见 IsolatedStorageScope.Roaming。
将用户、域和程序集标识的概念结合起来,独立存储可以按下面几种方式隔离数据,每种方式都有其自己的使用情况:
这两种隔离的每一种都可以和漫游用户配置文件结合。有关更多信息,请参见独立和漫游。
下面的插图说明了如何将存储区隔离在不同的范围。
独立存储的类型
请注意,除了漫游存储区之外,独立存储始终被计算机隐式隔离,这是因为独立存储使用给定计算机本地的存储功能。