生成带有版本的 Azure KeyVault SecretIdentifier (Url)

Generate Azure KeyVault SecretIdentifier (Url) with Version

我们正在 Azure Key Vault 中动态创建机密,现在我们想要获取带有版本的机密标识符/Uri,以便可以检索机密?

是否有生成秘密标识符的内置方法或简单方法?主要是我遇到了检索秘密版本的挑战。

示例:https://YourVaultName.vault.azure.net/keys/YourKeyName/01234567890123456789012345678901

我们正在使用 keyvaultclient C# class 来管理我们应用程序中的 keyVault

要获取当前版本的密钥,您可以使用 GetSecretAsync .

我使用 Microsoft.Azure.Services.AppAuthentication 创建一个 keyvault 客户端,示例 here

var azureServiceTokenProvider1 = new AzureServiceTokenProvider();
var kv = new KeyVaultClient(new KeyVaultClient.AuthenticationCallback(azureServiceTokenProvider1.KeyVaultTokenCallback));
var secret = kv.GetSecretAsync("https://<keyvault-name>.vault.azure.net/", "<secret-name>").GetAwaiter().GetResult(); 
Console.WriteLine(secret.SecretIdentifier.Version);

如果你想得到所有版本的秘密,你可以使用GetSecretVersionsAsync

var versions = kv.GetSecretVersionsAsync("https://<keyvault-name>.vault.azure.net/", "<secret-name>").GetAwaiter().GetResult();