Delen via


<het element schemeSettings> (URI-instellingen)

Hiermee geeft u op hoe een Uri wordt geparseerd voor specifieke schema's.

<configuratie>
  <Uri>
    <schemeSettings>

Syntax

<schemeSettings>
</schemeSettings>  

Kenmerken en elementen

In de volgende secties worden kenmerken, onderliggende elementen en bovenliggende elementen beschreven.

Kenmerken

Geen

Onderliggende elementen

Element Beschrijving
add Hiermee voegt u een schema-instelling toe voor de naam van een schema.
Duidelijk Wist alle bestaande schema-instellingen.
Verwijderen Hiermee verwijdert u een schema-instelling voor een schemanaam.

Bovenliggende elementen

Element Beschrijving
Uri Bevat instellingen die aangeven hoe de .NET Framework webadressen verwerkt die worden uitgedrukt met behulp van URI's (Uniform Resource Identifiers).

Opmerkingen

Standaard verwijdert de System.Uri klasse escapen procent gecodeerde padscheidingstekens voordat padcompressie wordt uitgevoerd. Dit is geïmplementeerd als een beveiligingsmechanisme tegen aanvallen zoals de volgende:

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

Als deze URI wordt doorgegeven aan modules die het percentage gecodeerde tekens niet correct verwerken, kan dit ertoe leiden dat de volgende opdracht wordt uitgevoerd door de server:

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

System.Uri Daarom verwijdert de klasse eerst escapepadscheidingstekens en past vervolgens padcompressie toe. Het resultaat van het doorgeven van de schadelijke URL hierboven aan System.Uri de klasseconstructor resulteert in de volgende URI:

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

Dit standaardgedrag kan worden gewijzigd om geen escapepercentage gecodeerde padscheidingstekens ongedaan te maken met behulp van de configuratieoptie schemeSettings voor een specifiek schema.

Configuratiebestanden

Dit element kan worden gebruikt in het configuratiebestand van de toepassing of het configuratiebestand van de machine (Machine.config).

Voorbeeld

In het volgende voorbeeld ziet u een configuratie die door de Uri klasse wordt gebruikt om geen escape-gecodeerde padscheidingstekens voor het HTTP-schema te ondersteunen.

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

Elementgegevens

Naamruimte: Systeem

Zie ook