我需要存儲將要通過應用程序全局訪問的加密密鑰。有設置和配置的存儲位置嗎?我嘗試搜索,但無法提供任何東西。存儲要在整個應用程序中使用的加密密鑰的位置(Ruby On Rails)
1
A
回答
0
有幾種方法可以做到這一點。
使可用的類似的東西在全球範圍內您的應用程序最簡單的方法是將內config/environment.rb
(或config/environments/production.rb
定義常量。
但是,敏感數據是非常重要的,他們正在從主SCM,只有分離在生產環境中可用 - 至少這樣,如果您的代碼被泄露,您的加密密鑰是安全的。
有兩種方法可以做到這一點,我知道 - 一種方法是將它們設置在環境中變量,然後可以通過紅寶石通過ENV['variable_name]
訪問。
另一種選擇是將其存儲在與代碼存儲庫分離的外部文件中,然後使用初始化程序讀入該文件。
你做哪種方式,可這種做法有一個常量聲明中config/environment.rb
結合:
# config/environment.rb
ENCRYPTION_KEY = ENV['encryption_key']
這樣,你應該改變你的密鑰的存儲位置,你只需要改變的一行碼。
0
您可以在config/initializers/01_secrets.rb文件中設置所有的祕密常量。以下是考慮幾件事情:
01前綴,以確保 祕密常數先於其他 初始化,使利用這些 常量加載設置。
01_secrets.rb文件不應該被登記到您的SCM的 。
存儲該文件 的服務器必須得到妥善保護,並且文件 本身應該具有最大安全性。
例如,
# config/initilizers/01_secret.rb
ENV['ENCRYPTION_KEY'] = "your_key"
相關問題
- 1. 如何管理在硬盤上存儲加密用戶憑證的Ruby應用程序中的加密密鑰?
- 2. 使用Ruby on Rails應用程序加密
- 3. java中的128位密鑰AES加密應用程序
- 4. 存儲Rails應用程序的共享密鑰
- 5. 在WPF應用程序中保存加密密鑰
- 6. 如何列出Ruby on Rails上的內存緩存存儲區中的密鑰?
- 7. oracle存儲過程加密密鑰
- 8. 在我的應用程序中存儲敏感的API密鑰
- 9. 使用存儲在KeyStore中的密鑰加密領域
- 10. 在一個yesod應用程序中存儲API密鑰和其他'祕密'的位置
- 11. 在PHP中使用AES加密時,應該在哪裏存儲密碼密鑰?
- 12. 在Python中存儲密鑰和密碼的位置
- 13. 在iPhone應用程序的代碼中存儲OAuth密鑰
- 14. 如何使用Android密鑰存儲提供程序存儲密鑰
- 15. Ruby on Rails - 使用authlogic存儲純文本密碼
- 16. Ruby on Rails - 存儲應用程序配置
- 17. 使用Carrierwave加密/解密文件並在S3中存儲(Rails)
- 18. 在存儲過程中使用密碼打開對稱密鑰
- 19. 使用Rails存儲加密的cookie
- 20. 在iPhone應用程序中存儲API密鑰不安全?
- 21. Ruby on Rails解密
- 22. 使用KeyChainItemWrapper在KeyChain中存儲密鑰
- 23. 將javax.crypto用於文件加密/解密的密鑰存儲區
- 24. 如何安全地存儲應用程序ID /密鑰?
- 25. 使用inode字段存儲文件的加密密鑰
- 26. 將密鑰或密碼用於加密的最佳位置?
- 27. 在PHP中使用密鑰加密和解密使用密鑰的PHP文件
- 28. 對於多個應用程序使用相同的密鑰存儲可以嗎?
- 29. Ruby on Rails應用程序
- 30. 使用Solr在Production中設置Ruby on Rails應用程序