赞
踩
一些比较重要的配置信息,比如密码之类的敏感配置,我们希望将配置加密存储,保证安全性。Apollo框架本身没有提供数据加密的功能,如果想要实现数据加密的功能有两种方式,第一种是改Apollo的源码,增加加解密的逻辑,第二种比较简单,基于第三方的框架来对数据进行解密。
jasypt-spring-boot是一个基于Spring Boot开发的框架,可以将properties中加密的内容自动解密,在Apollo中也可以借助于jasypt-spring-boot这个框架来实现数据的加解密操作。
jasypt-spring-boot GitHub地址:https://github.com/ulisesbocchio/jasypt-spring-boot
将我们需要加密的配置通过jasypt-spring-boot提供的方法进行加密,然后将加密的内容配置在Apollo中,当项目启动的时候,jasypt-spring-boot会将Apollo加密的配置进行解密,从而让使用者获取到解密之后的内容。
创建一个新的Maven项目,加入Apollo和jasypt的依赖:
- <dependency>
- <groupId>com.ctrip.framework.apollo</groupId>
- <artifactId>apollo-client</artifactId>
- <version>1.1.0</version>
- </dependency>
- <!--jasypt加密-->
- <dependency>
- <groupId>com.github.ulisesbocchio</groupId>
- <artifactId>jasypt-spring-boot-starter</artifactId>
- <version>1.16</version>
- </dependency>
加入下面的依赖信息:
- server.port=8081
- app.id=SampleApp
- apollo.meta=http://localhost:8080
- apollo.bootstrap.enabled=true
- apollo.bootstrap.namespaces=application
- jasypt.encryptor.password=yinjihaunkey
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。