Dela via


<schemeSettings-element> (URI-inställningar)

Anger hur en Uri ska parsas för specifika scheman.

<Konfiguration>
  <Uri>
    <schemeSettings>

Syntax

<schemeSettings>
</schemeSettings>  

Attribut och element

I följande avsnitt beskrivs attribut, underordnade element och överordnade element.

Attribut

Ingen

Underordnade element

Element Beskrivning
Add Lägger till en schemainställning för ett schemanamn.
Tydlig Rensar alla befintliga schemainställningar.
Ta bort Tar bort en schemainställning för ett schemanamn.

Överordnade element

Element Beskrivning
Uri Innehåller inställningar som anger hur .NET Framework hanterar webbadresser uttryckta med hjälp av URI:er (Uniform Resource Identifiers).

Kommentarer

Som standard System.Uri avundas klassen procentkodade sökvägsavgränsare innan sökvägskomprimering körs. Detta implementerades som en säkerhetsmekanism mot attacker som följande:

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

Om den här URI:n skickas till moduler som inte hanterar procentkodade tecken korrekt kan följande kommando köras av servern:

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

Därför System.Uri avmarkerar klassen först sökvägsavgränsare och tillämpar sedan sökvägskomprimering. Resultatet av att skicka den skadliga URL:en ovan till System.Uri klasskonstruktorn resulterar i följande URI:

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

Det här standardbeteendet kan ändras till att inte ta bort procentkodade sökvägsavgränsare med hjälp av konfigurationsalternativet schemeSettings för ett specifikt schema.

Konfigurationsfiler

Det här elementet kan användas i programkonfigurationsfilen eller datorkonfigurationsfilen (Machine.config).

Exempel

I följande exempel visas en konfiguration som används av Uri klassen för att stödja att inte ta bort procentkodade sökvägsavgränsare för http-schemat.

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

Elementinformation

Namnområde: System

Se även