我正在尝试加密基于Spring(3.2)的应用程序的属性文件中列出的用户名和密码。我正在将EncryptablePropertyPlaceholderConfigurer与一个目标一起使用以解密该密码。但是在初始化容器时,我看到属性文件中列出的加密密码没有被解密,并且加密值直接传递给了dataSource bean(ENC(XYZ ....))
请在下面查看我的配置:
<bean id="propertyPlaceholderConfigurer"
class="org.jasypt.spring.properties.EncryptablePropertyPlaceholderConfigurer">
<constructor-arg ref="configurationEncryptor" />
<property name="location" value="classpath:/application.properties" />
</bean>
<bean id="configurationEncryptor" class="org.jasypt.encryption.pbe.StandardPBEStringEncryptor">
<property name="config" ref="simpleStringConfiguration" />
</bean>
<bean id="simpleStringConfiguration"
class="org.jasypt.encryption.pbe.config.SimpleStringPBEConfig">
<property name="algorithm" value="PBEWithMD5AndDES" />
<property name="password" value="test" />
</bean>bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/testdb"/>
<property name="username" value="{dataSource.username}"/>
<property name="password" value="{dataSource.passwored}"/>
</bean>
属性文件
dataSource.username=ENC(4364b9/0Rz&(UDNoVj&*9AwzlGt+xz)
dataSource.password=ENC(testITJEFEU())*&(ydGmw==)
我正在使用spring遵循jasypt文档中列出的步骤 http://www.jasypt.org/spring31.html。有人可以帮我解决这个问题吗,因为我确实做了文档中列出的内容。