![](/img/trans.png)
[英]How to give service account storage.buckets.create permission in GCP Cloud Storage?
[英]GCP Cloud Scheduler Permission Errors with Service Account
Cloud Scheduler 是一个无服务器产品。 这意味着它不属于您的项目,并且不会通过 VPC 将请求发送到您的 Cloud Function。 此外, VPC SC 尚不支持Cloud Scheduler
因此,你不能。 解决方法是允许云 function 上的所有入口流量,并取消选中允许未经身份验证的访问。 因此,您的 function 可以从其他地方(从互联网)调用,但您需要有效的身份验证才能调用它。
使用您的服务帐户并将其添加到 Cloud Scheduler 以调用您的 function。 授予它足够的角色
选择
但是,如果您最初不想部署您的 function 可在 Internet 上公开访问(仅允许内部流量进入模式),则有另一种选择。
更改您的 Cloud Scheduler 以发布 PubSub 消息,而不是直接调用您的 function。 然后,部署链接到 PubSub 主题的 function 而不是 HTTP 目标模式。
您可能需要在代码中执行一些更新,特别是如果您有要处理的参数(最初在查询或正文中,现在全部在 Cloud Scheduler 发布的 PubSub 消息中)。 但是您的 function 只能由您的 PubSub 主题调用,不能以其他方式调用。
根据文档,为了从 Cloud Scheduler 触发 Cloud Function,您必须使用 Pub/Sub。 这些是步骤:
完成此操作后,您将能够测试运行 Cloud Scheduler 作业并验证它现在是否正常工作。 最终的架构是这样的:
Cloud Scheduler job => Pub/Sub topic => Cloud Function
一旦它开始工作,请记住恢复授予 Cloud Scheduler 服务帐户的角色,因为此方法不需要它们。
在这里,我发现了一篇博客文章,它具有相同的功能,但采用了更实用的方法,您可以从 CLI 中遵循该方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.