[英]Why is there no IAM role specific to calling a GCP function?
如果我查看https://cloud.google.com/functions/docs/reference/iam/roles#standard-roles我会看到:
后者只包含一个权限, cloudfunctions.functions.invoke
我们正在使用 Google Cloud Workflows 调用我们的云 function 并且它当前失败并出现错误:
"error": {
"code": 403,
"message": "Permission 'cloudfunctions.functions.call' denied on resource 'projects/redacted/locations/europe-west2/functions/funcname' (or resource may not exist).",
"status": "PERMISSION_DENIED"
}
我很惊讶,因为有一个 roles/cloudfunctions.invoker 角色不是包含cloudfunctions.functions.call
。 roles/cloudfunctions.developer 包括该权限,但也包括许多其他内容为什么没有这样的角色?
是的,我知道我可以创建一个自定义角色,如果我不必这样做就好了。
cloudfunctions.functions.call
=> Call the callFunction API.
cloudfunctions.functions.invoke
=> Invoke an HTTP function via its public URL.
您提到“我们正在使用 Google Cloud Workflows调用我们的云函数”……不确定,但您可能正在使用这种方法 - projects.locations.functions.call 。 该页面上声明:“用于测试目的,因为允许的流量非常有限。”
我不知道您的上下文和要求的所有详细信息,但是您可以使用其 URL调用云 function 吗?
额外信息
您不能增加 CALL 配额。 如果您在生产中错误地使用此 API 调用您的功能,通常会出现配额不足的情况。 请记住,此 API 用于通过 Cloud Console 或 gcloud 函数调用 CLI 进行测试,它无法处理繁忙的流量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.