使用jboss JNDI方式加密数据库连接密码

                    使用jboss JNDI方式加密数据库连接密码

部门由于进行安全检查,需要对数据库连接明文密码进行加密,具体操作过程编写了文档。

1.创建Jboss module(配置dameng数据库后者oracle、mysql等数据库连接中间件)

  • 创建module目录 

   在${jboss_home}\modules\目录下新建com\dameng\main目录

  •    创建module.xml文件,文件内容为:

2.将dameng jdbc支持包拷贝到{jboss_home}\modules\目录下新建com\dameng\main目录下

3. 修改jboss standalone.xml

  • 配置数据库驱动

  Module属性注意与上述配置的moudule.xml中的name属性一致

  • 生成datasource

  在datasources标签下增加datasource标签:

注意jndi-name将在spring-jndi方式配置数据库时作为jndi name属性使用,在pool标签下可以配置数据库连接池的内容,在security标签下配置数据库的用户名和连接的密码,后续进行加密。

4、加密连接密码

  • 使用工具加密密码

  Windows下:

   Java -cp F:\jboss\jboss-as-sheng\modules\org\picketbox\main\picketbox-4.0.7.Final.jar;F:\jboss\jboss-as-sheng\modules\org\jboss\logging\main\jboss-logging-3.1.0.GA.jar  org.picketbox.datasource.security.SecureIdentityLoginModule lcwkd123123

  linux下:

java -cp F:\jboss\jboss-as-sheng\modules\org\picketbox\main\picketbox-4.0.7.Final.jar;F:\jboss\jboss-as-sheng\modules\org\jboss\logging\main\jboss-logging-3.1.0.GA.jar  org.picketbox.datasource.security.SecureIdentityLoginModule lcwkd123123

使用jboss自带的pickebox下的SecureIdentityLoginModule类进行加密,它采用的时blowfish的加密算法,属于对称加密的一种(没有公、私钥)。注意运行路径的正确,windows下与linux下的命令分隔符不同,windows下是“;”,而linux下是“:”。加密的后的密文为:30a64b3a67e66f00d0cbc8eed84e75f5,该密文可重复多次使用,密文的生成与加密密码和加密的路径等相关。

5.增加密码安全认证选项

在<security-domains>标签下新增security-domain子标签

再进行将明文密码进行替换

这样jboss进行读取jndi会将加密过的密文进行正确的解密,以生成datesource。

6.使用Spring Jndi 方式生成datasource

修改spring-context.xml下的

其中jndiname为以上在standalone.xml中配置的datasource标签中的jndi-name,对应起来。

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值