我已为我的 Azure Linux 服务器启用系统生成的托管服务标识,并且还授予此 VM 对 Key Vault 的访问权限。我已经通过在命令行上使用curl 检索 token 来验证这是有效的,然后使用该 token 从保管库中检索 secret 。
我需要在我的 Java 程序中执行相同的任务,但我当前正在执行的方法是阻塞。这是我从另一篇 Stackoverflow 帖子中摘录的代码:
LOGGER.debug("Getting credentials through Managed Service Identity");
AppServiceMSICredentials credentials = new AppServiceMSICredentials(AzureEnvironment.AZURE);
LOGGER.debug("Credentials acquired");
KeyVaultClient keyVaultClient = new KeyVaultClient(credentials);
LOGGER.debug("Key Vault client created");
尝试获取凭据的线路上的代码块,因此我在日志中看到的只是“通过托管服务身份获取凭据”。
这是获取凭据的正确方法吗? 如果是这样,知道为什么这条线被阻塞吗?
最佳答案
关于Azure Java 程序在尝试检索托管服务标识凭据时被阻止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54131845/