码迷,mamicode.com
首页 > 其他好文 > 详细

JBOSS数据源加密

时间:2017-03-25 22:39:46      阅读:599      评论:0      收藏:0      [点我收藏+]

标签:安全   名称   password   nec   服务   driver   size   new   ora   

1 引言

1.1 编写目的

加强安全管理规范,对用户密码加密。

2 Jboss数据源加密

2.1 生产加密串

1. 生产Jboss密码串

Jboss 服务器执行,生产目录 server 的上一级目录

/home/jboss/jboss-eap-4.3/jboss-as

2. 执行命令,生产加密串,同时修改对应的部署名称,黄色标注

[jboss@ssvttser01 jboss-as]$ java -cp lib/jboss-common.jar:lib/jboss-jmx.jar:server/uat8580/lib/jbosssx.jar:server/uat8580/lib/jboss-jca.jar org.jboss.resource.security.SecureIdentityLoginModule hS0DOQtw

Encoded password: 190fecaa7fc63e11df8592078de921bc

2.2 修改Jboss数据源

1. 停止Jboss服务

Ps –ef |grep java

Kill -9

2. 备份 oracle-ds.xml,修改oracle-ds.xml

数据源目录:

/home/jboss/jboss-eap-4.3/jboss-as/server/uat8680/deploy

  <local-tx-datasource>

    <jndi-name>platformDataSource</jndi-name>

    <connection-url>jdbc:oracle:thin:@10.1.1.2:1521:corevttdb</connection-url>  

    <use-java-context>false</use-java-context>

    <driver-class>oracle.jdbc.OracleDriver</driver-class>

<user-name>caicdj</user-name>

    <password>admin_yz</password>  <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>50</max-pool-size>

      <blocking-timeout-millis>5000</blocking-timeout-millis>

      <idle-timeout-minutes>5</idle-timeout-minutes>

      <metadata>

         <type-mapping>Oracle9i</type-mapping>

      </metadata>

  </local-tx-datasource>

我们把local-tx-datasource中的用户名和密码两个节点删除或注释,加个安全域<security-domain>EncryptDBPassword_1</security-domain>

安全域中的值任意,但要和login-config.xml 配置为中的值对应起来。

修改改好

<local-tx-datasource>

    <jndi-name>platformDataSource</jndi-name>

    <connection-url>jdbc:oracle:thin:@10.1.1.2:1521:corevttdb</connection-url>  

    <use-java-context>false</use-java-context>

    <driver-class>oracle.jdbc.OracleDriver</driver-class>

<security-domain>EncryptDBPassword_1</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>50</max-pool-size>

      <blocking-timeout-millis>5000</blocking-timeout-millis>

      <idle-timeout-minutes>5</idle-timeout-minutes>

      <metadata>

         <type-mapping>Oracle9i</type-mapping>

      </metadata>

  </local-tx-datasource>

3. 修改JBOSS的安全登录配置文,login-config.xml,其中application-policy name和安全域的值一样,修改用户,密码为Jboss加密串,第三个module-option 中的name 要和JNDI数据源中名称一致

文件目录:

/home/jboss/jboss-eap-4.3/jboss-as/server/uat8680/conf

<application-policy name = "EncryptDBPassword_1">  

     <authentication>  

         <login-module code="org.jboss.resource.security.SecureIdentityLoginModule" flag="required">  

             <module-option name="username">CAICDJ</module-option>  

             <module-option name="password">-42c13cf25f6db50d</module-option>  

             <module-option name="managedConnectionFactoryName">jboss.jca:name=platformDataSource,service=LocalTxCM</module-option>  

         </login-module>  

     </authentication>  

</application-policy>

备注:通常做法 oracle-ds.xml中安全域的名称,login-config.xmlapplication-policy name 的名称,还有module-option name 的名称设置的都一样,都和数据源中JNDI名称一样。

4. 启动Jboss服务器,查看日志是否报错

JBOSS数据源加密

标签:安全   名称   password   nec   服务   driver   size   new   ora   

原文地址:http://www.cnblogs.com/rencheng/p/6618653.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!