Spring Cloud Config 对配置内容加密

简介

一般在spring boot 项目中, 我们会写一个AES 加密的类, 并把加密解密的key写在项目或配置文件中。

但 spring cloud config已经集成了这个功能。

两种加密策略

对称加密

所谓对称加密就是, 加密和解密都只用1个相同的key, 所以对key的保护很重要.

非对称加密

解密者先生成1对key pair, 把public key交给加密者用于加密, 自己留着private key进行解密。 暴露public key问题不大, 但是暴露private key还是危险的。

本文主要介绍Spring Cloud config 的对称加密

检查加密环境

启动 config server后
http://localhost:8888/encrypt/status

在这里插入图片描述
如果见到上面的信息代表加密环境是冇问题的。 只不过未指定策略

如果见到 No key was isntalled for encryption service… 代表不ok, 清换个高版本的JDK再试

在config server的配置文件中配置Key

这个key是对称加密的key
必须配置在bootstrap.yml中

encrypt:
  key: loveatiamd

重启config server, 再检查 http://localhost:8888/encrypt/status
ok了
在这里插入图片描述

利用接口加解密

利用config server接口加密。

curl http://localhost:8888/encrypt -d password

利用config server接口解密密。

curl http://localhost:8888/decrypt -d encrypted_password

修改配置文件

把密文写入配置文件.

password: '{cipher}323e2265acd321eaec76a88bfa710f5f3673c58f8e6e1bbe2944f08b9518ac0c'

重启测试

如果你用mysql, 有可能会遇到
Public Key Retrieval is not allowed

的错误。

这是必须在mysql的url加上
&allowPublicKeyRetrieval=true

相信问题会解决

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

nvd11

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值