簡體   English   中英

如何在數據庫中安全存儲Java應用程序密碼

[英]how to store java application password safely in database

我有通過API連接到其他工具的Java應用程序。 當前,所有密碼都存儲在應用程序本地。

我想將它們安全地存儲在數據庫中,哈希數據庫中的密碼,並在運行時檢索密碼時解密。 這是最好的方法嗎?

謝謝

您可以使用非對稱密碼術或其他任何方法安全地存儲在數據庫中

我將創建一個Spring-Boot應用程序。 Spring使用BCryptEncoder / -decoder以安全的方式將密碼存儲在數據庫中。

如果您不想使用Spring,那么以下鏈接可以為您提供幫助。

https://www.stubbornjava.com/posts/hashing-passwords-in-java-with-bcrypt

如果只有管理員有權訪問正在運行應用程序的服務器,則另一種選擇是將機密信息(密碼)作為環境變量提供。

訪問它們的最基本方法是System.getEnv(String envKey) 例如:

export SOME_ENV_VARIABLE="your secret"; java -jar yourapplication.jar export SOME_ENV_VARIABLE="your secret"; java -jar yourapplication.jar ;

如果您使用的是AWS或類似工具,則它們通常具有用於以安全方式存儲這些機密的工具。

您可以使用加密哈希來存儲密碼。

https://auth0.com/blog/hashing-passwords-one-way-road-to-security/

如果您需要額外的安全性,則可以在哈希中添加鹽。

https://auth0.com/blog/adding-salt-to-hashing-a-better-way-to-store-passwords/

暫無
暫無

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

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