Ho incluso le seguenti righe di codici nei miei file Web.Config
e Glbal.asax.cs
, ma ancora quando utilizzo gli strumenti per sviluppatori nel browser I i flag sicuri non sono stati impostati per i cookie sottostanti. Anche configurato SSLSettings in IIS (casella di controllo selezionata requireSSL).
Vorrei impostare l'attributo secure su tutti i cookie, non solo sui cookie ricevuti ma anche sui cookie inviati.
In Web.config
:
<httpCookies requireSSL="true"/>
In Global.asax.cs
:
protected void Application_EndRequest(object sender, EventArgs e)
{
if (Request.IsSecureConnection == true && HttpContext.Current.Request.Url.Scheme == "https")
{
Request.Cookies["ASP.NET_SessionID"].Secure = true;
if (Request.Cookies.Count > 0)
{
foreach (string s in Request.Cookies.AllKeys)
{
Request.Cookies[s].Secure = true;
}
}
Response.Cookies["ASP.NET_SessionID"].Secure = true;
if (Response.Cookies.Count > 0)
{
foreach (string s in Response.Cookies.AllKeys)
{
Response.Cookies[s].Secure = true;
}
}
}
}
Quindi ho ospitato la mia applicazione su IIS 7.5 sul mio computer locale. E abilitato l'opzione RequireSSL nelle impostazioni SSL. Quando faccio clic su Sfoglia * .443 (https), potrei vedere localhost in esecuzione con HTTPS ma quando controllo gli attributi dei cookie nel browser, il flag di sicurezza non è impostato.
Mi manca qualche configurazione qui?