首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在服务器端撤销Google标识(使用GoogleVersion2022登录)

在服务器端撤销Google标识(使用GoogleVersion2022登录)
EN

Stack Overflow用户
提问于 2022-08-29 17:47:46
回答 1查看 136关注 0票数 0

背景

谷歌正在踢人的输出 of Google登录JavaScript库 (platform.js)和推动人们迁移谷歌身份服务公司与谷歌签约库(gsi/client)。(迁移指南)

到2023年3月,任何人都必须经历这一迁移。新的流程很酷(例如,一次点击),应该会让生活更轻松。

问题

在新的流程中,认证和授权被分离!如果您只需要基本范围(例如电子邮件、基本配置文件),那么身份验证就足够了。

这样,您就可以得到一个ID令牌( JWT),您可以使用它来在服务器端验证

问题是,撤销此令牌(如撤销方法中所列)只能由用户在自己的Google帐户中手动完成,或者应该在客户端完成。不存在服务器端选项。

案卷

  1. 我们的平台支持与谷歌,苹果,和电子邮件/密码登录。
  2. 同样的用户在网络上使用谷歌登录,苹果在他们的iPhone上注册。(电子邮件地址相同)
  3. 根据苹果的军队,从2022年6月30日开始,我们应该提供一个delete帐户选项。
  4. 用户登录与苹果登录到我们的平台,并要求删除他们的帐户。
  5. 我们可以通过调用苹果的服务器到服务器撤消令牌端点来撤销与苹果的签约(也必须是每一个苹果)。但谷歌并没有为ID令牌提供这样的选项。:(

知道怎么解决这个问题吗?

EN

回答 1

Stack Overflow用户

发布于 2022-08-29 17:47:46

目前的备选方案

1)使用授权并存储access_token和refresh_token

(每个Google Identity > OAuth 2.0 > Server-side Web Apps > Revoking a token) OAuth revoke采用访问令牌刷新令牌

谷歌登录网站的旧gapi库是在登录时授予访问令牌的。因此,我们必须通过授权流显式地请求访问令牌,并将其存储/刷新-令牌在DB中并进行维护。这太过分了,但有效。

2)在客户端进行,并覆盖最多,而不是全部。

当向服务器发送删除帐户请求时,可以在客户端完成。然而,它只涵盖与谷歌签约的用户。这意味着上面提到的用例(与Apple签约)将不包括在内。但是,嘿,这是一个既便宜又快捷的解决方案!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73532749

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档