gpt4 book ai didi

python - 获取运行云功能的运行时服务帐户

转载 作者:行者123 更新时间:2023-12-02 02:16:30 25 4
gpt4 key购买 nike

有没有办法以编程方式从 Cloud Function 获取运行时服务帐户的电子邮件?

Runtime Service Account option

我知道我可以“猜测”默认的 App Engine 帐户(因为它始终是 @appspot.gserviceaccount.com),但这不是我想要的。

我期待有一些 Environment Variable或包含此信息的内容,但我找不到任何内容。

最佳答案

对于较旧的运行时(Node.js 8、Python 3.7 和 Go 1.11),您可以使用 FUNCTION_IDENTITY 环境变量,如 described here .

Python 示例:

import os
service_account_email = os.environ.get('FUNCTION_IDENTITY')

对于较新的运行时,您需要查询 Metadata Server ,如本例所示:

import requests
def query_metadata(entry):
response = requests.get('http://metadata.google.internal/computeMetadata/v1/' + entry, headers={'Metadata-Flavor': 'Google'})
return response.content.decode("utf-8")

service_account_email = query_metadata('instance/service-accounts/default/email')

您还可以使用以下方法编写支持两种运行时(旧版和新版)的函数:

service_account_email = os.environ.get('FUNCTION_IDENTITY') or query_metadata('instance/service-accounts/default/email')

要获取可用于查询信息的元数据端点列表,check here .

关于python - 获取运行云功能的运行时服务帐户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67099781/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com