amazon-web-services - 如何防止第三方应用程序滥用 AWS Lambda

标签 amazon-web-services lambda serverless

非常有兴趣亲 body 验 Serverless 2018 年。已经在寻求实现 的使用AWS Lambda 在几个分散的应用程序项目中。但是,我还不明白如何防止第三方应用程序(甚至可能是竞争对手)滥用您的端点,从而推高您的使用成本。

我不是在谈论 DDoS,或者所有流量都来自单个 IP,这可能发生在任何网络上,而是特别是让 3rd 方应用程序的客户直接进行 REST 调用,这会导致您的使用成本上升,因为他们的应用程序搭载了您的 “开放”端点。

例如:

我希望在 AWS Lambda 上创建一个端点来给我 current price of Ethereum ETH/USD. 什么会阻止其他(或每个)dapp 开发人员使用 我的 lambda 端点并导致我的帐户产生过多的计费费用?

最佳答案

当您部署一个对世界开放的端点时,您将其开放以供使用,但也可被滥用。

AWS 提供服务来避免常见的滥用方法,例如缓解 DDoS 的 AWS Shield 等,但是,正如您所问的,他们不知道什么是或不是滥用您的 Lambda 函数。

如果您的 Lambda 函数是私有(private)的,那么您应该使用一种 API 网关安全机制来防止滥用:

  • IAM 安全
  • API key 安全
  • 自定义安全授权

  • 使用其中之一,您的 Lambda 函数只能由授权用户调用。如果没有其中一个,就无法防止您担心的滥用类型。

    关于amazon-web-services - 如何防止第三方应用程序滥用 AWS Lambda,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48054733/

    相关文章:

    ios - 我正在构建一个 iOS 应用程序,只是选择使用 AWS iOS SDK 而不是 BaaS 来构建后端。我刚刚为自己创造了哪些额外的工作?

    python - 将Python应用程序部署到AWS

    amazon-web-services - 如何通过CloudFormation模板将lambda放入VPC中

    c# - 为 C# 中的每个表达式向 lambda 添加条件

    node.js - 将图像文件上传到 s3 存储桶效果不佳。怎么修?

    mysql - Amazon AWS RDS MySQL 慢查询日志

    javascript - 如何在一行中初始化并返回一个对象

    c++ - 将 vector <char> 复制到二维 vector <string> c++

    serverless-framework - 在无服务器中使用标签时,API Gateway 缺少标签

    yaml - AWS SAM YAML 模板 - 未知标签!引用