Google 的 oauth2 端点 - v1 与 v2 有变化吗?

Google's oauth2 endpoint - v1 vs v2 changes?

我知道这有点像 'RTFM' 问题,但我一辈子都找不到关于这个的可靠文档。

具体来说,我有一项服务使用 google 的 oauth2 REST api 来验证用户。我正在使用的库 (bell) 最近开始调用 API 端点的 /v2 版本。这些调用似乎不再支持查询字符串中的 approval_prompt=force(或类似的东西,我不再能够使用特殊路由来强制使用新的刷新令牌)。

实际上,我需要做的就是阅读文档,了解 oauth2 库从 v1 到 v2 的变化,或者甚至找到特定于 v2 的信息。 developers.google.com 上的所有文档似乎都是关于 v1 api.

目前没有记录的更改列表。从/authv2/authv3/tokenv4/token的主要变化是更新的版本是certified compliant with OpenID Connect。早期版本与规范有一些不一致之处,主要是因为 Google 发布它们时规范尚未最终确定。

approval_prompt 现在是 prompt。要在较新的端点上获得 approval_prompt=force 行为,请指定 prompt=consentprompt 参数的其他值在规范的 section 3.1.2.1 中定义。

其他变化,排名不分先后:

  1. ID 令牌 iss 值现在是 https://accounts.google.com,之前是 accounts.google.com
  2. nonce 是隐式流和混合流所必需的
  3. 较新端点上的 ID 令牌 (如果请求 profile 范围),保存对 userinfo 的调用。