IsolatedStorageContainment Enumeração
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Cuidado
Code Access Security is not supported or honored by the runtime.
Especifica o uso permitido de armazenamento isolado.
public enum class IsolatedStorageContainment
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public enum IsolatedStorageContainment
[System.Serializable]
public enum IsolatedStorageContainment
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum IsolatedStorageContainment
public enum IsolatedStorageContainment
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type IsolatedStorageContainment =
[<System.Serializable>]
type IsolatedStorageContainment =
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type IsolatedStorageContainment =
type IsolatedStorageContainment =
Public Enum IsolatedStorageContainment
- Herança
- Atributos
Campos
| Nome | Valor | Description |
|---|---|---|
| None | 0 | O uso de armazenamento isolado não é permitido. |
| DomainIsolationByUser | 16 | O armazenamento é isolado primeiro pelo usuário e, em seguida, por domínio e assembly. O armazenamento também é isolado pelo computador. Os dados só podem ser acessados no contexto do mesmo aplicativo e somente quando executados pelo mesmo usuário. Isso é útil quando um assembly de terceiros deseja manter um armazenamento de dados privado. |
| ApplicationIsolationByUser | 21 | O armazenamento é isolado primeiro pelo usuário e depois pelo aplicativo. O armazenamento também é isolado pelo computador. Isso fornece um armazenamento de dados para o aplicativo acessível em qualquer contexto de domínio. O compartimento de dados por aplicativo requer confiança adicional porque ele potencialmente fornece um "túnel" entre aplicativos que podem comprometer o isolamento de dados de aplicativos em sites específicos. |
| AssemblyIsolationByUser | 32 | O armazenamento é isolado primeiro pelo usuário e depois pelo assembly de código. O armazenamento também é isolado pelo computador. Isso fornece um armazenamento de dados para o assembly acessível em qualquer contexto de domínio. O compartimento de dados por assembly requer confiança adicional porque ele potencialmente fornece um "túnel" entre aplicativos que podem comprometer o isolamento de dados de aplicativos em sites específicos. |
| DomainIsolationByMachine | 48 | O armazenamento é isolado primeiro pelo computador e, em seguida, por domínio e assembly. Os dados só podem ser acessados no contexto do mesmo aplicativo e somente quando executados no mesmo computador. Isso é útil quando um assembly de terceiros deseja manter um armazenamento de dados privado. |
| AssemblyIsolationByMachine | 64 | O armazenamento é isolado primeiro pelo computador e, em seguida, pelo assembly de código. Isso fornece um armazenamento de dados para o assembly acessível em qualquer contexto de domínio. O compartimento de dados por assembly requer confiança adicional porque ele potencialmente fornece um "túnel" entre aplicativos que podem comprometer o isolamento de dados de aplicativos em sites específicos. |
| ApplicationIsolationByMachine | 69 | O armazenamento é isolado primeiro pelo computador e depois pelo aplicativo. Isso fornece um armazenamento de dados para o aplicativo acessível em qualquer contexto de domínio. O compartimento de dados por aplicativo requer confiança adicional porque ele potencialmente fornece um "túnel" entre aplicativos que podem comprometer o isolamento de dados de aplicativos em sites específicos. |
| DomainIsolationByRoamingUser | 80 | O armazenamento é isolado primeiro pelo usuário e, em seguida, por domínio e assembly. O armazenamento será movido se Windows roaming de dados do usuário estiver habilitado. Os dados só podem ser acessados no contexto do mesmo aplicativo e somente quando executados pelo mesmo usuário. Isso é útil quando um assembly de terceiros deseja manter um armazenamento de dados privado. |
| AssemblyIsolationByRoamingUser | 96 | O armazenamento é isolado primeiro pelo usuário e, em seguida, pelas evidências do assembly. O armazenamento será movido se Windows roaming de dados do usuário estiver habilitado. Isso fornece um armazenamento de dados para o assembly acessível em qualquer contexto de domínio. O compartimento de dados por assembly requer confiança adicional porque ele potencialmente fornece um "túnel" entre aplicativos que podem comprometer o isolamento de dados de aplicativos em sites específicos. |
| ApplicationIsolationByRoamingUser | 101 | O armazenamento é isolado primeiro pelo usuário e, em seguida, pelas evidências do aplicativo. O armazenamento será movido se Windows roaming de dados do usuário estiver habilitado. Isso fornece um armazenamento de dados para o aplicativo acessível em qualquer contexto de domínio. O compartimento de dados por aplicativo requer confiança adicional porque ele potencialmente fornece um "túnel" entre aplicativos que podem comprometer o isolamento de dados de aplicativos em sites específicos. |
| AdministerIsolatedStorageByUser | 112 | Capacidade de administração ilimitada para o repositório de usuários. Permite a navegação e a exclusão de todo o repositório de usuários, mas não o acesso de leitura diferente da própria identidade de domínio/assembly do usuário. |
| UnrestrictedIsolatedStorage | 240 | O uso do armazenamento isolado é permitido sem restrições. O código tem acesso total a qualquer parte do repositório de usuários, independentemente da identidade do domínio ou do assembly. Esse uso do armazenamento isolado inclui a capacidade de enumerar o conteúdo do armazenamento isolado de dados de armazenamento. |
Comentários
Cuidado
O CAS (Code Access Security) foi preterido em todas as versões do .NET Framework e do .NET. As versões recentes do .NET não honram as anotações CAS e geram erros se as APIs relacionadas ao CAS forem usadas. Os desenvolvedores devem buscar meios alternativos para realizar tarefas de segurança.
O armazenamento isolado usa evidências para determinar uma área de armazenamento exclusiva para uso por um aplicativo ou componente. A identidade de um assembly determina exclusivamente a raiz de um sistema de arquivos virtual para uso por esse assembly. Assim, em vez de muitos aplicativos e componentes compartilharem um recurso comum, como o sistema de arquivos ou o registro, cada um tem sua própria área de arquivo inerentemente atribuída a ele.
Quatro escopos de isolamento básicos são usados ao atribuir armazenamento isolado:
User– O código é sempre definido de acordo com o usuário atual. O mesmo assembly receberá repositórios diferentes ao ser executado por usuários diferentes.Machine- O código sempre é delimitado conforme a máquina. O mesmo assembly receberá os mesmos repositórios ao ser executado por usuários diferentes no mesmo computador.Assembly- O código é identificado criptograficamente por nome forte (por exemplo, Microsoft. Office.* ou Microsoft. Escritório. Word), por publicador (com base na chave pública), por URL (por exemplo,http://www.fourthcoffee.com/process/grind.htm), por site ou por zona.Domain- O código é identificado com base em evidências associadas ao domínio do aplicativo. A identidade do aplicativo Web é derivada da URL do site ou da URL, site ou zona da página da Web. A identidade de código local é baseada no caminho do diretório do aplicativo.
Para definições de URL, site e zona, consulte UrlIdentityPermission, SiteIdentityPermissione ZoneIdentityPermission.
Essas identidades são agrupadas, caso em que as identidades são aplicadas uma após a outra até que o armazenamento isolado desejado seja criado. Os agrupamentos válidos são User+Assembly e User+Assembly+Domain. Esse agrupamento de identidades é útil em muitos aplicativos diferentes.
Se os dados forem armazenados por domínio, usuário e assembly, os dados serão privados nesse único código nesse assembly poderá acessar os dados. O armazenamento de dados também é isolado pelo aplicativo no qual ele é executado, de modo que o assembly não represente um possível vazamento expondo dados a outros aplicativos.
O isolamento por assembly e usuário pode ser usado para dados de usuário que se aplicam a vários aplicativos; por exemplo, informações de licença ou informações pessoais de um usuário (nome, credenciais de autenticação e assim por diante) independentes de um aplicativo.
IsolatedStorageContainment expõe sinalizadores que determinam se um aplicativo tem permissão para usar o armazenamento isolado e, nesse caso, quais combinações de identidade têm permissão para usá-lo. Ele também determina se um aplicativo tem permissão para armazenar informações em um local que pode vagar com um usuário (Windows Perfis de Usuário Móvel ou Redirecionamento de Pasta deve ser configurado).