Rails 安全之Filtered parameter logging

因为最近项目所需,翻到这篇老文,去年8月的文章,比较有用,原文地址:
[url]http://weblog.rubyonrails.com/2006/8/21/filtered-parameter-logging[/url]


ActionController#filter_parameter_logging 可以用来过滤那些你不想保存在日志中的数据,它可以阻止一些敏感数据赤裸裸的暴露在日志文件中,比如密码,或者信用卡帐号。也可以防止一些大块的数据占用日志文件,等等。

如果你的应用用到passwords,复制下面这行到你的ApplicaitonController  Class:

filter_parameter_logging "password"
这样就可以阻止任何匹配/password/i模式的数据被写入日志,诸如: [user][password][user][password_confirmation]

Question:
如何在开发环境下显示POST logging,但是在产品环境下完全不显示呢?
answer:
filter_parameter_logging("password") if RAILS_ENV == "production"

如果想完全禁止POST logging,则可以在production.rb中修改:
config.log_level = :warn
实际上这些在Rails API中都有。。。

你可能感兴趣的:(parameter,Ruby,Rails,logging,ror,filtered)