- São ambientes preparados para rodar aplicações externas com segurança, um exemplo é o IIS, que roda um assembly(site) ao mesmo empo com vários processos diferentes, um para cada um dos usuários diferentes. Outro é o IE, que roda vários assemblies ao mesmo tempo separadamente para cada um dos sites. Basicamente trata-se da separação de recursos por assembly
- A Classe AppDomain
- activationContext: Retorna o contexto para o application Domínio Corrente.
- applicationIdentity: A identidade do AppDomain
- applicationTrust: Descricao das informacoes sobre permissoes e nivel de segurança.
- baseDirectory: Diretório base onde roda o appDomain
- currentDomain: Analiza o Domínio Corrente e verifica permissões
- domainManager: Retorna o gerenciador de Domínios que estava disponível quando a aplicação foi iniciada
- dynamic Directory: Diretório onde assemblies dinâmicos são executados
- Evidence: Recupera a Evidence, tem a ver com contexto de segurança do appDomain.
- friendlyName: um alias para o appDomain
- id: Numero que identifica o processo
- relativeSearchPath: Recupera o caminho relativo aos assemblies de base
- setupInformation: Configuração do appDomain
- shadowCopyFile: Verifica se o assembly é uma cópia
- applyPolicy: Retorna o nome do assembly após uma política ter sido atribuída
- createComInstanceFrom: Cria uma instancia de um tipo COM
- createDomain: Cria um application Domain
- createInstance: Cria uma instancia de um tipo especificado em um assembly
- createInstanceFrom: Cria uma instancia de um tipo especificado em um assembly
- createInstanceAndUnwrap: Cria uma instancia de um tipo especificado em um assembly
- defineDynamicAssembly: Define um assembly dinâmico em um AppDomain
- executeAssembly: Executa o assembly de um determinado arquivo
- doCallBack: Usa delegates para rodar um código de outra appDomain
- executeAssemblyFromFile: Executa um assembly
- getAssemblies: retorna o assembly que está executando
- getCurrentThreadId: Retorna o Id da thread rodando
- getData: retorna o valor guardado naquele apDomain
- initializeLifeTimeService: impede o timeout
- isDefaultAppDomain: Retorna se o domínio é ou não o padrão
- Criando o appDomain
- appDomain.CreateDomain: Cria
- Carregando Assemblies
- executeAssembly: Pode passar como parâmetro comandos, caminhos
- executeAssemblyByName: Pode-se fazer uma referencia a um caminho de assembly e utilizar esse método para associar ao assemblly
- Descarregando o appDomain
- appDomain.Unload
- Configurando o appDomain
- Limitando privilégios de um appDomain
- evidence: É a informacao que obtida apartir do assembly para se determinar a qual grupo de código esse assembly deve fazer parte. Esse grupo de código por sua vez é quem determina os privilégios do assembly em questão. Esse evidence pode ser um diretório, um site, uma assinatura.
- Apartir do objeto System.Security,Policy.Evidence, um objeto é criado.
- O construtor necessita do endereço do assembly e do tipo de segurança.
- System.Security,Policy.Zone, são tipo de evidences pré-definidos utilizando uma enumeração
- É do mesmo modo que citado acima porem, a evidence é atribuído no create do appDomain,
- Configurando as propriedades do appDomain
- Propriedades
- applicationBase: A mais importante, todas as outras já estão pré-definidas. Recupera ou atribui o endereço do aplicativo.
- activationArguments: Recupera ou atribui as propriedades de um aapDomain criado.
- applicationName: é o nome da aplicação
- applicationTrust: Informações sobre Security e Trust
- configurationFile: Nome do arquivo de configuração
- disallowApplicationBaseProbing: Especifica se o application base está testado (probed).
- disallowBindingRedirects: Recupera ou atribui se a aplicacao permite redirecioamento de associação de assemblies
- disallowCodeDownloads: Permite ou não q a aplicacao faca download de códigos
- disallowPublisherPolicy: Especifica de a secao “Publisher” está associada ao appDomain
- dynamicBase: Local dos arquivos gerados dinamicamente
- licenseFile: Local do arquivo de licença relativo a aplicacao
- loaderOptmization: Especifica a Politica de otimização utilizada na otimização da carga de um executável
segunda-feira, 27 de setembro de 2010
Application Domain
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário