使用c#实现获取Azure key vault的值功能代码

233 阅读1分钟
using Microsoft.Azure.KeyVault;
using Microsoft.IdentityModel.Clients.ActiveDirectory;

// Set up the Key Vault client
var keyVaultClient = new KeyVaultClient(new KeyVaultClient.AuthenticationCallback(GetToken));
var keyVaultUri = "https://{your-vault-name}.vault.azure.net";

// Get a secret from the Key Vault
var secret = await keyVaultClient.GetSecretAsync(keyVaultUri, "{secret-name}").ConfigureAwait(false);

// Use the secret value in your application
var secretValue = secret.Value;

// Helper function to get an access token
private static async Task<string> GetToken(string authority, string resource, string scope)
{
    var clientCredential = new ClientCredential("{client-id}", "{client-secret}");
    var authenticationContext = new AuthenticationContext(authority);
    var result = await authenticationContext.AcquireTokenAsync(resource, clientCredential).ConfigureAwait(false);
    return result.AccessToken;
}