【发布时间】:2020-09-07 04:37:57
【问题描述】:
我在使用 2.3.3 版本的 azure-keyvault-secrets-spring-boot-starter 时遇到问题。
application.properties
azure.keyvault.uri=...........
azure.keyvault.enabled=true
azure.client-id=........
azure.client-key=.......
10:00:47.863 [main] ERROR org.springframework.boot.SpringApplication - Application run failed
java.lang.IllegalStateException: Failed to configure KeyVault property source
at com.microsoft.azure.keyvault.spring.KeyVaultEnvironmentPostProcessorHelper.addKeyVaultPropertySource(KeyVaultEnvironmentPostProcessorHelper.java:110)
at com.microsoft.azure.keyvault.spring.KeyVaultEnvironmentPostProcessor.postProcessEnvironment(KeyVaultEnvironmentPostProcessor.java:47)
at org.springframework.boot.context.config.ConfigFileApplicationListener.onApplicationEnvironmentPreparedEvent(ConfigFileApplicationListener.java:200)
at org.springframework.boot.context.config.ConfigFileApplicationListener.onApplicationEvent(ConfigFileApplicationListener.java:188)
at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:127)
【问题讨论】:
-
GitHub 上报告了一个问题 - github.com/microsoft/azure-spring-boot/issues/621。这是解决方案 - github.com/microsoft/azure-spring-boot/tree/release/2.3.2/… 让我知道这是否适合您,我会将其发布为答案。
-
您是否为 Azure 密钥库中的广告应用程序配置了权限访问策略?
-
尝试在application.properties中添加
azure.keyvault.tenant-id=<your-tenant-id>。详情请见here。 -
谢谢,现在已经解决了,添加了tenant-id和其他配置,比如azure.keyvault.tenant-id=............ azure.keyvault.token-acquire -timeout-seconds=60 azure.keyvault.refresh-interval=1800000
-
@Jayashree,以上链接 (github.com/microsoft/azure-spring-boot/tree/release/2.3.2/…) 对您有帮助吗?
标签: azure spring-boot azure-keyvault