使用Spring Cloud Vault时在应用初始化时出现禁止错误

问题描述

在Spring Boot 2.3.2中使用Spring Cloud HOXTON.SR6

启动服务时,尝试访问“ / secret / application”和“ / secret / application / {profile}”时出现403错误。这些路径中的“应用程序”应替换为我的应用程序名称

错误

[RequestedSecret [path='secret/application/{profile}’,mode=ROTATE]] Lease [leaseId='null',leaseDuration=PT0S,renewable=false] Status 403 Forbidden [secret/application/{profile}]: 1 error occurred: * permission denied ; nested exception is org.springframework.web.client.HttpClientErrorException$Forbidden: 403 Forbidden: [{"errors":["1 error occurred:\n\t* permission denied\n\n"]} ] org.springframework.vault.VaultException: Status 403 Forbidden [secret/application/{profile}]: 1 error occurred: * permission denied ; nested exception is org.springframework.web.client.HttpClientErrorException$Forbidden: 403 Forbidden: [{"errors":["1 error occurred:\n\t* permission denied\n\n"]} ]

如果我设置spring.cloud.vault.generic.enabled = false,替换将正常工作并且错误消失了。 问题在于此属性设置为弃用。那怎么回事呢?

错误出现在:

spring:
    cloud:
        vault:
            authentication: approle
            app-role:
                role-id: <<role-id>>
                secret-id: <<secret-id>>
            kv:
                enabled: true
                backend: secret
                application-name: <<application-name>>
                default-context: <<application-name>>
            host: <<vault-host>>

但现在不再使用:

spring:
    cloud:
        vault:
            authentication: approle
            app-role:
                role-id: <<role-id>>
                secret-id: <<secret-id>>
            kv:
                enabled: true
                backend: secret
                application-name: <<application-name>>
                default-context: <<application-name>>
            generic:
                enabled: false
            host: <<vault-host>>

我应该以不同的方式使用吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)