Sql 在RubyonRails上寻找在文本文件中加密密码的方法
我正在寻找一种方法来加密ruby on rails应用程序中database.yml文件中显示的数据库密码,有什么办法吗? 大概是这样的:Sql 在RubyonRails上寻找在文本文件中加密密码的方法,sql,ruby-on-rails,ruby,encryption,Sql,Ruby On Rails,Ruby,Encryption,我正在寻找一种方法来加密ruby on rails应用程序中database.yml文件中显示的数据库密码,有什么办法吗? 大概是这样的: development: adapter: sqlserver mode: dblib database: db name host: host port: xxxx username: teste password: encryptedpass 您可以使用环境变量 development: adapter: sqlserv
development:
adapter: sqlserver
mode: dblib
database: db name
host: host
port: xxxx
username: teste
password: encryptedpass
您可以使用
环境变量
development:
adapter: sqlserver
mode: dblib
database: db name
host: host
port: xxxx
username: <%= ENV['DATABASE_USERNAME'] %>
password: <%= ENV['DATABASE_PASS'] %>
开发:
适配器:sqlserver
模式:dblib
数据库:数据库名称
主持人:主持人
港口:xxxx
用户名:
密码:
如果你需要管理大量的环境变量,有一个很好的gem,你可以用它向你的应用程序添加加密的秘密。它使用公钥/私钥对,允许您加密机密,以便只有您的部署环境才能读取它们
生成密钥后,将纯文本字符串放入secrets.production.ejson
文件,然后运行ejson encrypt
,这将加密所有未加密的值。然后可以安全地将结果添加到源代码管理中
然后,您可以加载ejson文件并通过
ENV
使其内容可用,并在YAML文件中使用key:
读取解密的值。如何?你能给我链接一个toturial吗?如果你的Rails应用程序遵循最佳实践,并且你没有可以作为静态文件使用的文件,而且服务器是安全的,那么就不需要加密它。在某种程度上,我们必须信任系统的管理和安全性,否则您将陷入一个兔子洞,试图处理所有可能的问题。