spring cloud 保护敏感信息

3.3 保护敏感信息

 

3.3.1 下载和安装加密需要的oracle jce 包

 

  1. 找到$JAVA_HOME/jre/lib/security目录,将local_policy.jar和US_export_policy.jar  备份。
  2. 下载jce,因为我是jdk8所以下载地址为:https://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html
  3. 将新下载的jce包中local_policy.jar和US_export_policy.jar拷贝到$JAVA_HOME/jre/lib/security目录。

3.3.2 生成秘钥

使用jdk自带的keytool工具生成秘钥:

keytool -genkeypair  -alias myusecurity -keyalg RSA  -keypass password -sigalg SHA256withRSA -dname "cn=gx,ou=si,o=unicom.si,l=Beijing,st=Beijing,c=CN" -validity 3650 -keystore myuKeyStore.jks -storetype JKS -storepass password

 

3.3.3 配置spring cloud config server 使用加密

 

1.将生成的秘钥粘贴到src/main/resources下

 

2.新加配置文件bootstrap.yml(属性值要和cmd秘钥中配置的一样)

encrypt:

  key-store:

    location: classpath:/myuKeyStore.jks  # server.jks的配置文件的路径

    alias: myusecurity #和上步骤中的alias 一样

    password: password # 设置store的密码

secret: password  # keypass密码

 

3.在application.properties中添加encrypt.key=key1

 

4.启动服务,使用post请求生成一个密文

比如想要将“lcchao”转换成密文,执行curl -X POST http://localhost:8887/encrypt -d lcchao

 

5.将生成的密文配置到git 对应的属性上(注意必须加上 {cipher}

 

foo = {cipher}AQBh6y70+pRaN8DjxeOVJ2o53LN9aILhTuFKCXhJe2sEX+GRtzT7EouMtayU/tIE0VI6JSuOyD2f2s4xCMkGnd1FLL4OO2KaFVsPa/49IeHpjzaZo/WQHMVIYk4M63dmucYszkDA+A38EqTPyRwaGA+g1WDfGAO9dJ1GysUyyep9bt30nLCY83LGRokXj0yHDUUt0WJGoxb2L/h4xSHM5jDq7VTrgRXKU+On2hMMTUf8M8Y2ciel7pRn+O69AoUxdspyQBfMDo2ObT0DzB6cLvzUk9ZVbzO260SHfWWFIdrTUlOZy3vmk+6TqGiDdNNT6MNMll2B7gNkdZvLAHsYz8Z2BtJ+IzpjT4nkQeRkPbGpIM03vOC1qq073CmEIexnSg0=

注意:

  1. Spring cloud config服务器要求所有的加密属性都以{cipher}为前缀。{cipher}告诉服务器,它将处理一个加密值
  2. Decrypt是解密

 

测试,启动spring cloud config 客户端

源码:https://github.com/liucc0413/SpringCloudConfig/tree/master

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值