2016-06-07 68 views
-1

我已经在amazon API网关上部署了我的rest API,并且我有一个安全担忧的场景。 我对所有api请求都使用api密钥,我想知道api密钥是否以某种方式公开,而且我们知道已经发布的应用正在使用相同的api密钥......那么我的选择是什么?带有API密钥的Amazon API安全性?

还提到here 我只能有10000每AWS账户API密钥,如果我想的API密钥是每个用户唯一的它是更安全的,但如果用户数量拍摄出什么是超过10000
请建议,因为这是非常重要的。

+0

我不知道该对“API密钥”你的描述应该用于公共....我认为你需要考虑你的应用程序的设计。但话又说回来。我还没有使用api网关..... – ptierno

+0

我只想知道aws如何使用api-keys保护api,因为任何人都可以使用api密钥进行请求(如果暴露的话)? – LearningPal

+0

你如何建议为用户分配api密钥?您可能需要查看API网关自定义授权者。 –

回答

2

API密钥不建议用于授权。从每个API密钥接收到的调用都会受到监控,并包含在您可以为每个阶段启用的Amazon CloudWatch Logs中。您应该使用API​​密钥来监视第三方开发人员的使用情况,并采用更强大的授权机制,例如IAM或custom authorizers

希望这有助于

+0

我正在阅读文档,但无法理解lambda函数如何与我的api方法相关联以及它如何工作? – LearningPal

+0

我一直在阅读文档,但我真的不确定lamda是如何工作的,并且我已经将api部署为HTTP代理服务器,您能否建议我如何使其安全? – LearningPal

+0

如果我将授权从NONE设置为方法请求窗格中的AWS_IAM,并将集成中的HTTP头部设置为'method.request.header.Authorization',那么我应该通过头部授权传递什么?我想知道我是否可以通过任何方式来保护HTTP代理API – LearningPal