如何在Apache BasicDataSource中使用加密密码?

如何在Apache BasicDataSource中使用加密密码?,第1张

如何在Apache BasicDataSource中使用加密密码

通过扩展现有任务

Copy
(负责文件复制)来创建新任务。通过扩展创建新类型
FilterSet
(负责令牌的过滤)。

build.xml

<target name="encrypted-copy" >        <CopyEncrypted todir="dist/xyz/config" overwrite="true"> <fileset dir="config"/>       <encryptionAwareFilterSet>     <filtersfile file="conf/properties/blah-blah.properties" /> </encryptionAwareFilterSet>        </CopyEncrypted>    </target>

blah-blah.properties

property1=value1property2=value2PASSWORD=^&YUII%%&*(USERNAME=rjuyalCONNECTION_URL=...someotherproperty=value

配置xml

<bean id="dataSource"     destroy-method="close" autowire="byName">        <property name="driverClassName"> <value>com.ibm.db2.jcc.DB2Driver</value>        </property>        <property name="url"> <value>@CONNECTION_URL@</value>        </property>        <property name="username"> <value>@USERNAME@</value>        </property>        <property name="password"> <value>@PASSWORD@</value>        </property>        <property name="poolPreparedStatements"> <value>true</value>        </property>        <property name="maxActive"> <value>10</value>        </property>        <property name="maxIdle"> <value>10</value>        </property>         </bean>.........

执行目标后,将使用属性文件中的值复制xml。密码将被加密。

这将处理加密的密码。 EncryptionAwareDataSource

public class EncryptionAwareDataSource extends BasicDataSource{    @Override    public synchronized void setPassword(String password) {  super.setPassword(Encryptor.getDecryptedValue( password ));    }}

就这些;)



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5428182.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存