在使用vue开发过程中,难免需要去本地数据地址进行请求,而原版配置在dev-server.js中,新版vue-webpack-template已经删除dev-server.js,改用webpack.d
顺晟科技
2021-06-16 10:42:44
325
最近在学习春云,准备在项目中使用。不能简单地把Spring Cloud看成一个框架,而应该看成是一个微服务的整体解决方案。它集成了很多的框架,比如Spring Boot和网飞,很多组件都是开箱即用的。正是因为集成了这么多框架,所以版本不稳定。即使是SR版也有一些问题。即使上一个版本没有问题,这个版本也有问题。
由于配置内容可能涉及到一些敏感信息,我们可以简单地在Spring Cloud Config中使用非对称加密,实现敏感信息的安全存储。但是在使用的过程中,出现了一些奇妙的问题,无论是官方文件,还是一些大神的博文,都没有得到明确的解决。
当然这个问题和我的配置有关,可能很多人都没有遇到过。在这里描述问题。万一有人和我配置一样,有问题,可以帮别人节省一些时间。
1.正确体位
Spring Cloud Config的非对称加密可以使用RSA加密方法,通过JDK的密钥工具产生密钥对,对敏感信息进行加密和解密。
生产密钥对:
keytool-gen keypair-alias my testkey-keyalg RSA-dname ' CN=Web Server,OU=China,O=www.howardliu.cn,L=Beijing,S=Beijing,C=China '-key pass changeme-keystore config-service . jks-store pass letmein
将生成的密钥库文件复制到src/main/resources目录,然后在配置文件bootstrap.yml:
encrypt:
key-store:
location : class path :/config-service . jks
alias: mytestkey
password: letmein
secret: changeme
以下配置被添加到pom.xml:
建设
资源
资源
目录rc/main/resources/directory
过滤规则/过滤
排除
排除**/*。jks/排除
/排除
/resource
资源
目录rc/main/resources/directory
过滤液体/过滤
包含
包括**/*。jks/包括
/包括
/resource
/资源
/build
然后启动应用程序,通过访问http://localhost 33608888/encrypt/status返回{'status':'OK'},表示配置正确。通过这种用法,您可以通过访问两个端点/加密和解密来加密和解密指定的信息。
本项目代码在https://github.com/Howard Liu-cn/spring-learning/tree/master/micro-service/config-service。
2.姿势不对
刚开始学习的时候没有上面那么顺利,遇到了一些问题。
2.1 encrypt.key-store。*由配置位置导致的加密信息不会被解密
开始时,加密。密钥存储。*是在application.yml中配置的,此时,通过访问http://localhost :8888/encrypt/status返回{'status':'OK'}。原本以为配置成功,但是当客户端获得加密信息后,返回的结果并没有解密,而是去掉了{cipher}。
此错误相对容易排除。Spring Cloud的主要配置文件是application.yml和bootstrap.yml,因为Spring Cloud Config的配置信息需要放在客户端的bootstrap.yml中,所以加密. ke
29
2021-08
28
2021-08
16
2021-06
16
2021-06
16
2021-06
16
2021-06