alv*_*spo 6 ember.js ember-simple-auth
我希望得到一些关于如何使用带有ember-simple-auth的ember初始化程序将用户从HTTP重定向到HTTPS的建议.
`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`
Run Code Online (Sandbox Code Playgroud)
但是,即使if语句的计算结果为true,cookie似乎也会失效.我尝试了几件事,包括:
据我所知,经过调试.该应用程序确实重定向到HTTPS,但在document.cookie中找不到cookieName.(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中有简单的代码段,但是我们希望将它保存在初始化程序中.有什么建议?
谢谢!
您确实应该强制从服务器从 HTTP 重定向到 HTTPS,因为从客户端执行此操作不会增加任何真正的安全性。
想想看,用户已经从不安全的端点将应用程序下载到他们的浏览器,从那时起,没有什么可以信任的。即使基于服务器的重定向也存在问题,因为它依赖于来自不受信任端点的重定向建议。用户确实应该从最初的可信起点访问事物,否则所有的赌注都会失败。这被称为安全引用问题,并且由于 SSL 证书背后的商业模式而可能永远无法解决。
您也不应该真正信任来自受信任 HTTPS 域中不受信任 HTTP 域的 cookie,除非您有办法在客户端上对这些 cookie 进行身份验证。RFC 2109 (第 4.2.2 节 Set-Cookie 语法)介绍了 HTTP/HTTPS 之间的 cookie 共享。
这意味着:
| 归档时间: |
|
| 查看次数: |
512 次 |
| 最近记录: |