Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

Tipos de aislamiento

El acceso al almacenamiento aislado se restringe siempre al usuario que lo creó. Para implementar este tipo de aislamiento, Common Language Runtime usa el mismo concepto de identidad de usuario que reconoce el sistema operativo, es decir, la identidad asociada al proceso en que se está ejecutando código cuando se abre el almacén. Esta identidad es una identidad de usuario autenticada, pero la suplantación puede hacer que la identidad del usuario actual cambie dinámicamente.

El acceso al almacenamiento aislado también se restringe por la identidad asociada al dominio de la aplicación y al ensamblado, o por la del ensamblado sólo. El motor en tiempo de ejecución obtiene estas tres identidades de las siguientes maneras:

  • La identidad de dominio representa la prueba de la aplicación, que en el caso de una aplicación web podría ser la dirección URL completa. Para código hospedado en el shell, la identidad de dominio se debe basar en la ruta de acceso del directorio de la aplicación. Por ejemplo, si el archivo ejecutable se ejecuta desde C:\Office\MyApp.exe, la identidad de dominio sería C:\Office\MyApp.exe.

  • La identidad de ensamblado es la prueba del ensamblado. Puede proceder de una firma digital criptográfica, que puede ser el nombre seguro del ensamblado, la compañía de software del ensamblado o su identidad de dirección URL. Si un ensamblado tiene un nombre seguro y una identidad de compañía de software, se usa ésta última. Si el ensamblado procede de Internet y no está firmado, se usa la identidad de dirección URL. Para obtener más información sobre ensamblados y nombres seguros, vea Programar con ensamblados.

  • Los almacenes móviles se trasladan con un usuario que tenga un perfil de usuario móvil. Los archivos se escriben en un directorio de red y se descargan en cualquier equipo en que el usuario inicie la sesión. Para obtener más información sobre los perfiles de usuario móvil, vea IsolatedStorageScope.Roaming.

Combinando los conceptos de usuario, dominio e identidad de ensamblado, el almacenamiento aislado puede aislar datos de las maneras siguientes, cada una de las cuales tiene sus propios escenarios de uso:

Cualquiera de estos aislamientos se puede combinar con un perfil de usuario móvil. Para obtener más información, consulte la sección Almacenamiento aislado y Movilidad.

En la siguiente ilustración se muestra cómo se aíslan los almacenes en distintos ámbitos.

Tipos de almacenamiento aislado

Aislamiento por usuario y ensamblado

Hay que tener en cuenta que excepto para los almacenes móviles, el equipo aísla siempre de manera implícita el almacenamiento aislado porque utiliza el almacenamiento local de un equipo determinado.

Nota importante Importante

El almacenamiento aislado no está disponible para las aplicaciones de la Tienda Windows. En su lugar, se pueden usar las clases de datos de la aplicación del espacio de nombres Windows.Storage incluidas en la API de Windows en tiempo de ejecución para almacenar archivos y datos locales. Para obtener más información, vea Acceder a datos de aplicaciones con Windows en tiempo de ejecución en el Centro de desarrollo de Windows.

Cuando el ensamblado que utiliza el almacén de datos deba estar accesible desde el dominio de cualquier aplicación, el aislamiento por usuario y por ensamblado es adecuado. Normalmente, en esta situación, el almacenamiento aislado se usa para guardar datos que afectan a varias aplicaciones y no están unidos a ninguna en concreto, como el nombre del usuario o la información de licencia. Para tener acceso a almacenamiento aislado por usuario y ensamblado, el código debe ser de confianza para que transfiera información entre las aplicaciones. Por lo general, el aislamiento por usuario y ensamblado se permite en intranets, pero no en Internet. Si se llama al método estático IsolatedStorageFile.GetStore de IsolatedStorageScope y se pasa un usuario y un ensamblado, se obtiene el almacenamiento con este tipo de aislamiento.

El siguiente ejemplo de código recupera un almacén aislado por usuario y ensamblado. Se puede obtener acceso al almacén mediante el objeto isoFile .


IsolatedStorageFile isoFile =
    IsolatedStorageFile.GetStore(IsolatedStorageScope.User |
    IsolatedStorageScope.Assembly, null, null);


Para obtener un ejemplo sobre el uso de parámetros de prueba, consulte GetStore(IsolatedStorageScope, Evidence, Type, Evidence, Type).

También se puede utilizar el método GetUserStoreForAssembly como método abreviado, tal como se muestra en el ejemplo de código siguiente. Este método abreviado no se puede usar para abrir almacenes móviles; en estos casos, use GetStore.


IsolatedStorageFile isoFile = IsolatedStorageFile.GetUserStoreForAssembly();


Si la aplicación usa un ensamblado de terceros que requiere un almacén de datos privado, se puede utilizar el almacenamiento aislado para guardar los datos privados. El aislamiento por usuario, dominio y ensamblado garantiza que sólo el código de un determinado ensamblado pueda tener acceso a los datos, sólo cuando el ensamblado esté siendo utilizado por la aplicación que se estaba ejecutando en el momento en que el ensamblado creó el almacén, y sólo cuando quien ejecuta la aplicación es el usuario para el que se creó el almacén. El aislamiento por usuario, dominio y ensamblado impide que un ensamblado de terceros filtre datos a otras aplicaciones. Este tipo de aislamiento se debe usar como predeterminado si se desea usar almacenamiento aislado pero no se está seguro de qué tipo de aislamiento usar. Si se llama al método estático GetStore de IsolatedStorageFile y se pasa un usuario, dominio y ensamblado, IsolatedStorageScope devuelve un almacenamiento con este tipo de aislamiento.

El siguiente ejemplo de código recupera un almacén aislado por usuario, dominio y ensamblado. Se puede obtener acceso al almacén mediante el objeto isoFile.


IsolatedStorageFile isoFile =
    IsolatedStorageFile.GetStore(IsolatedStorageScope.User |
        IsolatedStorageScope.Domain |
        IsolatedStorageScope.Assembly, null, null);


Existe otro método abreviado que también se puede usar, tal como se muestra en el ejemplo de código siguiente. Pero no se puede usar para abrir almacenes móviles; en estos casos, use GetStore.


IsolatedStorageFile isoFile = IsolatedStorageFile.GetUserStoreForDomain();


Los perfiles de usuario móvil son una característica de Windows que permite que un usuario configure una identidad en una red y utilizar esa identidad para registrarse en cualquier equipo de red, transportando todas las configuraciones personalizadas. Un ensamblado que usa almacenamiento aislado puede especificar que el almacenamiento aislado del usuario se traslade junto al perfil del usuario móvil. La movilidad se puede usar junto con el aislamiento por usuario y ensamblado o el aislamiento por usuario, dominio y ensamblado. Si no se usa el ámbito de la movilidad, los almacenes no se trasladarán aunque se use un perfil de usuario móvil.

El siguiente ejemplo de código recupera un almacén aislado por usuario y ensamblado móvil. Se puede obtener acceso al almacén mediante el objeto isoFile .


IsolatedStorageFile isoFile =
    IsolatedStorageFile.GetStore(IsolatedStorageScope.User |
        IsolatedStorageScope.Assembly |
        IsolatedStorageScope.Roaming, null, null);


Se puede agregar un ámbito de dominio para crear un almacén aislado por usuario, dominio y aplicación móvil. En el siguiente ejemplo de código se muestra este caso.


IsolatedStorageFile isoFile =
    IsolatedStorageFile.GetStore(IsolatedStorageScope.User |
        IsolatedStorageScope.Assembly | IsolatedStorageScope.Domain |
        IsolatedStorageScope.Roaming, null, null);


Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft