【发布时间】:2020-12-29 08:59:39
【问题描述】:
我正在尝试Using Cloud Tasks to trigger Cloud Functions 教程,但是当我尝试运行创建的任务时出现错误:
Status code: 7 (PERMISSION_DENIED)
Reason for retrying: PERMISSION_DENIED(7): HTTP status code 403
我创建了一个具有Cloud Functions Invoker 角色的新服务帐户。
并修改了我的代码,以便使用此服务帐户创建任务:
const task = {
httpRequest: {
httpMethod: protos.google.cloud.tasks.v2.HttpMethod.POST,
url,
oidcToken: {
serviceAccountEmail: 'cloud-tasks-client@my-actual-project.iam.gserviceaccount.com',
},
任务是从云函数创建的。
我还修改了目标 Cloud Function 访问控制,以便 allAuthenticatedUsers 使用角色 Cloud Functions Invoker 访问它。
我可以使用云功能控制台测试触发该功能而不会出现任何错误。
我错过了什么?有什么想法吗?
【问题讨论】:
标签: google-cloud-functions service-accounts google-cloud-tasks