Google cloud platform 如何使用部署管理器将IAM策略设置为云功能

Google cloud platform 如何使用部署管理器将IAM策略设置为云功能,google-cloud-platform,google-cloud-functions,google-deployment-manager,Google Cloud Platform,Google Cloud Functions,Google Deployment Manager,我想通过部署管理器部署具有特定IAM策略的云功能。My部署。yml: 资源: -类型:gcp类型/cloudfunctions-v1:projects.locations.functions 名称:测试函数 特性: 母公司:项目/测试项目/地点/欧洲西部3 函数:测试函数 入口点:functions.KotlinHelloWorld 超时时间:30秒 可用邮箱:256 运行时:java11 地点:欧洲西部3 sourceArchiveUrl:gs://source bucket/kotlin-f

我想通过部署管理器部署具有特定IAM策略的云功能。My部署。yml

资源:
-类型:gcp类型/cloudfunctions-v1:projects.locations.functions
名称:测试函数
特性:
母公司:项目/测试项目/地点/欧洲西部3
函数:测试函数
入口点:functions.KotlinHelloWorld
超时时间:30秒
可用邮箱:256
运行时:java11
地点:欧洲西部3
sourceArchiveUrl:gs://source bucket/kotlin-function.zip
httpsTrigger:
网址:https://europe-west3-test-project.cloudfunctions.net/test-function
环境变量:
BUCKET:函数结果
结果文件:dates.txt
访问控制:
GCP政策:
绑定:
-角色:角色/cloudfunctions.invoker
成员:
-诱惑者
它在没有访问控制块的情况下工作。但在上述情况下,我得到一个错误:

user@pc-003:~/Develop/kotlin函数$gcloud部署管理器部署更新学习--config deployment.yml
部署的指纹是6MAQlDoq73-O_QDwSCD7uA==
等待更新[操作-1593088111352-5a8e7baf9192b-7d149199-82e96170]…失败。
错误:(gcloud.deployment manager.deployments.update)操作错误[Operation-1593088111352-5a8e7baf9192b-7d149199-82e96170]:错误:
-代码:资源错误
位置:/deployments/learning/resources/test function
消息:“{”ResourceType:“gcp类型/cloudfunctions-v1:projects.locations.functions”,“ResourceErrorCode:“404”,“ResourceErrorMessage:{”statusMessage:“Not”
找到“请求路径”:https://cloudfunctions.googleapis.com/v1/:setIamPolicy“,“httpMethod”:“POST”}”

这是部署管理器和云函数API的问题。您可以在此处阅读更多信息:

作为一种解决方法,您可以将IAM策略定义为单独的资源:

-name:[绑定名称]
类型:gcp类型/cloudfunctions-v1:virtual.projects.locations.functions.iamMemberBinding
特性:
资源:项目/[PROJECT\u NAME]/locations/[LOCATION]/functions/[FUNCTION\u NAME]
角色:角色/cloudfunctions.invoker
成员:诱惑者
为此,您需要授予谷歌API服务代理编辑IAM策略的权限Cloud Functions Admin是一个在这种情况下拥有所有所需权限的角色