我想保护我的cookie,我读了ASP.NET_SessionId cookie的“HTTPOnly”和“Secure”cookie标志。 我在VS中创建了新的asp.net项目。在Inspectors的小提琴手中 - >原始我有:
Cookie: DXCurrentThemeMVC=Office2010Black; ASP.NET_SessionId=1gq0t1mi234xyljqnxrzbqfx
然后我修改web.config:
<system.web>
<compilation debug="true" targetFramework="4.0" />
<httpCookies httpOnlyCookies="true" requireSSL="true"/>
<authentication mode="Forms">
<forms loginUrl="~/Account/Login.aspx" timeout="2880" requireSSL="true" />
</authentication>
但是在提琴手中相同的数据
Cookie: DXCurrentThemeMVC=Office2010Black; ASP.NET_SessionId=1gq0t1mi234xyljqnxrzbqfx
我想当我添加
<httpCookies httpOnlyCookies="true" requireSSL="true"/>
我不能在小提琴手中看到cookie,否则cookie会被加密。这是正确的结果吗?或者我在某处有错误?
修改
为什么我不会在小提琴手中看到
Set-Cookie: ASP.NET_SessionId=ig2fac55; path=/; secure; HttpOnly
但只有没有set-,安全和HttpOnly的cookie也在firebug中我看到相同的结果
EDIT2 好像我发现了我的问题:我在iis和firebug上主持应用程序寻找cookie,我有安全和httpOnly标志的cookie:
ASP.NET_SessionId=98sfd90sdf89sd0f80s8; path=/; secure; HttpOnly
答案 0 :(得分:12)
查看MSDN中的httpCookies Element会话。
httpOnlyCookies 在响应标头中设置HttpOnly标志。 请参阅Protecting Your Cookies: HttpOnly文章。
requireSSL 强制cookie通过安全通道传输,因此在传输过程中不会将其删除并加密。