zoukankan      html  css  js  c++  java
  • SpringCloud Config对配置的加密解密用法

    1. Java8自带无限制加密解密算法, 不需要再引入网上说的那俩包

    2. 加密解密是SpringCloud Config的功能, 所以必须先启动一个SCC项目

    3. 在SCC项目的配置文件中添加加密解密的钥匙: 密钥----> encrypt.key=xuejian

    4. 启动SCC项目,通过http://localhost:port/encrypt/status检查加密解密功能是否能用,如果能用,会返回OK,否则会返回一个不能用的提示

    5. 启动一个使用SpringCloud Config配置的普通微服务,在bootstrap.properties中添加连接配置中心和目标配置的属性

    红色是SpringCloud Config进行解密的标志,蓝色是要解密的密文,绿色是密钥(这个密钥在SCC项目和普通微服务项目都必须配置)

    spring.application.name=appForClient
    spring.cloud.config.uri=http://localhost:2000
    spring.cloud.config.label=dev
    spring.cloud.config.profile={cipher}dc945ee51bcd7ea4135a256df7fc0149f47fd6cd83aa53f2cba43c1b063a1230
    encrypt.key=xuejian

    如何获取密文呢?

    启动SCC项目后, 通过http://localhost:port/encrypt请求对明文加密即可获取

    获取后将"{cipher}+密文"替换明文即可

    当启动普通微服务时, 微服务首先会根据自身配置的密钥去解析自身配置的密文, 然后通过解析得到的明文配置连接到配置中心(即普通微服务也可以根据密钥解密)

    当从配置中心加载到的配置中也有密文时,此时需要SCC配置的密钥去解密

    由上可知: 普通微服务和配置中心项目都可以进行解密加密, 但要将明文转为密文,必须由配置中心来搞.

    综上:

    在加密解密功能上,配置中心与普通微服务的区别:

    相同点: 都可以根据密钥解密配置(解密功能)

    不同点: 配置中心还可以根据不同密钥为同一明文生成不同密文(转换功能)

  • 相关阅读:
    golang 使用 os/exec
    golang调用 exec命令 出现too many open files
    nginx: [error] invalid PID number “” in “/usr/local/var/run/nginx/nginx.pid”
    Docker 实时查看docker容器日志
    curl 查看HTTP 响应头信息
    go -- go 程序 启动docker容器
    go -- 测试
    Linux /var/log下各种日志文件
    LDAP -- ldap 的cn, ou, dc的含义
    一条命令 杀死某个端口 所有程序
  • 原文地址:https://www.cnblogs.com/wangxuejian/p/13568586.html
Copyright © 2011-2022 走看看