Я создаю приложение, которое подключается к Azure keyvault для извлечения его секретов с использованием идентификатора управляемой службы.
Я пытался соединиться с keyvault, не используя управляемые удостоверения, и это работало, но с MSI я не могу соединиться.
Несколько вещей, которые я пробовал:
1) Время ожидания этого фрагмента кода:
MSICredentials credentials = new MSICredentials(AzureEnvironment.AZURE);
log.debug("Credentials acquired");
KeyVaultClient keyVaultClient = new KeyVaultClient(credentials);
log.debug("Key Vault client created");
String secret =
keyVaultClient.getSecret("https://<key-vault-name>.vault.azure.net/",
"<secret-name>").value();
2) Этот фрагмент кода выдает ошибку в первой строке, говоря, что конечная точка == ноль. что, глядя на библиотеку, означает, что мне нужно предоставить MSI_ENDPOINT, что я не уверен, что это такое.
AppServiceMSICredentials credentials =
new AppServiceMSICredentials(AzureEnvironment.AZURE);
log.debug("Credentials acquired");
KeyVaultClient keyVaultClient = new KeyVaultClient(credentials);
log.debug("Key Vault client created");
String secret =
keyVaultClient.getSecret("https://<key-vault-name>.vault.azure.net/",
"<secret-name>").value();
Любая помощь с этим приветствуется.