zoukankan      html  css  js  c++  java
  • Spring Cloud Config 服务端与 客户端之间的关系

    1、服务端有两个可配置项

    # 是否在服务器端进行解密操作,默认开启。
    # 如果改为不在服务器端开启(false)
    # 那么一定要将encrypt.key 删除。
    # 否则会出现客户端无法解密。
    # 为了安全性考虑,关闭服务器端解密功能
    spring:
      cloud:
        config:
          server:
            encrypt:
              enabled: false
    
    # 服务器端解密功能开启
    # 为了安全性考虑,关闭服务器端解密功能
    #encrypt:
    #  key: 12312321
    

      

      1.1 spring.cloud.config.server.encrypt.enable 此项配置代表是否在服务器端解密数据,默认为true。

      1.2 如果设置为true,且配置了 encrypt.key 则就可以在服务器端进行解密操作,如果没有encrypt.key 则加载时会报错。

        1.2.1 也有可能不报错,这要看是否在服务器启东时就加载远程配置文件(spring.cloud.config.server.clone-on-start),如果是则加载时就报错。

        1.2.2 也有可能没有配置启动就加载机制,则会等到使用到这个配置的时候进行远程配置的clone操作。

      1.3 如果是false,则将密文原封不动的发送给客户端,此时encrypt.key 可有可无,因为不在服务器端进行解密配置,所以可以不配置。

      1.4 如果要手动的加密一个明文,要开启 encrypt.key。curl -X POST http://localhost:8979/encrypt -d 待加密的明文

    2、客户端有一个配置项

    # 配置服务器地址
    spring:
      application:
        name: thunisoft-microservice-foo
      cloud:
        config:
          uri: http://localhost:8979/
          profile: dev
          label: master
    
    # 解密秘钥
    encrypt:
      key: 12312321
    

      2.1 如果服务器端配置了解密功能,已经在加载远程配置的时候,将加密的数据进行了解密操作,则客户端可以不做任何解密配置,可以直接使用。

      2.2 如果服务器没有进行解密操作,返回的是原始加密数据,则要配置秘钥,进行解密操作。

  • 相关阅读:
    树与堆
    Python基础
    python基础
    Flask基础知识
    其他(MySQL)
    发生错误:请确认您的电脑是否安装了excel软件,并且您的浏览器是否允许远行excel!具体操作请查阅帮助.
    idea启动项目,报java.lang.OutOfMemoryError: PermGen space 和启动项目很慢的问题解决
    安装jdk,tomcat,oracle,PL/SQL的一些问题
    linux下安装jdk8,nginx
    mybatic中xml新增一条数据获取自增id
  • 原文地址:https://www.cnblogs.com/hfultrastrong/p/8563483.html
Copyright © 2011-2022 走看看