首页 > 解决方案 > 无法使用 Spring Boot 连接到 Key Vault

问题描述

我正在关注教程中的这一部分,以将密钥库与 Spring Boot 集成。

我们已经为使用托管标识(pom 中的 application.properties 和依赖项)进行了所有设置,并且由于它不在本地开发中运行,我正在通过部署对其进行测试,但是我在日志流中收到了这些错误:

java.io.FileNotFoundException:/home/tomcat/lib/azure.appservice.jar (No such file or directory)

java.lang.IllegalStateException: Failed to configure KeyVault property source

java.io.IOException: Server returned HTTP response code: 400 for URL: Http://xxx.xx.x.x.x

编辑:原来我在 client-id 属性中有一个拼写错误。

标签: javaspring-bootazure

解决方案


确保应用程序有权在密钥保管库的访问策略中获取和列出机密,并检查 jar 文件是否已正确添加。

编辑该src/main/resources/application.properties文件,使其具有以下内容,调整您的 Azure 订阅的值。c

azure.keyvault.client-id=<your client ID>
azure.keyvault.client-key=<your client key>
azure.keyvault.enabled=true
azure.keyvault.tenant-id=<your tenant ID>
azure.keyvault.uri=https://contosokv.vault.azure.net/

在此处输入图像描述

添加azure.keyvault.tenant-id=<your-tenant-id>文件后:

在此处输入图像描述

有关更多详细信息,请参阅此文档并遵循此Github代码


推荐阅读