如何在 AWS ELB 日志中获取完整的 POST 正文?

Posted

技术标签:

【中文标题】如何在 AWS ELB 日志中获取完整的 POST 正文?【英文标题】:How to get full POST body in AWS ELB logs? 【发布时间】:2020-03-10 23:50:51 【问题描述】:

目前,AWS ELB,无论是经典还是应用程序,都不记录 POST 请求的正文。 Cloudfront 也没有。是否可以在实例上方的这个级别获取完整的 HTTP 请求?

【问题讨论】:

请前往 CloudWatch 获取事件和对 AWS 的所有 API 的 HTTP 请求的完整正文。 如何在 CloudWatch 中找到 ELB 事件?现在,当我为 ELB 启用日志记录时,它会转到 S3 存储桶。我只是在寻找一种在 HTTP 请求到达我的网络中的应用程序级别之前获取完整请求正文的方法。 LB 显然得到了整个请求,但它只是没有记录它 @saif ELB 端点与 API 端点不同。 Cloudwatch 不提供任何 ELB 日志记录。 我认为通过 ELB 而不是 CloudWatch 是不可能的。 docs.aws.amazon.com/elasticloadbalancing/latest/application/…中没有引用post body请求数据 请前往docs.aws.amazon.com/elasticloadbalancing/latest/application/… 【参考方案1】:

您可以通过WAF检查HTTP请求内容,并根据某些条件进行阻止。这发生在请求到达应用程序之前。见https://aws.amazon.com/about-aws/whats-new/2016/01/aws-waf-now-inspects-http-request-body-and-adds-size-constraint-condition/

【讨论】:

谢谢罗德里戈。 WAF 是否允许您记录完整的请求以供以后分析/回放,还是严格进行中的检查?

以上是关于如何在 AWS ELB 日志中获取完整的 POST 正文?的主要内容,如果未能解决你的问题,请参考以下文章

当服务器位于 AWS ELB 之后时,ASP.NET Core MVC 应用程序如何获取客户端 IP 地址?

如何在自动缩放组中添加 aws new elb

从 AWS Beanstalk 检索 Apache 日志文件

如何使 ChromeCast 与在 AWS ELB 后面运行的发送者应用程序一起工作

使用直通 TCP SSL 获取 AWS ELB 中的客户端 IP - Apache

如何在 ELB 或 httpd 级别阻止不需要的请求