【发布时间】:2021-05-17 20:23:57
【问题描述】:
假设,我运行 Google 的 Cloud Run 服务。
我们还假设有人真的想伤害您并找出所有 API 路由,或者能够通过向网站发送垃圾邮件来发送大量后期请求。
有一个电子邮件通知,会弹出您之前设置的某些限制。
还有没有办法自动切断 Cloud Run 服务,或者设置为暂时下线?我找不到任何好的资源或解决方案。
【问题讨论】:
标签: google-cloud-platform google-cloud-run
假设,我运行 Google 的 Cloud Run 服务。
我们还假设有人真的想伤害您并找出所有 API 路由,或者能够通过向网站发送垃圾邮件来发送大量后期请求。
有一个电子邮件通知,会弹出您之前设置的某些限制。
还有没有办法自动切断 Cloud Run 服务,或者设置为暂时下线?我找不到任何好的资源或解决方案。
【问题讨论】:
标签: google-cloud-platform google-cloud-run
除了 Dondi 提出的身份验证解决方案之外,还有几种解决方案可以从流量 Cloud Run 服务中移除
【讨论】:
您不能真正“关闭” Cloud Run 服务,因为它完全由 Google 管理。如果没有请求,Cloud Run 实例会自动缩减为零,但它会继续提供流量。
要模拟您想要执行的操作,请确保您的服务需要身份验证,然后撤消违规用户(或所有用户)的访问权限。正如docs中提到的:
Cloud Run(完全托管)不提供使服务停止提供流量的直接方法,但您可以通过撤销调用服务的身份调用服务的权限来实现类似的结果。值得注意的是,如果您的服务是“公共的”,请从 Cloud Run Invoker 角色 (
roles/run.invoker) 中删除allUsers。
更新:通过 IAM 策略管理对资源的访问。为了以编程方式控制访问,您必须先获取 IAM 策略,然后将角色撤消给用户或服务帐户。这是提供概述的documentation。
【讨论】: