新聞中心
本文講述的是如何對Hibernate.cfg.xml中的用戶名和密碼進行加密,想必你一定對此很感興趣。下面是詳細的的介紹。

創(chuàng)新互聯(lián)長期為上1000+客戶提供的網(wǎng)站建設服務,團隊從業(yè)經(jīng)驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為興安企業(yè)提供專業(yè)的網(wǎng)站制作、網(wǎng)站設計,興安網(wǎng)站改版等技術服務。擁有10余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
如果在Hibernate.cfg.xml配置的用戶名和密碼配置如下:
sa 123
那怎么感覺都有點不爽,因為如果這樣數(shù)據(jù)庫的用戶名和密碼一下就給別人知道了,有極大的安全隱患,特別是金融系統(tǒng)中,這樣的配置更應該避免。
我這里采用對Hibernate的源碼進行修改的方式(當然這里的源碼最好是和用戶當前使用的Hibernate版本相一致,免得到時又引起版本不同的問題),以起到對連接的用戶名和密碼進行加密碼的方式,修改右如下:
c92b81768388f76d 1f65866187612115
準備一個Encode.java,該JAVA實現(xiàn)加密encode和解密方法decode,加密和解密是配對的,先用其加密方法encode對其加密處理,用戶名和密碼就成了上面的方式,將Encode.java放到org.hibernate.util包下,在類org.hibernate.connection.DriverManagerConnectionProvider的configure方法中,先加上對用戶名和密碼解密的程序,,加到該方法的最上面,如下:
- public void configure(Properties props) throws HibernateException {
- String user = props.getProperty(Environment.USER);
- String password = props.getProperty(Environment.PASS);
- try {
- //對用戶名進行解密
- props.setProperty(Environment.USER, Encode.decode(user));
- //對密碼進行解密
- props.setProperty(Environment.PASS, Encode.decode(password));
- } catch (Exception e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- }
- //...
- }
這里在后面的處理之前,先解密,就達到了加密解密的效果,再打包發(fā)布就OK了。就這么簡單,想必你已經(jīng)學會了如何對Hibernate.cfg.xml中的用戶名和密碼進行加密了,自己試一試吧。
網(wǎng)頁題目:如何對Hibernate.cfg.xml中的用戶名和密碼進行加密
URL標題:http://www.5511xx.com/article/dhicggp.html


咨詢
建站咨詢
