paulwong

          JBoss下DataSource加密(下)

          數據源文件:my-oracle-ds.xml

          <datasources>
              
          <local-tx-datasource>
                  
          <jndi-name>jdbc/my-local</jndi-name>
                  <connection-url>
                      jdbc:oracle:thin:@10.5.7.30:1521:orcl
                  
          </connection-url>
                  
          <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
                  <security-domain>EncryptedOracleDbRealm</security-domain>
                  
          <exception-sorter-class-name>
                      org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter
                  
          </exception-sorter-class-name>
                  
          <metadata>
                      
          <type-mapping>Oracle10g</type-mapping>
                  
          </metadata>
                  
          <depends>
                      jboss.security:service=JaasSecurityDomain,domain=ServerMasterPassword
                  
          </depends>
              
          </local-tx-datasource>



              
          <mbean code="org.jboss.security.plugins.JaasSecurityDomain"
                  name
          ="jboss.security:service=JaasSecurityDomain,domain=ServerMasterPassword">
                  
          <constructor>
                      
          <arg type="java.lang.String" value="ServerMasterPassword"></arg>
                  
          </constructor>
                  
          <!-- The opaque master password file used to decrypt the encrypted
                      database password key 
          -->
                  
          <attribute name="KeyStorePass">
                      {CLASS}org.jboss.security.plugins.FilePassword:${jboss.server.home.dir}/conf/server.password
                  
          </attribute>
                  
          <attribute name="Salt">abcdefgh</attribute>
                  
          <attribute name="IterationCount">13</attribute>
              
          </mbean>

          </datasources>

          在jboss4.3/jboss-as/server/default/conf/login-config.xml中增加節點:

          <application-policy name="EncryptedOracleDbRealm">
              
          <authentication>
                  
          <login-module
                      
          code="org.jboss.resource.security.JaasSecurityDomainIdentityLoginModule"
                      flag
          ="required">
                      
          <module-option name="username">username</module-option>
                      
          <module-option name="password">
                          3wW33nIpavHK4pd3qoNTbA
                      
          </module-option>
                      
          <module-option name="managedConnectionFactoryName">
                          jboss.jca:service=LocalTxCM,name=jdbc/my-local
                      
          </module-option>
                      
          <module-option name="jaasSecurityDomain">
                          jboss.security:service=JaasSecurityDomain,domain=ServerMasterPassword
                      
          </module-option>
                  
          </login-module>
              
          </authentication>
          </application-policy>

          以上的password由下面命令得出:

          E:\JBOSS\jboss4.3\jboss-as\server\default\lib>java -cp jbosssx.jar
          org.jboss.security.plugins.PBEUtils abcdefgh 
          13 master mypassowrd
          Encoded password:  2mqrIBSpp8JVWFAqCBklhf

          生成server.password文件:

          E:\JBOSS\jboss4.3\jboss-as\server\default\lib>java -cp jbosssx.jar
          org.jboss.security.plugins.FilePassword abcdefgh 
          13 master server.password

          產生后拷貝到:${jboss.server.home.dir}/conf中。

          posted on 2012-01-16 18:58 paulwong 閱讀(945) 評論(0)  編輯  收藏 所屬分類: JBOSS

          主站蜘蛛池模板: 五家渠市| 珲春市| 文山县| 牙克石市| 武鸣县| 龙岩市| 长乐市| 秀山| 偃师市| 南投市| 苏州市| 永城市| 志丹县| 江达县| 右玉县| 靖宇县| 太和县| 南陵县| 星子县| 鸡泽县| 体育| 子洲县| 博爱县| 灯塔市| 扶余县| 斗六市| 神农架林区| 巴中市| 淅川县| 威宁| 常州市| 凯里市| 松原市| 陇南市| 平度市| 盐亭县| 丰原市| 南京市| 十堰市| 南乐县| 龙口市|