API 网关自定义授权方 - 获取源 IP 地址

unc*_*eat 5 lambda amazon-web-services aws-api-gateway

是否可以在“自定义授权方” lambda 函数中获取对 API 网关的请求的源 IP 地址?

通过将您的API 网关实际集成到 lambda 函数中,这绝对是可能的。尽管似乎不可能在自定义授权方函数中获取请求者的 IP 地址。

我的目标是直接在 APIG 中进行基于速率的阻塞。这里描述了一个类似的解决方案。但是,由于我只限制对一个或两个 APIG 端点的访问,我宁愿在自定义授权方函数中执行此操作,该函数仅在 APIG 达到速率限制时将源地址添加到拒绝策略中。

编辑:澄清一些潜在的混淆。我知道我可以通过上面提到的常规集成以及在另一篇文章中做到这一点。但是我正在尝试利用自定义授权器功能,这样我就不必在我的所有 lambda 函数中编写相同的速率限制代码。

daw*_*ber -1

自定义授权者现在可以使用所谓的增强上下文。您应该能够使用适当的上下文变量来获取该信息(例如$context.identity.sourceIp)。您也许还可以使用 API 映射,但我尚未对此进行测试。