Share via


confiança Element (ASP.NET Settings Schema)

[Esta documentação destina-se apenas à visualização e está sujeita a alterações em versões posteriores. Os tópicos em branco estão incluídos como espaços reservados.]

Configura o nível de segurança de acesso de código (CAS) que é aplicado a um aplicativo. Use esse elemento, se você quiser executar um aplicativo da Web que tenha menos de Full relação de confiança.

<trust 
   hostSecurityPolicyResolverType ="security policy resolution type"
   legacyCasModel = "[True|False]"
   level="[Full|High|Medium|Low|Minimal]" 
   originUrl="URL"
   permissionSetName = "name of the permission set"
   processRequestInApplicationTrust = "[True|False]" 
/>

Attributes and Elements

As seções a seguir descrevem atributos, elementos filho, e elementos pai.

Attributes

Atributo

Descrição

hostSecurityPolicyResolverType

Atributo de seqüência opcional.

Especifica um tipo de resolução de diretiva de segurança personalizado. Quando esse atributo é definido como uma seqüência vazia, o ASP.NET usa a diretiva padrão para determinar as permissões de um assembly. A diretiva padrão para avaliar as permissões concede confiança total aos conjuntos de módulos Global Assembly Cache (GAC) e confiança parcial para os outros assemblies.

Este atributo não pode ser definido como um null valor.

O valor padrão é um vazio string.

legacyCasModel

Atributo booleano opcional.

Especifica se a segurança de acesso (CAS) do código herdado é ativada.

Quando a segurança de acesso ao código herdado estiver habilitada, aplicam as seguintes regras de segurança:

  • Diretiva de CAS (segurança) de acesso do código é estabelecida a partir da combinação de diretiva de máquina e o aplicativo ASP.Arquivo de diretiva de confiança parcial NET.

  • Domínios de aplicativo parcialmente confiável reverter para serem de confiança total no nível do domínio de aplicativo.

  • Arquivos no diretório CONFIG de confiança parcial legacy a .NET Framework diretório de instalação são usados em vez dos novos arquivos de configuração de confiança parcial, localizados no mesmo diretório. Os arquivos de legado incluem as condições de participação que eram encontradas na .NET Framework 1.1 ou o .NET Framework 2.0 SP1.

  • Condições de participação adicionais para avaliar as permissões são aplicadas. Essas condições são definidas no ASP.NET temporários de confiança parcial. O diretório de configuração que acompanha o .NET Framework 4 versão contém os arquivos de diretiva de confiança parcial herdados. Esses arquivos têm herdado em seu nome e conter o .NET Framework 2.0 SP1 seções. Essas seções contêm as condições de participação de não-vazia que são necessários para avaliar a diretiva CAS contra assemblies.

  • Se o aplicativo ASP.NET Visual Basic está sendo executado em confiança parcial e o arquivo de diretiva de segurança para o nível de confiança mapeia para um dos arquivos de configuração de confiança padrão, com o ASP.NET escolhe automaticamente o arquivo de configuração herdado correspondente. Por exemplo, se a diretiva de segurança normalmente será carregada a partir do Web_mediumtrust. config, no modo herdado ASP.Em vez disso, o NET carrega a diretiva de segurança do Legacy.web_mediumtrust.config.

O valor padrão é false.

level

Obrigatório String atributo.

Especifica o nível de confiança na qual o aplicativo será executado. Cada nível de confiança é mapeado para um arquivo de diretiva XML individual que usa um trustLevel elemento no arquivo de configuração. O arquivo de diretiva lista o conjunto de permissões concedidas por cada nível de confiança. Para obter informações sobre o ASP.NET e a diretiva de arquivos, consulte ASP.NET Trust Levels and Policy Files.

Esse atributo pode ser um valor definido pelo usuário, se houver uma correspondência de mapeamento de diretiva de segurança é definido em um trustLevel elemento o securityPolicy Element (ASP.NET Settings Schema) elemento ou um dos seguintes valores possíveis, em ordem crescente de restrictiveness.

ValorDescrição
Full Especifica permissões irrestritas.Concede o ASP.Permissões de aplicativo ASP para acessar qualquer recurso que esteja sujeito à segurança do sistema operacional.Todas as operações privilegiadas são suportadas.Essa configuração é denominada Unrestricted na AspNetHostingPermissionLevel enumeração.
High Especifica um alto nível de segurança de acesso do código, o que significa que o aplicativo não pode fazer qualquer uma das seguintes coisas por padrão:
  • Chame código não gerenciado.

  • Chame componentes atendidos.

  • Grave no log de eventos.

  • Filas do enfileiramento de mensagens da Microsoft Access.

  • Acessar fontes de dados ODBC, Oracle ou OleDb.

Medium Especifica um nível médio de segurança de acesso do código, o que significa que, com as restrições para High, o ASP.NET não é possível que você faça as seguintes ações por padrão:
  • Acessar arquivos fora do diretório de aplicativo.

  • Acesse o registro.

  • Fazer chamadas de serviço Web ou de rede (usando o System.Net.HttpWebRequest de classe, por exemplo).

Low Especifica um baixo nível de segurança de acesso do código, o que significa que, com as restrições para Medium, o aplicativo não é possível fazer as seguintes ações por padrão:
  • Escreva para o sistema de arquivos.

  • Chame o método Assert.

Minimal Especifica um nível mínimo de segurança de acesso do código, o que significa que o aplicativo tem permissões de execução somente.

O padrão é Full (sem restrições).

originUrl

Opcional String atributo.

Especifica uma URL para uso com a permissão WebPermission restrita configurada na confiança média. Se estiver presente, isso pode ser usado para algumas classes, como HttpWebRequest, que permitem conectividade com somente URLs específicas que são especificados por uma WebPermission. Isso permite que as permissões que dependem da noção de um host funcionem corretamente.

permissionSetName

Atributo de seqüência opcional.

Especifica o nome do conjunto de permissões.

O valor padrão é "ASP.NET".

processRequestInApplicationTrust

Opcional Boolean atributo.

Especifica se as solicitações de página são automaticamente restritas para as permissões que são configuradas no arquivo de diretiva de confiança que é aplicado à página ASP.NET Visual Basic.

Arquivos de diretiva de confiança são especificados no trustLevel elementos de securityPolicy elemento. Uma diretiva de confiança único é aplicada a um aplicativo ASP.NET usando o level atributo da trust elemento.

Se definido como False, ASP.NET convencionais potencialmente podem ser executado em Full relação de confiança, mesmo se o level atributo especifica um nível de confiança diferentes. A menos que haja motivos específicos para fazer isso, não redefinir este atributo do padrão de true.

Esse atributo é novo na.NET Framework versão 2.0.

O padrão é True.

Child Elements

Nenhum.

Parent Elements

Elemento

Descrição

configuration

Especifica o elemento raiz necessários em cada arquivo de configuração que é usado pelo common language runtime e o.Aplicativos do NET Framework.

system.web

Especifica o elemento raiz para o ASP.Definições de configuração de rede em uma configuração de arquivo e contém elementos de configuração que configurar aplicativos ASP.NET e controlar como os aplicativos se comportam.

Remarks

O trust elemento configura o nível de segurança de acesso de código (CAS) que é aplicado a um aplicativo. Os arquivos de diretivas de segurança são mapeados para nomes de no nível de confiança a securityPolicy elemento da coleção. O arquivo de diretiva lista o conjunto de permissões concedidas pelo nível de confiabilidade. O trust elemento especifica qual nível de confiança para aplicar os recursos do ASP.NET Visual Basic. Para obter informações sobre o ASP.NET e a diretiva de arquivos, consulte ASP.NET Trust Levels and Policy Files.

Por padrão, os aplicativos da Web executados com Full relação de confiança. Aplicativos de confiança total recebem permissões irrestritas de código de acesso pela diretiva de segurança de acesso do código. Essas permissões incluem permissões personalizadas e sistema interno. Isso significa que a segurança de acesso ao código não impedirá seu aplicativo acesse quaisquer recursos protegidos. O sucesso ou fracasso da tentativa de acesso de recursos é determinado puramente pela segurança em nível de sistema operacional. Se um aplicativo é configurado com um nível de confiança diferente de Full, ele é conhecido como um aplicativo parcialmente confiável. Aplicativos parcialmente confiáveis têm permissões restritas, que limitam o acesso a recursos protegidos para o aplicativo.

Para maior segurança em um ambiente hospedado, use o local elemento no arquivo Web. config raiz para delimitar securityPolicy e trust elementos para aplicativos hospedados e o allowOverride="False" atributo para impedir que aplicativos substituam as configurações em um arquivo de Web. config mais local. Opcionalmente, você pode fazer uso de vários elementos de local, cada um com um atributo de caminho diferente, se você quiser configurar níveis de confiança diferentes para diferentes aplicativos hospedados. Para obter um exemplo desse tipo de configuração, consulte "Exemplo", posteriormente neste tópico.

Observação

Que são criados em aplicativos da Web do.NET Framework versão 1.0 sempre funcionam com Full de confiança porque os tipos no System. Web exigem chamadores de confiança total.Quando você atualiza para uma versão mais recente do.NET Framework, não altere o nível de confiança sem testar todos os aplicativos existentes anteriormente.

Configuração padrão

O seguinte padrão trust elemento é configurado no arquivo Web. config raiz.

<location allowOverride="true">
<system.web>
   <securityPolicy>
      <trustLevel name="Full" policyFile="internal" />
      <trustLevel name="High" policyFile="web_hightrust.config" />
      <trustLevel name="Medium" policyFile="web_mediumtrust.config" />
      <trustLevel name="Low" policyFile="web_lowtrust.config" />
      <trustLevel name="Minimal" policyFile="web_minimaltrust.config"/>
   </securityPolicy>
   <trust 
      level="Full" 
      originUrl="" 
      processRequestInApplicationTrust="true" 
   />
</system.web>
</location>

Exemplo

O exemplo de código a seguir demonstra como usar um arquivo de Web. config raiz para especificar Medium para todas as páginas ASP configurações de nível de confiança.NET existentes no servidor e o location elemento para bloquear as configurações. Outro location elemento no mesmo arquivo de configuração é usado para permitir que o arquivo Web. config para o Default Web Site/Temp aplicativo para substituir as configurações no arquivo Web. config raiz.

<location allowOverride="false">
  <system.web>
    <securityPolicy>
      <trustLevel name="Full" policyFile="internal" />
      <trustLevel name="High" policyFile="web_hightrust.config" />
      <trustLevel name="Medium" policyFile="web_mediumtrust.config" />
      <trustLevel name="Low"  policyFile="web_lowtrust.config" />
      <trustLevel name="Minimal" policyFile="web_minimaltrust.config"/>
    </securityPolicy>
  </system.web>
</location>

<location allowOverride="false">
  <system.web>
    <trust level="Medium" originUrl="" />
  </system.web>
</location>

<location allowOverride="true" path="Default Web Site/Temp">
  <system.web>
    <trust level="Medium" originUrl="" />
  </system.web>
</location>

Element Information

Manipulador da seção de configuração

TrustSection

Membro de configuração

AspNetHostingPermission

Locais configuráveis

Machine.config

Web. config de nível de raiz

Web. config de nível de aplicativo

Requisitos

Serviços de Informações da Internet da Microsoft (IIS) versão 5.0, 5.1 ou 6.0

A.NET Framework versão 1.0, 1.1 ou 2.0

Microsoft Visual Studio 2003 ou 2005 de Visual Studio

Consulte também

Tasks

How to: Configure Specific Folders Using Location Settings

How to: Lock ASP.NET Configuration Settings

Reference

System. Web Element (ASP.NET Settings Schema)

configuração Element (General Settings Schema)

trustLevel elemento para securityPolicy (ASP.NET Settings Schema)

securityPolicy Element (ASP.NET Settings Schema)

System.Configuration

System.Net.Configuration

TrustSection

AspNetHostingPermission

Concepts

ASP.NET Trust Levels and Policy Files

ASP.NET Trust Levels and Policy Files

Securing Configuration

Configuration Inheritance

Other Resources

ASP.NET Web Application Security

Administering Security Policy

Configurações gerais (ASP.NET)

ASP.Definições de configuração de rede

Configuring ASP.NET Applications

ASP.NET Configuration Files

ASP.NET Configuration API