Partilhar via


<schemeSettings> Elemento (configurações de Uri)

Especifica como um Uri será analisada para esquemas específicos.

<schemeSettings> 
</schemeSettings>

Atributos e elementos

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

Atributos

Nenhum

Elementos filho

Elemento

Descrição

Adicionar

Adiciona uma definição de esquema para um nome de esquema.

Limpar

Limpa todas as configurações existentes do esquema.

remover

Remove uma configuração de esquema para um nome de esquema.

Elementos pai

Elemento

Descrição

URI

Contém configurações que especificam como o.NET Framework manipula os endereços da web expressados usando identificadores de recursos uniforme (URIs).

Comentários

Por padrão, o System.Uri por cento de un escapa de classe codificado delimitadores de caminho antes de executar a compactação do caminho. Isso foi implementado como um mecanismo de segurança contra ataques como o seguinte:

https://www.contoso.com/.. %2F.. %2F/Windows/System32/cmd.exe?/c+dir+c:\

Se esse URI é transmitido para módulos não tratamento % caracteres codificados corretamente, ela pode resultar no comando a seguir, que está sendo executado pelo servidor:

c:\Windows\System32\cmd.exe /c dir c:\

Por esse motivo, System.Uri classe delimitadores de caminho escapa un primeiro e depois aplica compactação do caminho. O resultado de passar o URL mal-intencionada acima para System.Uri resultados no seguinte URI de construtor de classe:

https://www.microsoft.com/Windows/System32/cmd.exe?/c+dir+c:\\

Esse comportamento padrão pode ser modificado para não o delimitadores porcentagem caminho codificado un escape usando a opção de configuração de schemeSettings para um esquema específico.

Configuration Files

Esse elemento pode ser usado no arquivo de configuração do aplicativo ou o arquivo de configuração da máquina (Machine. config).

Exemplo

O exemplo de código a seguir mostra uma configuração usada pelo Uri classe para dar suporte a saída não os delimitadores de caminho codificado por cento para o esquema de http.

<configuration>
  <uri>
    <schemeSettings>
      <add name="http" genericUriParserOptions="DontUnescapePathDotsAndSlashes"/>
    </schemeSettings>
  </uri>
</configuration>

Informações do elemento

Namespace

Sistema

Nome de esquema

Arquivo de validação

Pode ser vazio

Consulte também

Referência

Esquema configurações de rede

System.Configuration.SchemeSettingElement

System.Configuration.SchemeSettingElementCollection

System.Configuration.UriSection

UriSection.SchemeSettings

System.GenericUriParserOptions

System.Uri