Dela via


<remove> Element for schemeSettings (Uri Settings)

Tar bort en schemainställning för ett schemanamn.

<Konfiguration>
  <Uri>
    <schemeSettings>
      <Ta bort>

Syntax

<remove
  name="http|https"
/>

Attribut och element

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

Attribut

Attribut Beskrivning
name Det schemanamn som den här inställningen gäller för. De enda värden som stöds är name="http" och name="https".

Underordnade element

Inga.

Överordnade element

Element Beskrivning
<schemeSettings-element> (URI-inställningar) Anger hur en Uri ska parsas för specifika scheman.

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 som tar bort alla schemainställningar för http-schemat.

<configuration>  
  <uri>  
    <schemeSettings>  
      <remove name="http"/>  
    </schemeSettings>  
  </uri>  
</configuration>  

Se även