Dan*_*nze 8 javascript node.js cors angularjs
我正在使用带有CORS和Angular.js的Node.js进行简单的登录.
也就是说--- client.example.com正在一个POST太api.example.com/login成功返回,其中一个会话cookie也client.example.com并能获得过一个GET般的服务api.example.com/secret由会话cookie保护.
发出不受会话cookie保护的GET请求不是问题.
最终,这里的目标是使用CORS与本地策略(即用户名和密码)验证客户端应用程序到REST api,即使上述约定是不可能的.
我无法找到一个可以从任何地方学习的工作实践 - 指出我正确的方向?
奖金:展示一个有效的例子.
小智 2
您的问题很简单,浏览器不允许将一个域中设置的cookie发送到另一个域。
这是为了安全。如果您的会话 cookie 可以从任何域访问,那么任何站点都可以执行 csrf(根据定义,您想要执行 csrf - 在不同站点中使用一个站点的会话)。
有一些方法可以解决这个问题,但应用时应该小心。
最简单的方法就是使用Jsonp登录并进行跨域请求,jsonp基本上破坏了cookie的跨域策略。
client.example.com您可以在位于的页面中嵌入 iFrame api.example.com,父级和 iFrame 可以使用发布消息进行通信。
这两种方式都对 csrf 请求开放(就其本质而言),因此您应该格外小心允许client.example.com访问的信息。
| 归档时间: |
|
| 查看次数: |
2284 次 |
| 最近记录: |