浏览 4006 次
锁定老帖子 主题:jasypt 加密
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (5)
|
|
---|---|
作者 | 正文 |
发表时间:2010-01-26
1和spring集成 项目里用jaspyt加密配置文件 jdbc.jdbcUrl=ENC(ArpbERYHS8RIwj+Fzzv5gjgG8fv7XVZ0sWjKTesxtj9zfq4og60WOOdT8TN9mTfR) jdbc.user=ENC(q6JdHTd3GBiu7e5Rlw5Bf7xq/fuw2wr4) jdbc.password=ENC(sQcoqbJ3XoYLai8Mmox+wVJx3EwjzIDV) jdbc.driverClass=ENC(zyoA7GhJiAmu+hcyUhXNQ6x/b7wxq4+EAu8HtEegmwrXQu5c0F7xlA\=\=) 这个是使用jaspye加密后的配置文件,加密时使用了加密的密匙。 在使用eclipse开发的时候,可以设置密匙在工具里面。在debug configuations里面,有个环境变量。 和spring集成。 <bean id="environmentVariablesConfiguration" class="org.jasypt.encryption.pbe.config.EnvironmentStringPBEConfig"> <property name="algorithm" value="PBEWithMD5AndDES" /> <property name="passwordEnvName" value="APP_ENCRYPTION_PASSWORD" /> </bean> <bean id="configurationEncryptor" class="org.jasypt.encryption.pbe.StandardPBEStringEncryptor"> <property name="config" ref="environmentVariablesConfiguration" /> </bean> 在容器启动的时候,spring会自动去找名为 APP_ENCRYPTION_PASSWORD 的环境变量的值,由此解密 2单独的java agent使用,首先是使用jaspyt生成一个properties
jdbc.jdbcUrl=ENC(p2Bv9IkUR/gwL/4SztpovQ\=\=) jdbc.user=ENC(vqtiKD4TKYb5NvkmJ4JBlg\=\=) jdbc.password=ENC(o3828nhMYbmzmbRQSCW5KA\=\=) jdbc.driverClass=ENC(Zn2oI0UuF0uWvpey+07emA\=\=) java核心代码 public Properties getProperties(StandardPBEStringEncryptor encryptor) throws IOException { InputStream in = this.getClass().getClassLoader().getResourceAsStream( "system.properties"); Properties p =new EncryptableProperties(encryptor); p.load(in); return p; } StandardPBEStringEncryptor encryptor = new StandardPBEStringEncryptor(); encryptor.setPassword("123"); Properties p = new ReadProperties().getProperties(encryptor); String pass = p.getProperty("jdbc.password"); System.out.println(pass); 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |