通过SSL登录但在非SSL页面上显示帐户名称?

时间:2014-02-07 00:58:46

标签: http ssl https

我正在建立一个包含用户帐户的网站。我希望用户的名字显示在顶部,同时能够通过下拉列表检查其收件箱,该下拉列表将由AJAX更新和刷新。对于用户登录,他们将在另一个由AJAX提供支持的下拉框中输入用户名和密码。我还将有一个特定页面,可以使用SSL,通过PayPal和BitPay销售商品。

我想用SSL保护这个。但是,让所有页面都使用SSL是不可行的,因为我计划使用的CDN不支持我愿意支付的价格的SSL,因为我希望允许用户嵌入图像和YouTube视频,这将是链接到第三方HTTP资源。

所以我的问题是:是否可以允许用户通过SSL安全地通过AJAX登录? (AJAX请求是安全的,但不是显示登录表单的页面。)然后,它必须能够通过不安全的连接显示其帐户名称并编辑其帐户设置? Cookie如何与此协同工作?

1 个答案:

答案 0 :(得分:2)

您可以在security.stackexchange.com上获得更好的答案,但简而言之:您可能在http和https之间共享一个cookie。但是,您不应该将任何信息与cookie相关联,这可能会被攻击者滥用,因为在使用http而不是https时可以嗅探cookie,然后攻击者重复使用它来劫持会话(以及那些身份)。所以对于严肃的东西,你应该有另一个不同的安全(例如https-only)cookie。 OWASP也是一个很好的信息来源。 https://www.owasp.org/index.php/Session_Management_Cheat_Sheet