Heim >Backend-Entwicklung >C++ >Wie kann ich HTTPS in ASP.NET effizient erzwingen?
Permanente HTTPS-Erzwingung in ASP.NET
Frage:
Zuvor wurde HTTPS erzwungen Bei allen Anfragen musste jedes Seitenladeereignis manuell überprüft und bei Bedarf auf HTTPS umgeleitet werden. Gibt es eine effizientere Lösung?
Antwort:
HTTP Strict Transport Security (HSTS)
HSTS wurde integriert in ASP.NET, um einen nahtlosen HTTPS-Durchsetzungsmechanismus bereitzustellen. Es funktioniert, indem ein spezieller Header an den Client-Browser gesendet wird, der angibt, dass alle zukünftigen Anfragen an die angegebene Domäne über HTTPS erfolgen müssen.
Implementierung:
<outboundRules> <rule name="Add Strict-Transport-Security when HTTPS" enabled="true"> <match serverVariable="RESPONSE_Strict_Transport_Security" pattern=".*" /> <conditions> <add input="{HTTPS}" pattern="on" ignoreCase="true" /> </conditions> <action type="Rewrite" value="max-age=31536000" /> </rule> </outboundRules>
protected void Application_BeginRequest(Object sender, EventArgs e) { if (HttpContext.Current.Request.IsSecureConnection.Equals(false) && HttpContext.Current.Request.IsLocal.Equals(false)) { Response.Redirect("https://" + Request.ServerVariables["HTTP_HOST"] + HttpContext.Current.Request.RawUrl); } }
Vorteile von HSTS:
Das obige ist der detaillierte Inhalt vonWie kann ich HTTPS in ASP.NET effizient erzwingen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!