注意:这不是与[RequireSSL]属性相关的ASP.NET MVC问题。这完全不同 - 只是名字相同。
ASP.NET Forms身份验证具有RequireSSL属性,该属性要求ASP.NET成员身份的auth cookie仅通过SSL发送。这是为了防止有人偷走cookie(例如通过网络嗅探)并冒充用户。
所以我想知道 - 有了MS所做的所有安全意识更改(比如默认httpOnly cookies)为什么requireSSL
没有默认为true
?
Cookie嗅闻是否被视为'neglibigle'安全隐患?
除非连接实际允许我访问安全/个人数据,否则将其视为假是否可接受?如果它是不可接受的 - 我应该如何将用户返回到http并仍然知道他们是谁?
防止表单身份验证 被捕获的cookie和 在穿越时被篡改 网络,确保您使用SSL 所有需要验证的页面 访问和限制表单 SSL通道的身份验证票证 通过在上面设置requireSSL =“true” 元件。
限制表单身份验证 Cookie到SSL渠道
在元素上设置requireSSL =“true”, 如下面的代码所示。
通过设置requireSSL =“true”,您可以设置 安全的cookie属性 确定浏览器是否应该 将cookie发送回服务器。 随着安全属性设置, cookie仅由浏览器发送给 使用请求的安全页面 一个HTTPS URL。
注意:如果您使用的是cookieless 会议,你必须确保 身份验证票从不 通过无担保的传输 信道。
答案 0 :(得分:2)
因为如果你打开它就需要SSL证书,那些通常需要花钱才能获得。您还可以使用浏览器会话来控制非安全信息 - 以及一些可能完全是您想要做的所有公共网站。在这种情况下,有人偷了另一个人的会话cookie没有透露任何敏感信息 - 那么为什么要花费购买和安装SSL证书的费用呢?