【问题标题】:How to retrieve Secret from Azure Key Vault using DefaultAzureCredential如何使用 DefaultAzureCredential 从 Azure Key Vault 检索 Secret
【发布时间】:2021-04-29 18:56:19
【问题描述】:

我已经在 Azure 中设置了我的 keyVault,并在那里添加了密码。我现在遵循 Microsoft located here 的指示。

我当前的代码如下所示:

            var keyVaultName = Environment.GetEnvironmentVariable("KEY_VAULT_NAME");
            var kvUri = "https://" + keyVaultName + "vault.azure.net";
            var client = new SecretClient(new Uri(kvUri), new DefaultAzureCredential());
            var secret = (await client.GetSecretAsync("my-secret-key")).Value.Value;

我已经设置了环境变量(系统设置)来保存密钥保管库的名称,变量名称为KEY_VAULT_NAME

使用上面的代码我得到一个例外:The requested name is valid, but no data of the requested type was found

我有一种感觉,我错误地使用了DefaultAzureCredential,并且我缺少一些东西?

【问题讨论】:

  • 除了下面答案中的详细信息外,我在 kvUri 的值中 vault 之前缺少一个句号。

标签: c# azure-keyvault defaultazurecredential


【解决方案1】:

我最终使用了 Microsoft 的 this resource,它使用几乎相同的代码,但还提供了有关为您的 Web 应用程序设置托管标识并为其提供对特定 Key Vault 的访问权限的详细信息。

我的问题中的代码现在也在设置托管身份访问权限。

【讨论】:

    猜你喜欢
    • 2020-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-22
    • 2020-05-06
    • 1970-01-01
    相关资源
    最近更新 更多