AWS、Beanstalk + Worker Tier + Cron 和任务 URL 中的安全性

AWS, Beanstalk + Worker Tier + Cron and security in the Task URLs

我正在改造我的网络应用程序以使其适应 Beanstalk 和 Workers 希望我定义 cron 任务的方式:

我知道我必须实现一个 URL 来执行任务。

在我看来这是一个很大的安全漏洞,任何了解 任务 URL 的人都可以调用该任务。

向这些任务URLs添加一些安全包装器的常用模式是什么?

我以前也经历过同样的事情。但是,如果您查看文档,您会发现它谈到了以下内容(第三点除外)。

  1. 确保 URL 只接受来自本地主机和 IP 的请求。
  2. 使 URL 只接受 POST 个请求
  3. 最后但并非最不重要的一点是,数据应符合您选择的任何格式。我认为 JSON 是默认值。

因为它只接受来自本地主机的请求所以是安全的。如果您想实施额外的安全性,您还可以检查 header 以及只允许特定代理。

您应该能够简单地锁定分配给 Elastic Beanstalk 工作层环境的安全组,以便它只接受来自工作层中其他 EC2 实例的传入请求。换句话说,安全组应该有一个单一的入站规则,来源类型"Custom",来源值是安全组的ID。然后你可以确定只有工作层守护进程可以 post 到你的工作层任务 URL.