Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Určuje, jak Uri se bude parsovat pro konkrétní schémata.
<
>
<identifikátor uri>
<schemeSettings>
Syntaxe
<schemeSettings>
</schemeSettings>
Atributy a prvky
Následující části popisují atributy, podřízené prvky a nadřazené prvky.
Atributy
Žádné
Podřízené prvky
Element | popis |
---|---|
přidat | Přidá nastavení schématu pro název schématu. |
vymazat | Vymaže všechna existující nastavení schématu. |
odebrat | Odebere nastavení schématu pro název schématu. |
Nadřazené elementy
Element | popis |
---|---|
identifikátoru URI |
Obsahuje nastavení, která určují, jak rozhraní .NET Framework zpracovává webové adresy vyjádřené pomocí jednotných identifikátorů prostředků (URI). |
Poznámky
Ve výchozím nastavení System.Uri třída un-escapes percent kódované cesty oddělovače cesty před spuštěním komprese cesty. Tento postup byl implementován jako bezpečnostní mechanismus proti útokům, jako je následující:
http://www.contoso.com/..%2F..%2F/Windows/System32/cmd.exe?/c+dir+c:\
Pokud se tento identifikátor URI předá modulům, které nezpracovávají správně zakódované znaky v procentech, může to vést k provedení následujícího příkazu serverem:
c:\Windows\System32\cmd.exe /c dir c:\
Z tohoto důvodu System.Uri třída nejprve un-escapes path oddělovače a pak použije kompresi cesty. Výsledkem předání výše System.Uri uvedené škodlivé adresy URL konstruktoru třídy je následující identifikátor URI:
http://www.contoso.com/Windows/System32/cmd.exe?/c+dir+c:\
Toto výchozí chování lze upravit tak, aby nebylo uchycováno oddělovače cest v procentech pomocí možnosti konfigurace schemeSettings pro konkrétní schéma.
Konfigurační soubory
Tento prvek lze použít v konfiguračním souboru aplikace nebo v konfiguračním souboru počítače (Machine.config).
Příklad
Následující příklad ukazuje konfiguraci používanou Uri třídou, která nepodporuje escaping percent-encoded path oddělovače pro schéma http.
<configuration>
<uri>
<schemeSettings>
<add name="http" genericUriParserOptions="DontUnescapePathDotsAndSlashes"/>
</schemeSettings>
</uri>
</configuration>
Informace o elementu
Obor názvů: Systém