AWS API Gateway:API 密钥的最佳实践
Posted
技术标签:
【中文标题】AWS API Gateway:API 密钥的最佳实践【英文标题】:AWS API Gateway: Best practice for API key 【发布时间】:2019-07-30 06:28:43 【问题描述】:AWS API Gateway 中 API 密钥的最佳实践是什么?
每个客户一个 APIKey 或 每个客户和 API 一个 APIKey(因此客户必须为他们使用的每个 API 使用不同的密钥)每种选择的优缺点是什么?
当客户对每个 API 都拥有一个 APIKey 时,我们是否会失去灵活性?
【问题讨论】:
【参考方案1】:我总是建议为每个客户端设置一个 apikey。这意味着每个 Api 都有一个键。这样,您将能够更轻松地诊断哪个应用程序/服务正在发送请求。此外,您将自己置于密钥轮换只会影响单个客户的位置。此外,您可以充分利用使用计划来逐个限制您的客户端,以免影响使用同一 API 网关的其他客户端。
在灵活性方面,作为 API 网关的所有者,您的工作是保护您的 api,以便每个客户端可以以合理的方式使用它,直至达到预定义的限制。因此,为每个客户端使用单个密钥绝对是正确的方法。
【讨论】:
不要忘记每个账户和每个区域的默认限制是 500 个 API 密钥。每个客户拥有一个 API 密钥是不可扩展的。 docs.aws.amazon.com/apigateway/latest/developerguide/…以上是关于AWS API Gateway:API 密钥的最佳实践的主要内容,如果未能解决你的问题,请参考以下文章
在 AWS API Gateway 中,我可以在不附加 API 密钥的情况下使用使用计划吗?
如何使用 AWS API Gateway 为 CORS 预检请求设置配额
如果在 Terraform 模块中创建了 aws_api_gateway_integration,如何在 aws_api_gateway_deployment 资源上填充depends_on?