如何在任何域中保护 cookie?

开发者.meghraj

有没有其他方法可以保护 cookie 访问其他域?

在我的应用程序中,我在 1 个修复域 (cookie.xyz.com) 上设置 cookie,我需要跟踪任何域上的用户,基本上我们是 SaSS 公司,我们的客户会将我们的 js 代码放在他的网站上,然后我们在我们的一个 cookie.xyz.com 上设置和获取 cookie,因为客户端可以将我们的 js 放在多个域上。(现在我正在使用 iframe 和窗口消息在 cookie.xyz.com 上获取/设置 cookie)

所以现在在我的情况下,任何人都可以使用 js 窃取最终用户的 cookie 并使用它,他自己就可以成为那个最终用户。

那么有什么可能的解决方案,这样只有我的代码(在任何域的上下文中运行)可以从特定域读取和写入 cookie(我们这样做是因为我们的客户端没有一个域或修复域)。

在否决这个问题之前,让我告诉你。我知道这是不可能的,这就是为什么我在这里要求找到可能的或hacky的解决方案?

奥费弗尔

您正面临一个跨域用例,您想在源域上给予自由,但又想对其进行控制。

这两种情况很难共存。

一种解决方案是在您的后端 Web 服务上添加对请求来源的控制,例如:

header("Access-Control-Allow-Origin: http://origin.domain:port");
Access-Control-Allow-Credentials: true

并更新您的 JS 调用以将凭据添加为 true。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章