【发布时间】:2016-04-27 20:01:52
【问题描述】:
我正在尝试使用 jasypt 来加密我们的属性文件中的一些密码。我按照 jasypt 网站上的指南进行操作,但我认为我把密码弄乱了。我希望这里有人能告诉我我做对了还是做错了。现在......当我启动我的 jboss 服务器时,当它试图访问数据库时,我得到一个“无效的用户名/密码”错误。要么解密失败,要么我的设置错误。 这是设置的方式。
我生成的加密密码如下:
c:\jasypt-1.9.2\bin\encrypt input=mydbpassword password=password
----ENVIRONMENT----------------
Runtime: Oracle Corporation Java HotSpot(TM) 64-Bit Server VM 24.45-b08
-----ARGUMENTS-----------------
input: mydbpassword
password: password
------OUTPUT-------------------
N6Wz+z6fI24MagR5A4xNoH4gMh75Vo0
问题 #1:我假设我的数据库密码进入“输入”。如果是这样...那么密码字段是做什么用的??
我的persistence.xml:
<property name="connection.provider_class" value="org.jasypt.hibernate.connectionprovider.EncryptedPasswordDriverManagementConnectionProvider" />
<property name="connection.encryptor_registered_name" value="configurationHibernateEncryptor" />
我的 Spring Bean:
<bean id="hibernateStringEncryptor"
class="org.jasypt.hibernate4.encryptor.HibernatePBEStringEncryptor">
<property name="registeredName">
<value>strongHibernateStringEncryptor</value>
</property>
<property name="algorithm">
<value>PBEWithMD5AndTripleDES</value>
</property>
<property name="password">
<value>password</value>
</property>
</bean>
问题 #2:我假设加密命令中的“密码”字段在这里?我无法想象我的数据库密码会放在这里,因为这违背了加密的目的。但话又说回来......文档真的没有说那个值是什么。
感谢任何可以提供帮助的人!
-布莱克
【问题讨论】:
标签: spring hibernate encryption jasypt