我有一个运行在SSL上的应用程序,已经在System.Web下的web.config中添加了以下内容。
<httpCookies requireSSL="true" httpOnlyCookies="true" lockItem="true" />
但是我仍然得到一个名为“cookieSesssion1”的不安全的cookie。它没有被标记为安全。
您能告诉我我可以将其标记为安全吗?
编辑:
除了Web.config指令外,我的Global.asax文件中还包含以下代码。
protected void Application_EndRequest(object sender, EventArgs e)
{
if (Response.Cookies.Count > 0)
{
foreach (string s in Response.Cookies.AllKeys)
{
Response.Cookies[s].Secure = true;
}
}
}
以下是Firebox调试的屏幕截图:
我想念的是什么,请帮忙
最佳答案
FortiWeb Web应用程序防火墙(WAF) session cookie名为 cookiesession1
对于来自客户端的第一个HTTP/HTTPS请求,FortiWeb将cookie嵌入到HTTP header 中响应的Set-Cookie:字段中。它名为cookiesession1。 (FortiWeb不单独将源IP地址和时间戳用于 session :NAT可以掩盖多个客户端;可以更改时钟。)
http://help.fortinet.com/fweb/537/Content/FortiWeb/fortiweb-admin/http_sessions_security.htm
http://help.fortinet.com/fweb/536/Content/FortiWeb/fortiweb-admin/global_object_white_list.htm
关于c# - 使ASP.NET Cookie安全,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35616658/