首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从HTTP重定向到HTTPS w/ Simple

问从HTTP重定向到HTTPS w/ Simple
EN

Stack Overflow用户
提问于 2014-12-19 14:55:56
回答 1查看 596关注 0票数 6

我希望能得到一些关于如何使用ember初始化器将用户从HTTP重定向到HTTPS的建议。

代码语言:javascript
复制
`import ENV from 'cio/config/environment'`

SSLInitializer =
  name: 'ssl'
  before: 'simple-auth-cookie-store'
  initialize: (container, application) ->
    application.deferReadiness()

    # Redirect if hitting HTTP and SSL is enabled
    if ENV.SSL and window.location.protocol is "http:"
      window.location.href = "https:" + window.location.href.substring(window.location.protocol.length)
      return false

    application.advanceReadiness()

`export default SSLInitializer`

但是,即使if语句的计算结果为true,cookie似乎也会失效。我试过几件事,包括:

  • 之前:“简单-简单”
  • 之前:“商店”
  • 在设置application.destroy()之前,if语句中的window.location.href ()

据我所知,调试后。这个应用程序确实可以重定向到HTTPS,但是cookieName在document.cookie中没有发现。(https://github.com/simplabs/ember-simple-auth/blob/master/packages/ember-simple-auth-cookie-store/lib/simple-auth-cookie-store/stores/cookie.js#L154)

在这个方法开始工作之前,因为我们在index.html中有简单的代码片段,但是w/ CSP我们希望将它保存在一个初始化器中。有什么建议吗?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2015-01-02 01:08:52

您应该强制从HTTP重定向到服务器的HTTPS,因为从客户端进行重定向并不会增加任何真正的安全性。

想想看,用户已经从一个不安全的端点下载了应用程序到他们的浏览器,从那时起,什么都不能信任。即使是基于服务器的重定向也有问题,因为它依赖于来自不受信任端点的重定向通知。用户实际上应该从一个初始的可信起点访问事物,否则所有的赌注都会被取消。这被称为安全引用问题,并且可能永远不会解决,因为SSL证书背后的业务模型。

您也不应该真正信任可信HTTPS域中来自不受信任HTTP域的cookie,除非您有一种方法在客户端上验证这些cookie。RFC 2109中介绍了HTTP/HTTPS之间的Cookie共享(第4.2.2节-Cookie语法)。

这意味着:

  • 只有HTTPS才能使用带有“安全”的cookie集。
  • 没有“安全”的cookie集将在HTTP或HTTPS上可用。
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27568520

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档