JBOSS连接池加密

jboss中配置连接池时默认数据库用密码是用明文方式存储,这给数据库的安全带来了一定的风险。
下面介绍如何在jbosscp06下对数据库密码加密。

 

数据库用户:MYORACLE  密码:TEST

 

1.制作加密工具
a).将以下四个jar拷贝到一个指定的目录中,如D:/pass
D:/jboss-eap-4.3/jboss-as/lib/jboss-common.jar,jboss-jmx.jar
D:/jboss-eap-4.3/jboss-as/server/production/lib/jboss-jca.jar,jbosssx.jar

 

b)编写encrypt.bat内容为

 

org.jboss.resource.security.SecureIdentityLoginModule 是我们加密的程序
TEST 为要加密的密码
3fb2b2b29f74131a 为加密后输出的结果

 

2.jboss_home/production/conf/jboss-log4j.xml添加

 

 


 

<application-policy name="testDataSource">   --testDataSource 是连接池的名称
     <authentication>      
         <login-module code="org.jboss.resource.security.SecureIdentityLoginModule" flag="required">
            <module-option name=“username”>MYORACLE</module-option>   -- 用户名    
            <module-option name="password">3fb2b2b29f74131a</module-option> --加密后的密码
            <module-option name="managedConnectionFactoryName">

           jboss.jca:service=LocalTxCM,name=testDataSource

         </module-option>
         </login-module>
     </authentication>
 </application-policy>

 

 

3.jboss_home/production/deploy/oracle-ds.xml 配置
 <local-tx-datasource>
    <jndi-name>testDataSource</jndi-name>
    <connection-url>jdbc:oracle:thin:@127.0.0.1:1521:orcl</connection-url>         
    <use-java-context>false</use-java-context>
    <driver-class>oracle.jdbc.OracleDriver</driver-class>
    <security-domain>testDataSource</security-domain>   (不需要写数据库用户名密码)
    <exception-sorter-class-name>

         org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter

    </exception-sorter-class-name>
     <new-connection-sql>ALTER session set NLS_DATE_FORMAT='YYYY-MM-DD'</new-connection-sql>
      <min-pool-size>5</min-pool-size>
      <max-pool-size>20</max-pool-size>
      <blocking-timeout-millis>5000</blocking-timeout-millis>
      <idle-timeout-minutes>5</idle-timeout-minutes>
      <metadata>
         <type-mapping>Oracle10g</type-mapping>
      </metadata>
  </local-tx-datasource>
 
 
4.重启jboss 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值