WEB开发网
开发学院WEB开发Jsp JBoss下数据源密码加密 阅读

JBoss下数据源密码加密

 2008-01-05 08:24:37 来源:WEB开发网   
核心提示: 1.先来看一个普通的数据源配置文件 代码<?xml version="1.0" encoding=&quo

   1.先来看一个普通的数据源配置文件
代码

  1. <?xml version="1.0" encoding="UTF-8"?> 
  2. <datasources> 
  3.  <local-tx-datasource> 
  4.   <jndi-name>MySQLDS</jndi-name>  //jndi名字  
  5.   <use-java-context>false</use-java-context> 
  6.   <connection-url>jdbc:mysql://10.16.175.137:3306/test</connection-url> //URL地址  
  7.   <driver-class>com.mysql.jdbc.Driver</driver-class> //驱动  
  8.   <user-name>root</user-name>  //用户名   
  9.   <passWord>123456</password> //密码  
  10.   <exception-sorter-class-name> 
  11.     org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter  
  12.     </exception-sorter-class-name> 
  13.    <metadata> 
  14.     <type-mapping>mySQL</type-mapping> 
  15.   </metadata> 
  16.  </local-tx-datasource> 
  17. </datasources> 

   看一下这个文件,里面用户名与密码都是以明文方式存储的,这样子对系统的安全而言带来了极大的威协。所以我们要为我们这个明文的密码加一下密,这就是本文的目的.
   2.说到密码加密,这里我们用到了JBoss下的一个类org.jboss.resource.security.SedureIdentityLoginModule,看看我们该如何用它来帮我们的密码加密。

先看个配置数据源的例子(mysql-ds.xml):

代码

  1. <?xml version="1.0" encoding="UTF-8"?> 
  2. <datasources>   
  3.  <local-tx-datasource> 
  4.   <jndi-name>MySqlDS</jndi-name>    
  5.   <use-java-context>false</use-java-context> 
  6.   <connection-url>jdbc:mysql://192.168.1.91:3306/atteam</connection-url> 
  7.   <driver-class>com.mysql.jdbc.Driver</driver-class> 
  8.   <security-domain>EncryptDBPassword</security-domain>//这里不用写上你的用户名与密码了,我们可以在login-config.xml里做点手脚,就OK了  
  9.   <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name> 
  10.   <metadata> 
  11.     <type-mapping>mySQL</type-mapping> 
  12.   </metadata> 
  13.  </local-tx-datasource> 
  14. </datasources> 


Tags:JBoss 数据源 密码

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接