簡體   English   中英

將密碼存儲在數據庫中

[英]Storing passwords in a database

關於如何在數據庫中存儲密碼有很多問題,我知道密碼在任何情況下都不應以純文本形式存儲。 但是,我的應用程序需要針對各種第三方進行身份驗證,例如不提供OAUTH的SMB或REST API。 簡而言之:我需要存儲密碼。

為了避免以明文形式存儲密碼,我的想法是將密鑰存儲在環境變量中,並使用它來加密/解密密碼。

這是解決問題的好方法還是有更好的選擇?

查看attr_encrypted gem以透明地加密和解密屬性。 這將允許您寫入虛擬屬性,並在保存時將無縫地處理加密數據並將其持久保存到數據庫中,以便它們永遠不會以純文本形式存儲。

確保使用具有以下新默認模式的gem:per_attribute_iv,它將為您要存儲的每個加密屬性保留加密的密文和單獨的IV。

https://github.com/attr-encrypted/attr_encrypted

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM