0

我正在尝试与供应商实施 SSO,他们要求我发送 HTTP 请求。在这个 HTTP 请求中,有一个用户名和密码的自定义标头,这是我传入 u/p 信息的地方。如果用户通过了身份验证,那么他们会发回一个“auth cookie”。我试图理解一些事情:

  1. 这个身份验证cookie到底是什么?这是一个标准的东西吗?或者这意味着它是一个具有身份验证信息的cookie?

  2. HTTP 请求被发送到与我不同的域。即,发送请求的脚本在a.com 上,而我需要发送HTTP 请求的URL 是b.com。供应商说我应该只是“发送”他们在响应中返回的 cookie 给用户。这不起作用,但我需要了解原因 - cookie 的域是什么?是 a.com 还是 b.com?如果它的 b.com,那会起作用吗,因为实际进行调用的脚本将在 a.com 中,并且大多数浏览器不允许第三方域 cookie。还是因为我试图用 a.com 编写一个 cookie,而该 cookie 已经包含 b.com 的数据,所以它失败了?

4

1 回答 1

0

想通了。返回的 HTTP 只是另一个自定义标头值,而不是 cookie。因此,我们必须编写自己的 cookie。但是,很明显,其他域无法识别 cookie。所以我们实际上在IIS中构建了一个反向代理,让a.com这个域通过代理访问站点,叫做xacom,永远看不到b.com。所以写入的cookie被该域识别。

于 2012-05-16T14:48:47.080 回答