Аутентификация в Azure Key VaultC#

Место общения программистов C#
Anonymous
Аутентификация в Azure Key Vault

Сообщение Anonymous »

Мне кажется, у меня возникли трудности с пониманием аутентификации для общедоступных клиентских приложений, особенно в отношении хранилища ключей Azure.
Мне удалось написать немного кода на C#, который создает общедоступный клиентское приложение, зарегистрированное в Azure, и я могу пройти аутентификацию с помощью брокера и входа в свой домен Windows, чтобы получить токен oauth без необходимости предоставления пароля. Я успешно использовал этот токен oauth для вызова RESTful API для хранилища ключей и получил некоторые секреты. Я использовал RBAC для предоставления необходимых разрешений.
Однако я знаю, что для этого мне нужно использовать SecretClient. SecretClient требует учетные данные, но у меня есть токен oauth. Как создать учетные данные, использующие мой токен oauth?
Я играл с объектом DefaultAzureCredential, но мне удалось заставить его работать только с переменными среды (с помощью конфиденциальный клиент, а это мне не нужно) или с моими учетными данными Visual Studio. Тогда это не будет работать на тестовом ПК.
Буду очень признателен за любую помощь!
Ниже приведен пример кода, который я думал будет работать на компьютере, присоединенном к домену, где пользователь входит в систему со своим идентификатором Entra.
string tenantId = "";

DefaultAzureCredentialOptions options = new DefaultAzureCredentialOptions();
options.TenantId = tenantId;
options.ExcludeEnvironmentCredential = true;
DefaultAzureCredential credential = new DefaultAzureCredential(options);

SecretClient client = new SecretClient(new Uri("https://mykeyvault.vault.azure.net/"), credential);

string secretValue = client.GetSecret("mysecret").Value.Value;

MessageBox.Show(secretValue);


Подробнее здесь: https://stackoverflow.com/questions/781 ... -key-vault

Вернуться в «C#»