【发布时间】:2013-10-16 10:36:54
【问题描述】:
我需要启用访问日志,但出于合规性原因,无法在访问日志中记录敏感的 GET 请求参数数据。虽然我知道,我可以解析日志(事后)并对其进行清理,但这不是一个可接受的解决方案——因为出于合规性原因,日志不能被篡改。
http://www.example.com/resource?param1=123&sensitive_param=sensitive_data
如何防止将“sensitive_data”参数值写入日志?以下是一些想法:
- 在 POST 请求中发送 - 不是 JSONP 的选项。
- 为“资源”使用新的位置规则并设置访问日志以使用 log_format 使用不同的格式(即不使用 $remote_addr)。请参阅此内容以供参考:http://nginx.org/en/docs/http/ngx_http_log_module.html
- 记录一个 $sanitized_remote_addr,并在它写入日志之前对其进行设置(以某种方式解析 $remote_addr 或其他内容?)。我们不确定这是否容易实现。
这应该怎么做?
【问题讨论】:
-
您可能还想考虑mod_security for nginx 并查看naxsi project
标签: nginx access-log