【发布时间】:2011-09-25 04:16:15
【问题描述】:
我正在开发一个用户登录系统,我想出了一个解决方案,我想通过你们这些优秀的人来确保我不会制造一个巨大的安全漏洞。
这就是我们所拥有的。
您从一个 HTTP 页面开始,当您单击一个链接时将打开一个模式窗口。单击 HTTP 页面的第一个链接将使用链接到 HTTPS 页面的 iFrame 重新填充模式。由于我无法让 HTTPS 与 HTTP 页面对话,因此我在 HTTPS iframe 页面上使用document.location 设置来使成功页面变为 HTTP。然后 HTTP 页面与父窗口对话。
所以:
HTTP(点击)-> 在 HTTPS 中打开 iFrame -> 成功时通过 HTTPS 安全登录 document.location -> HTTP 成功页面 -> window.parent.success_msg(deferred); 调用父窗口。
到目前为止,它在所有浏览器中都运行良好...尚未测试 IE,但我想在展示它之前验证这不是一个非常糟糕的做法。
谢谢!
【问题讨论】:
-
认证后为什么要返回HTTP??建立安全的加密会话不是重点吗?
-
虽然 Pointy 对他的评论非常满意,但我还要补充一点,您应该确保拖放到页面上的 iFrame 在它内联时具有正确的 src 属性。如果它被拖放到页面上时没有 https src,然后您尝试将其更改为 https src,浏览器会向您抛出令人讨厌的弹出框。
标签: javascript security http iframe https