美文网首页
Spring Cloud Config—密钥管理

Spring Cloud Config—密钥管理

作者: 嘻嘻哈哈1155 | 来源:发表于2018-02-27 14:00 被阅读0次

    Config Server可以使用对称(共享)密钥或非对称密钥(RSA密钥对)。非对称选择在安全性方面是优越的,但是使用对称密钥往往更方便,因为它只是配置的一个属性值。

    要配置对称密钥,您只需要将encrypt.key设置为一个秘密字符串(或使用环境变量ENCRYPT_KEY将其从纯文本配置文件中删除)。

    要配置非对称密钥,您可以将密钥设置为PEM编码的文本值(encrypt.key),也可以通过密钥库设置密钥(例如由JDK附带的keytool实用程序创建)。密钥库属性为encrypt.keyStore.*,*等于

    location(aResource位置),

    password(解锁密钥库)和

    alias(以识别商店中使用的密钥)。

    使用公钥进行加密,需要私钥进行解密。因此,原则上您只能在服务器中配置公钥,如果您只想进行加密(并准备使用私钥本地解密值)。实际上,您可能不想这样做,因为它围绕所有客户端传播密钥管理流程,而不是将其集中在服务器中。另一方面,如果您的配置服务器真的相对不安全,并且只有少数客户端需要加密的属性,这是一个有用的选项。

    创建用于测试的密钥库

    要创建一个密钥库进行测试,您可以执行以下操作:

    $ keytool -genkeypair -alias mytestkey -keyalg RSA \

      -dname "CN=Web Server,OU=Unit,O=Organization,L=City,S=State,C=US" \

      -keypass changeme -keystore server.jks -storepass letmein

    将server.jks文件放在类路径(例如)中,然后在您的application.yml中配置服务器:

    encrypt:

      keyStore:

        location: classpath:/server.jks

        password: letmein

        alias: mytestkey

        secret: changeme

    源码来源

    相关文章

      网友评论

          本文标题:Spring Cloud Config—密钥管理

          本文链接:https://www.haomeiwen.com/subject/bczpxftx.html