2
可以在「config/database.yml」文件中存儲生產環境的DB密碼嗎?還是有更正確的方法來做到這一點(也許是環境變量)?可以在config/database.yml文件中存儲生產環境的DB密碼
在此先感謝。
可以在「config/database.yml」文件中存儲生產環境的DB密碼嗎?還是有更正確的方法來做到這一點(也許是環境變量)?可以在config/database.yml文件中存儲生產環境的DB密碼
在此先感謝。
這不是一個好主意!一個主要原因是config/database.yml
文件可能會包含在某種源代碼控制中,例如git存儲庫。即使回購目前是私人回購,但您無法確定它將來會不會公開發布,然後您的手中就會出現問題!此外,如果任何人獲得對應用程序文件的讀取訪問權限或只是應用程序源文件的副本,則他們現在擁有數據庫密碼。
一個典型的解決方案是像你這樣的建議設置一個環境變量,然後在.yml文件中讀取:
password: <%= ENV['DATABASE_PASSWORD'] %>
如果您使用的是PaaS的像Heroku的,這是應該做的標準方式的東西。但即使this isn't a perfect solution,請仔細評估您的選擇。