internet-explorer - IE 保护模式 + SSL 登录 = 非 SSL 页面无 cookie

标签 internet-explorer authentication cookies ssl protected-mode

(FWIW,我也将这个问题发布到我的博客:http://blog.wolffmyren.com/2011/07/11/ie-protected-mode-ssl/)

有谁知道如何绕过 Internet Explorer 保护模式限制而不需要最终用户将我们的站点添加到可信站点列表?

问题是如果我们为我们的站点启用 SSL 登录,他们只能访问 SSL 页面。 IE 阻止我们的非 SSL 服务页面访问在 SSL session 期间创建的 cookie,因此我们可以通过 SSL 服务所有内容(非常昂贵/资源密集型),或者找到一些方法来设置 SSL 登录过程中的非 SSL cookie。

这篇 MSDN 文章(ielowutil.exe 与 Internet Explorer 8.0 有什么关系?)包含我迄今为止找到的最相关的信息,但它讨论了使用 Windows API,我正在寻找可以实现的解决方案使用 ASP.NET、JavaScript 或其他一些交付良好的解决方案。


更新:我的一个 friend 分享了这些链接,希望它们能有所帮助:

最佳答案

看起来 IIS 通过 HTTPS 连接为您提供安全 cookie,这确实非常明智。这些 cookie 旨在不泄漏到普通 HTTP 连接,因此您会得到结果。

您可以创建一个辅助的、非安全的 cookie 来将一些身份验证信息传递到您网站的 HTTP 端。 但是,一旦您完成了此操作,请不要假设在纯 HTTP session 期间完成或发送的任何内容都是由经过身份验证的合法用户完成的,如果在某个时候您需要返回到 HTTPS。可以将身份验证 token 从 HTTPS 传递到 HTTP,但反之则不行。 (当然,您仍然容易受到纯 HTTP 攻击,但这在您的应用程序中可能是可以接受的风险。)

在这个问题中有更多关于这个问题的内容(适用于 Tomcat 的内容对于任何 Web 服务器都是一样的,包括 IIS):Tomcat session management - url rewrite and switching from http to https

关于internet-explorer - IE 保护模式 + SSL 登录 = 非 SSL 页面无 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6658620/

相关文章:

http - 抓取时如何处理cookie

javascript 适用于除 IE 之外的所有浏览器

java - 连接 Mongo 时出现身份验证错误

authentication - 如何使用 Keycloak 保护前端和其余 API

javascript - Safari 不保存 cookie,但 Chrome 会

java - 如何跨多个网站唯一标识同一用户?

javascript - Internet Explorer 支持第 n 个子选择器

Javascript IE6/7/8 更改输入类型

javascript - IE 7 "stop running this script"错误使用 jQuery

regex - 从电子邮件地址中删除空格是个好主意吗?