首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何获取服务账号的项目?

如何获取服务账号的项目?
EN

Stack Overflow用户
提问于 2018-04-20 04:21:56
回答 3查看 226关注 0票数 0

我使用的是python google.cloud api

例如,使用指标模块

代码语言:javascript
复制
from google.cloud import monitoring

client = monitoring.Client()
client.query(my/gcp/metric, minutes=10)

对于我的gcp im,使用一个对GOOGLE_APPLICATION_CREDENTIALS项目具有特定访问权限的服务帐户。

google.cloud是否有任何模块可以让我从服务帐户派生项目(比如获取服务帐户所在的项目)?

这会很方便,因为每个服务帐户只能访问单个项目,所以我可以设置我的服务帐户,并能够在代码中引用该项目。

EN

回答 3

Stack Overflow用户

发布于 2018-04-23 07:59:35

不确定这是否有效,您可能需要对其进行调整:

代码语言:javascript
复制
from googleapiclient import discovery
from oauth2client.client import GoogleCredentials
credentials = GoogleCredentials.get_application_default() 
service = discovery.build('yourservicename', credentials=credentials) 
request = service.projects().list()[0]
票数 1
EN

Stack Overflow用户

发布于 2018-05-11 04:28:59

Google Cloud Identity and Access Management (IAM) API具有‘serviceAccounts.get’方法,该方法显示与服务帐户相关联的项目,如here所示。您需要对项目拥有适当的权限,API才能正常工作。

票数 0
EN

Stack Overflow用户

发布于 2019-06-04 08:55:45

如果该信息在环境中可用,则方法google.auth.default将返回一个元组(project_id, credentials)

此外,客户端对象知道它链接到哪个项目(无论是client.project还是client.project_id,我不确定哪个项目用于Monitoring API)。

如果使用GOOGLE_APPLICATION_CREDENTIALS环境变量手动设置服务帐户,则可以打开文件并加载其json。服务帐户密钥文件中的一个参数是项目id。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49929617

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档