为了账号安全,请及时绑定邮箱和手机立即绑定

我想知道如何使用GAE进行访问控制

我想知道如何使用GAE进行访问控制

Go
临摹微笑 2023-07-31 17:31:36
有没有办法使用 Google App Engine 自动控制对特定 IP 的访问?例如,如果 API 端点在一分钟内被访问 10 次,它将不会接受对该 IP 地址的请求。据我了解,GKE 和 GCE 可以通过 Google 负载平衡和 GOOGLE CLOUD ARMOR 执行相同的操作。我想用 Google App Engine 来做到这一点。
查看完整描述

3 回答

?
达令说

TA贡献1821条经验 获得超6个赞

Cloud Endpoints with App Engine 是一种解决方案。

  1. 您可以设置 ESP 以对客户端进行身份验证选择身份验证方法。

  2. 然后,您可以通过在 OpenAPI 文档配置配额中添加配额来限制 api 请求。

这是官方文档中的示例:

以下示例显示如何在路径部分中配置 x-google-quota 扩展:


x-google-management:  

 metrics:

# Define a metric for read requests.

 - name: "read-requests"

   displayName: "Read requests"

   valueType: INT64

   metricKind: DELTA   quota:

 limits:

   # Define the limit or the read-requests metric.

   - name: "read-limit"

     metric: "read-requests"

     unit: "1/min/{project}"

     values:

       STANDARD: 1000 paths:   "/echo":

 post:

   description: "Echo back a given message."

   operationId: "echo"

   produces:

   - "application/json"

   responses:

     200:

       description: "Echo"

       schema:

         $ref: "#/definitions/echoMessage"

   parameters:

   - description: "Message to echo"

     in: body

     name: message

     required: true

     schema:

       $ref: "#/definitions/echoMessage"

   x-google-quota:

     metricCosts:

       "read-requests": 1

   security:

   - api_key: []


查看完整回答
反对 回复 2023-07-31
?
aluckdog

TA贡献1847条经验 获得超7个赞

您可以将Cloud Endpoints 与 App Engine 结合使用。您可以借助 Cloud Endpoints 在任何 Google Cloud 后端上开发、部署和管理 API。

Cloud Endpoints 提供配额,让您可以控制应用程序调用 API 的速率。设置配额允许您指定使用限制,以保护您的 API 免受调用应用程序发出的过多请求的影响。过多的请求可能是由简单的拼写错误或设计效率低下的系统导致的,该系统对 API 进行了不必要的调用。无论原因如何,一旦特定来源的流量达到一定水平,就对其进行阻止,这对于 API 的整体健康而言是必要的。通过设置配额,您可以确保一个应用程序不会对使用您的 API 的其他应用程序产生负面影响。

您还可以检查Apigee Edge 上的速率限制


查看完整回答
反对 回复 2023-07-31
?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

我自己没有尝试过,但看起来有一个 API 可以做到这一点。

要以编程方式为 App Engine 应用程序创建防火墙规则,您可以使用 Admin API 中的 apps.firewall.ingressRules 方法。


查看完整回答
反对 回复 2023-07-31
  • 3 回答
  • 0 关注
  • 142 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信