我有一个我正在尝试部署的应用程序,有些关于安全性的问题。有没有办法避免在setup_mail中以纯文本格式存储我的电子邮件密码,在environment.rb中存储我的数据库密码?
答案 0 :(得分:4)
您可以将密码作为文件存储在部署服务器上,然后在database.yml(或者您拥有敏感数据的任何地方)中提供相应的内容:
production:
adapter: mysql
host: localhost
database: foobar_production
username: foobar
password: <%= begin IO.read("/home/deploy/passwords/foobar.db") rescue "" end %>
...其中foobar.db是一个只包含密码的纯文本文件。