1

有没有办法配置 gitkit cookie 的参数?

具体来说,我想指定域和路径。我正在使用java。

查看 www.gstatic.com/authtoolkit/js/gitkit.js 的来源,有一个“cookiePolicy”,但在https://developers.google.com/identity/toolkit/web/setup-frontend没有文档。

我想配置它的原因是使用来自不同子域的相同 gtoken (gitkit) cookie。但也许这可以从谷歌云控制台(浏览器 API 密钥)中设置?

4

1 回答 1

1

Gitkit 现在支持自定义 cookie 策略。官方文档尚未更新,但这基本上是它的工作原理:

有3个政策:

  • 单一主机来源:将强制执行没有子域的单一主机名。这是未提供时的默认选项。这也是当前客户端使用的策略。因此,只会使用当前域及其根路径,而不使用其子域。因此,如果 cookie 设置在页面http://example.com上,则只有该域可以读取该 cookie。http://www.example.com将无法读取 cookie。
  • 无:没有保存 gtoken cookie。
  • Uri:在这种情况下,提供了一个 uri,例如:https://bccom/path/to/cookie/root/,它将用于确定以下 cookie 属性: 安全:这由协议确定。它只接受 https 或同时接受 https/http。任何其他方案都会发出错误。当设置 https 时,该字段为真。域:在这种情况下,域将设置为 .bccom。路径:如果未提供,则路径将设置为“/”,否则将在以下示例中设置为“/path/to/cookie/root/”。

要使用:

var config = {
  apiKey: 'xxx',
  signInSuccessUrl: '/main',
  oobActionUrl: '/email',
  signInOptions: ['google', 'facebook', 'password'],
  cookiePolicy: 'https://b.c.com/path/to/cookie/root/'
  // cookiePolicy: 'none'
  // cookiePolicy: 'single_host_origin'
};
window.google.identitytoolkit.start(
  '#gitkitWidgetDiv',
  config,
  '');
于 2015-11-04T05:13:03.623 回答