多次执行gcloud auth application-default login后旧refresh token有效性及GCP机制问询
关于
gcloud auth application-default login凭据替换的问题解答 被替换凭据中的refresh token有效性
- 执行
gcloud auth application-default login时,本地的application_credentials.json会被新文件覆盖,但旧文件里的refresh token并不会失效——除非你主动在GCP控制台或通过命令撤销该token的权限。 - 多次执行命令且未清理旧凭据的情况下,确实会存在多个有效的"孤立"refresh token。这些token不受本地文件覆盖的影响,仍然可以用来获取新的访问令牌,直到被主动撤销或触发自然失效条件。
GCP针对未使用refresh token的处理机制
- GCP没有为
gcloud auth application-default login命令设置特殊的短有效期规则。这类通过用户OAuth 2.0授权流程生成的refresh token默认长期有效,只有在以下场景才会失效:- 用户主动在GCP控制台或通过
gcloud auth revoke类命令撤销了该token - 用户修改了关联的Google账号密码
- GCP系统检测到该token存在异常使用风险(比如异地登录、异常权限请求)
- 用户主动在GCP控制台或通过
- 要避免积累大量未使用的有效refresh token,建议主动清理:可以通过GCP控制台的「安全」板块找到「OAuth 2.0 客户端ID」页面,查看并撤销闲置的token;或者每次生成新凭据前,先执行
gcloud auth application-default revoke命令注销旧凭据。
内容的提问来源于stack exchange,提问作者abcdaire
相关产品推荐
相关产品推荐

