我们的客户有非常严格的安全要求。因此,我们将使用Postgres的数据库加密选项之一加密Rails数据库。但是,当提交表单以创建数据时,Rails记录器会记录客户的数据。
我想一个选项不是加密日志文件,而是抑制Rails为POST请求记录的所有参数值。这样做的最佳方式是什么?
另一种选择是在将Rails日志文件写入磁盘时对其进行加密。这是一个更好的方法,有什么好办法吗?
我们的客户有非常严格的安全要求。因此,我们将使用Postgres的数据库加密选项之一加密Rails数据库。但是,当提交表单以创建数据时,Rails记录器会记录客户的数据。
我想一个选项不是加密日志文件,而是抑制Rails为POST请求记录的所有参数值。这样做的最佳方式是什么?
另一种选择是在将Rails日志文件写入磁盘时对其进行加密。这是一个更好的方法,有什么好办法吗?
你可以做的一件事就是在你身上 配置/ 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
但是,您需要将加密密钥存储在与日志相同的计算机上,这可能意味着如果有人具有活动访问权限,它也是不可加密的(但如果他们稍后以某种方式获取日志则不会)。
要考虑的一些问题:
您的答案将定义如何解决此问题的指南!