HttpRuntimeSection.EnableHeaderChecking Egenskap

Definition

Hämtar eller anger ett värde som anger om rubrikkontrollen är aktiverad.

public:
 property bool EnableHeaderChecking { bool get(); void set(bool value); };
[System.Configuration.ConfigurationProperty("enableHeaderChecking", DefaultValue=true)]
public bool EnableHeaderChecking { get; set; }
[<System.Configuration.ConfigurationProperty("enableHeaderChecking", DefaultValue=true)>]
member this.EnableHeaderChecking : bool with get, set
Public Property EnableHeaderChecking As Boolean

Egenskapsvärde

trueom rubrikkontrollen är aktiverad. annars . false Standardvärdet är true.

Attribut

Exempel

I följande exempel visas hur du använder egenskapen EnableHeaderChecking .

// Get the EnableHeaderChecking property value.
Response.Write("EnableHeaderChecking: " +
  configSection.EnableHeaderChecking + "<br>");

// Set the EnableHeaderChecking property value to true.
configSection.EnableHeaderChecking = true;
' Get the EnableHeaderChecking property value.
Response.Write("EnableHeaderChecking: " & _
  configSection.EnableHeaderChecking & "<br>")

' Set the EnableHeaderChecking property value to true.
configSection.EnableHeaderChecking = True

Kommentarer

Syftet med den här egenskapen är att aktivera kodning av vagnreturen och nya radtecken, \r och \n, som finns i svarshuvuden.

I utgående svarshuvuden kodas de tecken som representeras av koderna 0x1F och nedan och även tecknet 0x7F (ta bort tecken). Det enda undantaget är att tecknet 0x09 (fliktecknet) är ommodifierat.

Den här kodningen kan bidra till att undvika inmatningsattacker som utnyttjar ett program som ekar ej betrodda data som ingår i rubriken.

Note

Den här egenskapen gäller inte för själva statusraden (statuskod och statusbeskrivning), men bör gälla för andra rubriker. Även om <httpRuntime> kan anges på vilken nivå som helst gäller den här egenskapen endast på dator- och programnivå.

När den här egenskapen är true, som är standard, \r kodas tecknen eller \n som finns i ett svarshuvud till %0d och %0a. Detta besegrar huvudinmatningsattacker genom att göra det inmatade materialet till en del av samma rubrikrad. Detta kan bryta svaret men bör inte öppna attackvektorer mot klienten. Att upprepa obetrodda data är dock aldrig en bra idé i någon situation.

Important

HTTP-huvudfortsättningar förlitar sig på rubriker som sträcker sig över flera rader och kräver nya rader i dem. Om du behöver använda rubrikfortsättningar måste du ange EnableHeaderChecking egenskapen till false. Eftersom det finns en prestandapåverkan från att titta på rubriker kan det förbättra programmets prestanda om du är säker på att du redan gör rätt kontroller. Innan du inaktiverar den här funktionen bör du se till att du redan vidtar rätt försiktighetsåtgärder i det här området.

Gäller för

Se även