首页 > 解决方案 > 消除滋扰实例启动

问题描述

我的 GCP 应用已被一些用户滥用。为了阻止他们的使用,我试图消除可能被滥用的功能,并使用防火墙规则来阻止某些用户。但是不良用户继续尝试通过某些旧 URL(例如myapp.appspot.com/badroute )访问我的应用程序。当然,我仍然希望用户使用默认 URL myapp.appspot.com

我已按以下方式更改了我的代码,但我仍然让实例从它们开始,并且我不希望在这种情况下使用实例。我能做些什么来避免坏的实例启动或者我能做些什么来强制这些实例快速停止而不是在大约 15 分钟后停止?

class Dummy(webapp2.RequestHandler): 

  def get(self):
        logging.info("Dummy:  " )
        self.redirect("/")

app = webapp2.WSGIApplication(
                                     [('/', MainPage),
                                      ('/badroute', Dummy)],debug=True)

(当我应该指的是请求时,我可能指的是实例。)

标签: pythongoogle-app-engine

解决方案


那么目标是什么?您希望访问 /badroute 的用户被重定向到某个 /goodroute 吗?或者您希望 /badroute 不影响 GAE 并产生成本?

将谷歌云负载均衡器放在前面可能会有所帮助。

对于第一种情况,您可以设置重定向规则(尽管您也可以直接在 App Engine 中执行此操作,就像您在代码示例中所做的那样)。

如果您只是希望它不命中应用程序引擎,您可以设置谷歌云负载均衡器以将 /badroute 路由到 GCS 存储桶中的某个文件,而不是您的 GAE 服务

https://cloud.google.com/load-balancing/docs/https/ext-load-balancer-backend-buckets

但是,您将无法使用您的 *.appsot.com 基本网址。您将获得一个静态 IP,然后您应该将自定义域映射到它


推荐阅读