关于Google OAuth 2.0 refresh_token过期规则的技术咨询
Google OAuth 2.0 Refresh Token 常见问题解答
1. Google的refresh_token是否会过期?若会过期,过期时长为多少天?
Google的refresh_token默认不会自动过期,但遇到以下情况会失效:
- 用户主动撤销了应用的访问权限
- 用户修改了账号密码(当应用请求的权限包含敏感范围,比如Gmail读写、Drive完全访问等)
- Google手动限制了应用的访问权限
- 同一用户同一应用的有效refresh_token数量超过50个,超出后最早创建的token会被自动失效
针对Google Workspace(原G Suite)账号,域管理员可通过后台配置强制refresh_token过期,过期时长可自定义,常见设置为30至90天不等。
2. 若Google refresh_token存在过期机制,不同Google服务的过期规则是否存在差异?
基础的refresh_token失效逻辑(如用户撤销权限、密码变更、数量超限)对所有Google服务统一适用,但有两个特殊情况:
- Google Workspace账号的refresh_token过期规则由域管理员配置,不同企业的设置可能不同,该规则和具体服务无关,仅与账号所属的Workspace域相关
- 申请了高敏感权限的应用,若用户长时间未使用该应用,refresh_token可能被自动失效,这个规则没有按服务划分差异,主要依据权限的敏感程度判定
3. Google OAuth 2.0是否支持获取refresh_token的过期时间?
Google OAuth 2.0不提供refresh_token过期时间的返回字段。因为默认场景下refresh_token没有固定过期期限,只有触发特定失效条件时才会变为无效,所以没有对应的过期时间参数。即使是Workspace管理员配置了过期规则,该过期时间也不会在OAuth的响应中返回给应用。
内容的提问来源于stack exchange,提问作者Jeff
相关产品推荐
相关产品推荐

