4

我在我的 Java 项目中使用 Jaspyt 和 Spring 3。我目前将数据库连接属性存储在属性文件中。用户名和密码是纯文本,所以我一直在研究使用 Jaspyt 的 EncryptablePropertyPlaceholderConfigurer。

文档和教程建议将用于解密的主密码存储在环境变量中。这真的比在属性文件中存储纯文本值更安全吗?如果有人破坏了这个盒子,主密码在 (1) 环境变量或 (2) 服务器启动脚本中不可见吗?我想您可以手动设置环境变量并在服务器启动后取消设置,但手动过程似乎无法管理。

我只是偏执吗?是否有用于保护连接用户名和密码的方法?

4

1 回答 1

1

存储明文密码从来都不是一个安全的过程。接管服务器的攻击者在所有情况下都可以访问您的密码。如果手动输入不是一个选项(像往常一样),您只能为团队的一部分隐藏密码。如果您不想泄露数据库密码,请使用 JNDI 数据库连接。这使得密码仅对应用程序服务器管理员可见。

于 2013-03-31T09:39:50.400 回答