Google API刷新令牌和访问令牌问题Java BE + Web App

问题描述

我想做与此tutorial非常相似的事情,其中​​我要从Web客户端获取authCode并将authCode发送到Java BE应用程序以获取用户的凭据,然后,使用凭据获得对Google Sheet API的访问权限以在用户的​​驱动器上创建电子表格。

根据google-api-java-client/oauth2 doc

GoogleCredential负责自动“刷新”令牌, 这只是意味着获得一个新的访问令牌。

我仍然可以利用上面的语句,如果我正在验证并请求客户端Web应用程序的许可,则GoogleCredential自动刷新令牌-aka,我称{{1 }}在Web应用程序上请求,然后在Java BE应用程序中获取实际的grant offline(使用GoogleCredential)?如果是这样,那如何运作?为什么其他人建议将authCode存储在数据库中?

如果我决定存储在数据库中,是否可以将refreshToken与密钥一起存储为应用程序的用户唯一标识符(而不是使用建议的refreshToken标识符)?每个用户可以呼叫sub以获得新的accesstoken的时间有限制吗?即使token尚未过期,还是为每个新请求都获得一个新的accesstoken更好(似乎更安全)吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)