【问题标题】:Restrict access to Google Cloud Functions to a given network?限制对给定网络的 Google Cloud Functions 访问?
【发布时间】:2017-09-20 02:07:14
【问题描述】:

我正在查看Google Cloud Functions docs,我想知道是否可以将对给定网络的 HTTP 云功能的访问限制?我想避免任何人用尽免费配额。

Cloud Functions 是否有任何防火墙规则或类似机制?

【问题讨论】:

标签: google-cloud-platform google-cloud-functions


【解决方案1】:

我认为目前没有任何内置的安全限制。

为了避免配额耗尽,您可以传递带有某种共享密钥的标头或参数。即使是固定的字符串值也有助于避免这个问题。

【讨论】:

    【解决方案2】:

    您可以使用 firebase 身份验证向云功能添加身份验证。这是一个如何处理它的 github 示例:https://github.com/firebase/functions-samples/tree/master/authorized-https-endpoint

    但请注意,身份验证代码由您的函数执行,因此拒绝未经授权的访问仍会消耗您的免费资源配额的一小部分。

    【讨论】:

      【解决方案3】:

      Google Function Authorizer 模块可能是您正在寻找的。它为“Google Cloud HTTP Functions 提供了一个简单的用户身份验证和管理系统”。它似乎还没有很多用户,但该项目似乎很简单,如果您愿意,您至少可以将其用作修改或实施您自己的解决方案的基础。

      【讨论】:

        【解决方案4】:

        这篇文章对我很有帮助。

        https://cloud.google.com/solutions/authentication-in-http-cloud-functions

        任何人仍然可以调用该函数,但它必须包含来自有权访问该函数所访问资源的用户的凭据。

        在此之前,我做了一些非常简单的事情,可能不适合生产,但确实提供了更多的安全性,而不是让它公开开放。我在有效负载中使用密码调用我的函数,如果它与我在函数上硬编码的密码之一不匹配,它将失败并返回 403。

        【讨论】:

          猜你喜欢
          • 2021-01-16
          • 2020-05-06
          • 2019-08-18
          • 1970-01-01
          • 2012-03-12
          • 2019-07-07
          • 2019-12-30
          • 2017-05-17
          • 1970-01-01
          相关资源
          最近更新 更多