首页 > 解决方案 > 如何以当前用户身份使用 GCP 计算 API?

问题描述

我有一个脚本,它列出了计算引擎资源,并通过使用 Python 调用计算方法来使用它。到目前为止,我一直在从 VM 运行它,因此它使用 VM 服务帐户来运行。我怎样才能将它作为我自己的用户帐户运行?我的意思是,如果我要从 IDE 本地运行脚本,我怎么能让它以当前用户身份登录?我当前的登录看起来像这样:

从 googleapiclient 导入发现服务 = discovery.build('compute', 'v1', credentials=None)

标签: apigoogle-cloud-platformgoogle-oauthgoogle-compute-engine

解决方案


在 VM 上,您可以gcloud auth application-default login使用自己的凭据在众所周知的位置执行创建文件。

问题是:元数据服务器在众所周知的位置文件与谷歌云客户端库之前使用。诀窍是定义GOOGLE_APLICATION_CREDENTIALS环境变量以指向您的凭据文件;这个 env var 是第一个检查并使用的(如果存在)。

在 Linux VM 上,您可以在此处找到它们

~/.config/gcloud/application_default_credentials.json

但是,在 VM 上使用您自己的凭据这一事实很奇怪,让我认为您的设计不正确。你在玩秘密!当心!


推荐阅读