如何从 GCP 授予 Firebase Functions 访问资源的权限? (如普通教育证书)
How do i give permissions from GCP to Firebase Functions to access resources? (like GCE)
有谁知道我如何从我在 GCP 中的项目向在 firebase 中创建和部署的函数授予权限?因为我正在做的是以下内容:
- 从站点(也部署在 firebase 中)y 调用后端(Firebase 函数)
- 函数本身,试图从我的 GCP 项目中获取资源(具体来说,目前 运行ning 是什么实例)
- 然后,我收到它们并显示在前面。
第 2 步导致了我的问题,目前当我尝试 运行 它时,它给了我错误:
错误:无法处理请求,在 firebase 函数的日志中我得到:GaxiosError:'projects/projectID'[=28 需要 'compute.instances.list' 权限=] 所以我确定这是授权问题。
所有这个项目在 2 个月前运行良好,但我的免费试用期已过期,我们试图转移到另一个 GCP 帐户并尝试完成这个项目(有了这个我知道代码工作正常,问题是当然是 GCP,因为当我使用其他 API 与 GCP 资源无关的端点时,它们工作得很好。
任何推荐都会很棒,如果我没有提供足够的信息,请告诉我。谢谢你的时间
将包含所需权限的 IAM 角色添加到 Cloud Function 服务帐户。
例如角色 roles/compute.viewer
拥有权限 compute.instances.list
.
查看此页面以了解有关 Compute Engine IAM 角色的更多信息:
Compute Engine IAM roles and permissions
Firebase 函数是云函数。 Cloud Functions 使用 App Engine default service account
进行访问控制。服务帐户名称的格式为:PROJECT_ID@appspot.gserviceaccount.com
。在 IAM 下找到该服务帐户并添加上述角色。
有谁知道我如何从我在 GCP 中的项目向在 firebase 中创建和部署的函数授予权限?因为我正在做的是以下内容:
- 从站点(也部署在 firebase 中)y 调用后端(Firebase 函数)
- 函数本身,试图从我的 GCP 项目中获取资源(具体来说,目前 运行ning 是什么实例)
- 然后,我收到它们并显示在前面。
第 2 步导致了我的问题,目前当我尝试 运行 它时,它给了我错误: 错误:无法处理请求,在 firebase 函数的日志中我得到:GaxiosError:'projects/projectID'[=28 需要 'compute.instances.list' 权限=] 所以我确定这是授权问题。
所有这个项目在 2 个月前运行良好,但我的免费试用期已过期,我们试图转移到另一个 GCP 帐户并尝试完成这个项目(有了这个我知道代码工作正常,问题是当然是 GCP,因为当我使用其他 API 与 GCP 资源无关的端点时,它们工作得很好。
任何推荐都会很棒,如果我没有提供足够的信息,请告诉我。谢谢你的时间
将包含所需权限的 IAM 角色添加到 Cloud Function 服务帐户。
例如角色 roles/compute.viewer
拥有权限 compute.instances.list
.
查看此页面以了解有关 Compute Engine IAM 角色的更多信息:
Compute Engine IAM roles and permissions
Firebase 函数是云函数。 Cloud Functions 使用 App Engine default service account
进行访问控制。服务帐户名称的格式为:PROJECT_ID@appspot.gserviceaccount.com
。在 IAM 下找到该服务帐户并添加上述角色。