频道栏目
首页 > 资讯 > 其他综合 > 正文

web项目中对properties配置文件的数据库密码加密

17-11-11        来源:[db:作者]  
收藏   我要投稿

背景:出于对项目安全方面的考虑,要求对properties中的有关数据库连接信息加密。本例中用了BASE64加密

首先:将数据库密码用BASE64加密,获得加密后的密文,比如”bG92ZTQzMQT==”,将该字符串写到properties相应位置。比如:
#连接池通用url配置
jdbc.url=jdbc:oracle:thin:@192.168.0.25:1521:orcl
jdbc.username=CROSS_INFO_BASE
jdbc.password=<>
第二步:重写PropertyPlaceholderConfigurer类
public class EncryptedPlaceholderConfigurer   extends PropertyPlaceholderConfigurer{

    public static final String PREFIX = "<<";

    @Override
    protected String convertPropertyValue(String originalValue) {
        if (originalValue.startsWith(PREFIX)) {
            logger.debug("Find encrypted value:" + originalValue);
            String jmStr=originalValue.substring(2,originalValue.length()-2);
            //解密
            String newValue =Base64.getFromBase64(jmStr);
            return newValue;
        }
        return originalValue;
    }

}
最后:修改spring配置文件即可。

    
        
            
                classpath*:config/jdbc.properties
                classpath*:config/hibernate.properties
                classpath*:config/redis.properties
            
        
    
相关TAG标签
上一篇:golang读取配置文件方法教程
下一篇:快速的制作tree型的目录结构图方法
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站