如何对Hibernate.cfg.xml中的用户名和密码进行加密

本文讲述的是如何对Hibernate.cfg.xml中的用户名和密码进行加密,想必你一定对此很感兴趣。下面是详细的的介绍。

创新互联长期为上1000+客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为兴安企业提供专业的网站制作、网站设计兴安网站改版等技术服务。拥有10余年丰富建站经验和众多成功案例,为您定制开发。

如果在Hibernate.cfg.xml配置的用户名和密码配置如下:

 
 
 
  1. sa
  2. 123

那怎么感觉都有点不爽,因为如果这样数据库的用户名和密码一下就给别人知道了,有极大的安全隐患,特别是金融系统中,这样的配置更应该避免。

我这里采用对Hibernate的源码进行修改的方式(当然这里的源码最好是和用户当前使用的Hibernate版本相一致,免得到时又引起版本不同的问题),以起到对连接的用户名和密码进行加密码的方式,修改右如下:

 
 
 
  1. c92b81768388f76d
  2. 1f65866187612115

准备一个Encode.java,该JAVA实现加密encode和解密方法decode,加密和解密是配对的,先用其加密方法encode对其加密处理,用户名和密码就成了上面的方式,将Encode.java放到org.hibernate.util包下,在类org.hibernate.connection.DriverManagerConnectionProvider的configure方法中,先加上对用户名和密码解密的程序,,加到该方法的最上面,如下:

 
 
 
  1. public void configure(Properties props) throws HibernateException {
  2. String user = props.getProperty(Environment.USER); 
  3.          String password = props.getProperty(Environment.PASS); 
  4.         try {
  5.          //对用户名进行解密
  6. props.setProperty(Environment.USER, Encode.decode(user));
  7.          //对密码进行解密
  8. props.setProperty(Environment.PASS, Encode.decode(password)); 
  9. } catch (Exception e1) {
  10. // TODO Auto-generated catch block
  11. e1.printStackTrace();
  12. //...
  13. }

这里在后面的处理之前,先解密,就达到了加密解密的效果,再打包发布就OK了。就这么简单,想必你已经学会了如何对Hibernate.cfg.xml中的用户名和密码进行加密了,自己试一试吧。

网页标题:如何对Hibernate.cfg.xml中的用户名和密码进行加密
网站链接:http://www.shufengxianlan.com/qtweb/news26/255876.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联