Java:在 属性 文件中存储加密数据库(和其他)密码的最佳选择是什么?
Java: What is the best option to store encrypted database (and other) passwords in property files?
我检查了 Jasypt 在 属性 文件中存储数据库加密密码的情况。它与 Spring 等有很好的集成,但是这些人提出的加密密码的方法对我来说看起来有点奇怪:
使用PBE(对称算法)加密。
将 encryption/decryption 的密码存储在环境变量或源代码中。
这两个选项看起来都不安全,而且有点不安全。
我的问题:
- 存储加密密码的最佳做法是什么?
- 我可以在这里使用基于密钥的加密(即 private/public 密钥)吗?
在我们的应用程序中,我们使用两种方法:
我们使用企业密码保险库来存储我们所有数据库的密码。我们的网络服务器每次都从保管库请求密码以连接数据库。
我们将加密的密码存储在属性文件中。
在应用程序启动期间,我们使用 class 加载程序读取属性文件并将其保存为系统变量并在需要时使用它。
直接使用 db 进行 public/private 密钥加密是很困难的,你需要一个中介来做到这一点。
我检查了 Jasypt 在 属性 文件中存储数据库加密密码的情况。它与 Spring 等有很好的集成,但是这些人提出的加密密码的方法对我来说看起来有点奇怪:
使用PBE(对称算法)加密。
将 encryption/decryption 的密码存储在环境变量或源代码中。
这两个选项看起来都不安全,而且有点不安全。
我的问题:
- 存储加密密码的最佳做法是什么?
- 我可以在这里使用基于密钥的加密(即 private/public 密钥)吗?
在我们的应用程序中,我们使用两种方法:
我们使用企业密码保险库来存储我们所有数据库的密码。我们的网络服务器每次都从保管库请求密码以连接数据库。
我们将加密的密码存储在属性文件中。 在应用程序启动期间,我们使用 class 加载程序读取属性文件并将其保存为系统变量并在需要时使用它。
直接使用 db 进行 public/private 密钥加密是很困难的,你需要一个中介来做到这一点。