繁体   English   中英

加密或清理Rails日志文件

[英]Encrypting or scrubbing Rails log files

我们的客户有非常严格的安全要求。 因此,我们将使用Postgres的数据库加密选项之一加密Rails数据库。 但是,当提交表单以创建数据时,这仍然会使客户的数据暴露在Rails记录器的日志中。

我想一个选项不是加密日志文件,而是抑制Rails为POST请求记录的所有参数值。 这样做的最佳方式是什么?

另一种选择是在将Rails日志文件写入磁盘时对其进行加密。 这是一个更好的方法,有什么好办法吗?

您可以做的一件事就是在config / application.rb文件中,您可以添加要从日志中省略的字段,如下所示

class Application < Rails::Application
  ...
  config.filter_parameters += [:password]
  config.filter_parameters += [:ssn]    
  ....
 end

我希望这个对你有用

如果你想要比所有参数的filter_parameters更好的东西,你可以编写一个自定义记录器。 请参阅: http//rubyjunky.com/cleaning-up-rails-4-production-logging.html以及从中提取的宝石, https://github.com/gshaw/concise_logging

但是,您需要将加密密钥存储在与日志相同的计算机上,这可能意味着如果有人具有活动访问权限,它也是不可加密的(但如果他们稍后以某种方式获取日志则不会)。

要考虑的一些问题:

  • 你需要参数记录吗? (你甚至检查日志?你如何跟踪错误?)
  • 你试图达到什么样的合规性? PCI? HIPAA?
  • 您试图避免的攻击媒介是什么? 即通过共享主机进行日志访问,物理攻击(删除硬盘),远程访问(从机器中获取所有文件),..

您的答案将定义如何解决此问题的指南!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM