Команда, в которой я работаю, занимается отладкой будущих проектов в коде Visual Studio. Мы настроили отладчик для работы с нашим проектом. Проект использует хранилище ключей Azure для наших секретов приложений. Проблема заключается в том, что наш запуск прерывается, когда отладчик пытается передать часть кода Azure KeyVault и возвращает:
Произошло исключение: CLR / Microsoft.Azure.Services.AppAuthentication.AzureServiceTokenProviderException
В Visual Studio я вошел в систему с моей учетной записью, и во время отладки Visual Studio может извлечь маркер доступа из моей учетной записи.
Я пытался войти в систему с помощью расширения кода Visual Studio для учетной записи Azure, прежде чем пытаться запустить отладку. но он возвращает то же исключение, даже когда я вошел в систему.
Мой код для получения Azure KeyVault выглядит следующим образом:
AzureServiceTokenProvider azureServiceTokenProvider = new AzureServiceTokenProvider();
KeyVaultClient keyVaultClient = new KeyVaultClient(new KeyVaultClient.AuthenticationCallback(azureServiceTokenProvider.KeyVaultTokenCallback));
AzureADAppSettings azureADAppSettings = Configuration.GetSection("Authentication").GetSection("AzureAd").Get<AzureADAppSettings>();
if (azureADAppSettings.ApplicationSecret.StartsWith("https://"))
azureADAppSettings.ApplicationSecret = keyVaultClient.GetSecretAsync(azureADAppSettings.ApplicationSecret).GetAwaiter().GetResult().Value;
Я ожидал, что учетная запись Azure позволит мне использоватьAzure KeyVault так же, как и в Visual Studio.
Вместо этого код разбивается на исключения.
Может кто-нибудь сказать мне, что я делаю неправильно?