Compartir a través de


Introducción al almacenamiento aislado

Actualización: noviembre 2007

Cuando una aplicación almacena datos en un archivo, el nombre de archivo y la ubicación de almacenamiento se deben elegir con cuidado para minimizar el riesgo de que otra aplicación llegue a conocer dicha ubicación, lo que la haría susceptible de recibir daños. Si no se dispone de un sistema estándar que controle estos problemas, el desarrollo de técnicas ad hoc para minimizar los conflictos de almacenamiento puede ser complicado y los resultados poco confiables.

Con el almacenamiento aislado, los datos están siempre aislados por usuario y ensamblado. Las credenciales como el origen o el nombre seguro del ensamblado determinan la identidad del ensamblado. Los datos se pueden aislar también por el dominio de la aplicación, usando credenciales parecidas.

Al usar almacenamiento aislado, las aplicaciones guardan los datos en un compartimiento de datos único asociado a algún aspecto de la identidad del código, como su sitio Web, editor o firma. El compartimiento de datos es abstracto, no una ubicación de almacenamiento concreta; está formado por uno o varios archivos de almacenamiento aislado, denominados almacenes, que contienen las ubicaciones reales del directorio donde están almacenados los datos. Por ejemplo, una aplicación Web puede tener un compartimiento de datos asociado, y un directorio del sistema de archivos implementaría el almacén que conserva de hecho los datos de esa aplicación. Los datos guardados en el almacén pueden ser de cualquier tipo, desde información de preferencia del usuario hasta el estado de la aplicación. La ubicación del compartimiento de datos es transparente para el programador. Normalmente, los almacenes residen en el cliente, pero una aplicación de servidor puede usar almacenes aislados para guardar información suplantando al usuario en cuyo nombre funciona. El almacenamiento aislado también puede guardar información en un servidor con un perfil de usuario móvil para que éste pueda tener acceso a la información desde donde se encuentre.

Los administradores pueden limitar la cantidad de almacenamiento aislado de que disponen un usuario o una aplicación, basándose en un nivel de confianza adecuado. Además, los administradores pueden quitar todos los datos almacenados de un usuario. Para crear o tener acceso al almacenamiento aislado, el código debe disponer del IsolatedStorageFilePermission correspondiente.

El código debe tener todos los derechos del sistema operativo de plataforma nativa necesarios para tener acceso al almacenamiento aislado. Por ejemplo, en Windows 2000 se deben cumplir las listas de control de acceso (ACL) que controlan qué usuarios tienen derechos para usar el sistema de archivos. Las aplicaciones de Microsoft .NET Framework ya tienen los derechos de sistema operativo para tener acceso al almacenamiento aislado a menos que lleven a cabo una suplantación (específica de plataforma). En ese caso, la aplicación tiene la responsabilidad de garantizar que la identidad del usuario suplantado disponga de los derechos de sistema operativo adecuados para tener acceso al almacenamiento aislado. Este acceso proporciona una forma cómoda para que el código que se ejecuta o se descarga desde el Web lea y escriba en un área de almacenamiento relacionada con un usuario concreto.

En ocasiones resulta útil comprobar un cambio en el almacenamiento aislado usando el sistema de archivos del sistema operativo. Los programadores pueden necesitar también conocer la ubicación de los archivos del almacenamiento aislado. La ubicación cambia dependiendo del sistema operativo. En la tabla siguiente se muestran las ubicaciones raíz en que se crea el almacenamiento aislado en algunos de los sistemas operativos más frecuentes. Busque el directorio Microsoft\IsolatedStorage bajo esta ubicación raíz. Para que se muestren los archivos y carpetas ocultos y ver el almacenamiento aislado en el sistema de archivos debe cambiar la configuración de carpetas.

Sistema operativo

Ubicación en el sistema de archivos

Windows 98, Windows Me - perfiles de usuario no habilitados

Almacenes con movilidad =

<RAÍZ_DEL_SISTEMA>\Datos de programa

Almacenes sin movilidad = WINDOWS\Configuración local\Datos de programa

Windows 98, Windows Me - perfiles de usuario habilitados

Almacenes con movilidad =

<RAÍZ_DEL_SISTEMA>\Profiles\<usuario>\Datos de programa

Almacenes sin movilidad = Windows\Configuración local\Datos de programa

Windows NT 4.0

<RAÍZ_DEL_SISTEMA>\Profiles\<usuario>\Datos de programa

Service Pack 4 de Windows NT 4.0

Almacenes con movilidad =

<RAÍZ_DEL_SISTEMA>\Profiles\<usuario>\Datos de programa

Almacenes sin movilidad =

<RAÍZ_DEL_SISTEMA>\Profiles\<usuario>\Configuración local\Datos de programa

Windows 2000, Windows XP, Windows Server 2003 - actualización desde NT 4.0

Almacenes con movilidad =

<RAÍZ_DEL_SISTEMA>\Profiles\<usuario>\Datos de programa

Almacenes sin movilidad =

<RAÍZ_DEL_SISTEMA>\Profiles\<usuario>\Configuración local\Datos de programa

Windows 2000 - instalación nueva (y actualizaciones desde Windows 98 y NT 3.51)

Almacenes con movilidad =

<UNIDAD_DEL_SISTEMA>\Documents and Settings\<usuario>\Datos de programa

Almacenes sin movilidad =

<UNIDAD_DEL_SISTEMA>\Documents and Settings\<usuario>\Configuración local\Datos de programa

Windows XP, Windows Server 2003 - instalación nueva (y actualizaciones desde Windows 2000 y Windows 98)

Almacenes con movilidad =

<UNIDAD_DEL_SISTEMA>\Documents and Settings\<usuario>\Datos de programa

Almacenes sin movilidad =

<UNIDAD_DEL_SISTEMA>\Documents and Settings\<usuario>\Configuración local\Datos de programa

Windows Vista

Almacenes con movilidad =

<UNIDAD_DEL_SISTEMA>\Users\<usuario>\AppData\Roaming

Almacenes sin movilidad =

<UNIDAD_DEL_SISTEMA>\Users\<usuario>\AppData\Local

Vea también

Referencia

IsolatedStorage

Otros recursos

Almacenamiento aislado

Realizar tareas de almacenamiento aislado

E/S de archivos y secuencias