可执行jar文件 - hibernate.cfg文件

时间:2015-05-14 10:03:36

标签: java hibernate executable-jar

我创建了使用数据库连接的可执行jar应用程序。问题是我的hibernate.cfg文件包含在源代码中,任何人都可以很容易地获得用户名和passowrd for DB。

我该如何避免这种情况?让它变得不可读或以某种方式把它放在其他任何人都无法阅读的地方。

2 个答案:

答案 0 :(得分:0)

纯文本密码在正确安全的机器上通常很好;如果想要做坏事的人拥有该机器的管理权限,他们很容易在不知道数据库密码的情况下做坏事。除非你有恶意管理员,否则没有必要担心它,但如果你有其中任何一个,那么没有人能做到。您可以使用加密密码,但我会优先保护服务器本身,而不必担心配置文件中的密码。

您可以查看http://www.jasypt.org/加密

答案 1 :(得分:0)

您可以使用Jasypt:Java简化加密API来加密您的用户名和密码,这是一个简单的API。

Hibernate.cfg。构造

<property name="hibernate.connection.provider_class">org.jasypt.hibernate3.connectionprovider.EncryptedPasswordC3P0ConnectionProvider</property>
<property name="connection.encryptor_registered_name">standardPBEStringEncryptor</property> <property name="connection.password">ENC(QVvFsdfefwewEz3i+0EwsxWenjtrjtrjweftUYpMs)</property>
您需要使用此API来加密密码并在休眠配置中提供该密码。