代码之家  ›  专栏  ›  技术社区  ›  springbootlearner

春季启动2.7.0中的加密密钥属性绑定错误

  •  0
  • springbootlearner  · 技术社区  · 3 年前

    我有一个Spring引导2.7.0应用程序,它将配置服务器和以下配置连接起来,以解密机密。但当我在(application.yml或bootstrap.yml)中包含以下配置时,会出现绑定错误。不确定这个问题的根本原因是什么,因为密钥的格式是正确的,但仍然会出现这个错误。同样的配置也适用于Spring boot 2.2.1。

    我在没有bootstrap.yml的application.yml中使用了与2.7.0中相同的配置,但仍然存在相同的问题。

    encrypt:
      key-store:
        location: file:${key.path}
        password: anthem$$docker
        alias: docker
        secret: anthem$$docker
    
    
    org.springframework.boot.context.properties.bind.BindException: Failed to bind properties under 'encrypt.key-store.alias' to java.lang.String
        at org.springframework.boot.context.properties.bind.Binder.handleBindError(Binder.java:384)
        at org.springframework.boot.context.properties.bind.Binder.bind(Binder.java:344)
        at org.springframework.boot.context.properties.bind.Binder.lambda$bindDataObject$4(Binder.java:469)
        at org.springframework.boot.context.properties.bind.Binder$$Lambda$78/234145890.bindProperty(Unknown Source)
        at org.springframework.boot.context.properties.bind.JavaBeanBinder.bind(JavaBeanBinder.java:95)
        at org.springframework.boot.context.properties.bind.JavaBeanBinder.bind(JavaBeanBinder.java:83)
        at org.springframework.boot.context.properties.bind.JavaBeanBinder.bind(JavaBeanBinder.java:59)
        at org.springframework.boot.context.properties.bind.Binder.lambda$bindDataObject$5(Binder.java:473)
    
    
    Description:
    
    Failed to bind properties under 'encrypt.key-store.alias' to java.lang.String:
    
        Property: encrypt.key-store.alias
        Value: docker
        Origin: class path resource [bootstrap.yml] - 40:12
        Reason: org.springframework.boot.context.config.InactiveConfigDataAccessException: Inactive property source 'Config resource 'class path resource [bootstrap.yml]' via location 'optional:classpath:/' (document #5)' imported from location 'class path resource [bootstrap.yml]' cannot contain property 'encrypt.key-store.alias' [origin: class path resource [bootstrap.yml] - 40:12]
    
    Action:
    
    Update your application's configuration
    
    
    0 回复  |  直到 3 年前