无法在其他项目下的存储桶上创建云功能触发器。
部署功能(可能需要一段时间-最多2分钟)...失败。
错误:(gcloud.functions.deploy)OperationError:代码= 7,消息=权限不足,无法(重新)配置触发器 (对于bucket ing-auto,该权限被拒绝)。请给主人 桶的编辑者角色的权限,然后重试。
对于云功能中使用的服务帐户,所有者有权访问存储桶所在的项目。
即 有两个项目项目a和项目b。 云功能需要在 project-a 中创建。 google bucket在project-b中。 服务帐户用户 serv-user 是项目-a的一部分,并且拥有项目-b的所有者访问权限,该所有者将用于执行云功能。
gcloud functions deploy hello_gcs --runtime python37 --trigger-resource bucket-from-other-project-xxx --trigger-event goog
le.storage.object.finalize
我能够在同一项目的存储桶上创建云功能存储触发器
答案 0 :(得分:2)
您无法在另一个项目中使用存储桶来触发Cloud Function。
注意:云功能只能由同一Google Cloud Platform项目中的Cloud Storage存储桶触发。
答案 1 :(得分:1)
不可能。引用Google Cloud Functions documentation:
云功能只能由同一Google Cloud Platform项目中的Cloud Storage存储桶触发。
作为一种可能的解决方法,您可以将云功能部署为HTTP triggered。然后,在存储桶所属的项目中,部署由Cloud Storage事件触发的另一个Cloud Function,并在其代码中进行HTTP调用以触发第一个Cloud Function。