如何重置Python中Google Cloud凭据以使用应用默认凭据?
解决Google Cloud凭据指向旧文件的问题
排查环境变量
首先检查是否设置了GOOGLE_APPLICATION_CREDENTIALS环境变量,这个变量会强制程序使用指定的JSON文件:
- 打开命令提示符(cmd),执行:
echo %GOOGLE_APPLICATION_CREDENTIALS% - 如果输出是
c:\oldproject_id.json,说明环境变量还指向旧文件,需要删除或修改:- 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」
- 在用户变量或系统变量里找到
GOOGLE_APPLICATION_CREDENTIALS,删除该变量或者修改为正确的凭据路径
清理并更新本地默认凭据
如果环境变量没问题,可能是本地缓存的凭据残留:
- 找到GCP CLI的默认凭据文件路径:
%USERPROFILE%\AppData\Roaming\gcloud\application_default_credentials.json - 确认这个文件是最新生成的应用默认凭据,若不是则重新生成:
- 打开命令提示符,执行:
gcloud auth application-default login - 按照提示完成登录,这会自动更新
application_default_credentials.json文件
- 打开命令提示符,执行:
检查代码硬编码
确认你的Python代码里没有硬指定旧的凭据路径,比如有没有类似这样的代码:
storage_client = storage.Client.from_service_account_json('c:\oldproject_id.json')
如果有,删掉硬编码的路径,直接用storage.Client()让程序自动读取默认凭据
验证修复效果
完成上述步骤后,重新运行Python代码,也可以添加以下代码确认当前使用的凭据:
from google.auth import default credentials, project_id = default() print(f"当前使用的凭据项目ID: {project_id}")
内容的提问来源于stack exchange,提问作者anarche
相关产品推荐
相关产品推荐

