我有一个同时包含 HTTP 和 HTTPS 页面的站点。
我尝试了以下方法来确保 cookie 的安全:
<httpCookies requireSSL="true" />
带有表单身份验证的Web.config 。- 强制 cookie 在
Application_End
在这两种情况下,页面都不适用于 HTTP。我认为上述解决方案只有在所有页面都使用 HTTPS 时才有效。
如何解决这个难题?
我有一个同时包含 HTTP 和 HTTPS 页面的站点。
我尝试了以下方法来确保 cookie 的安全:
<httpCookies requireSSL="true" />
带有表单身份验证的Web.config 。Application_End
在这两种情况下,页面都不适用于 HTTP。我认为上述解决方案只有在所有页面都使用 HTTPS 时才有效。
如何解决这个难题?
设置为“安全”的 cookie 的全部意义在于它仅通过 https 传输;http 页面不会收到它的副本。来自维基百科:
安全 cookie 启用了安全属性,并且仅通过 HTTPS 使用,确保 cookie 在从客户端传输到服务器时始终加密。这使得 cookie 不太可能通过窃听而遭受 cookie 盗窃。
如果要使用安全 cookie,则需要确保所有页面都使用 https。
问题:如何解决这个难题,需要分析需求,看看是否对整个网站使用 https 或 http 和 https 的组合更好。
由于您也在上述评论之一中要求替代方案,我希望以下信息可以帮助您决定替代方案。
背景:
基本上,所有与敏感数据无关的页面都使用 http,而在具有敏感数据的页面上使用 https。很多时候,我们不喜欢对整个网站使用 https,因为传输的数据更多,加密和解密它们需要时间,从而加起来加载/显示页面的实际时间。
但是,存在反对上述常见概念的论据,您还可以鼓励您在整个网站上使用 https。检查一下:如何仅在部分网站上实施 HTTPS?
而且,是的,安全 cookie 只能在https
页面上使用。
一些建议
您应该保护您的敏感数据,这也适用于 Cookie。如果一定要发生坏事,请在此处查看它可能发生的严重程度:某些黑客可以从用户那里窃取 cookie 并在网站上使用该名称登录吗?
您可以将您的用户数据划分为安全和非安全。例如Flipkart.com
,我们看到通常您可以浏览各种项目,进行搜索,查看每个项目的详细信息等,并且所有这些页面都是http
唯一的。当您最终继续购买并且所有这些页面都是https
. 此链接可以帮助您开始了解此概念: http: //www.codeproject.com/Articles/5523/Switching-Between-HTTP-and-HTTPS-Automatically 或:仅在登录页面上设置 SSL 页面