gpt4 book ai didi

azure - 如何在不存储凭据的情况下连接到 KeyVault?

转载 作者:行者123 更新时间:2023-12-03 01:44:19 25 4
gpt4 key购买 nike

我的 Web 应用程序在 KeyVault 中存储了许多安全配置元素。为了连接到它,我们有一些使用应用程序 ID 和 key 的代码,而这些代码又是安全凭据,因为它们允许访问 Key Vault。

我可以使用应用程序的身份作为凭据,以某种集成安全方式连接到 KeyVault 吗?或者有其他方法来保护这些凭据吗?

我考虑过通过加密来保护配置元素,但是还有另一个 Assets ( key )需要维护、保护和部署。这比纯文本配置更好,但我试图在这里找出最好的解决方案。

最佳答案

如果您想使用 Azure Active Directory 从 Web 应用程序访问 Key Vault,您可以执行以下操作

  1. 转到您的网络应用程序
  2. 转到托管服务身份并向 Azure Active Directory 注册 Web 应用(单击开启 按钮并稍后保存),这将创建托管服务服务身份。 Managed service identity

  3. 现在转到 key 保管库并打开访问策略选项卡

  4. 点击“新增”
  5. 选择Secret Management作为从模板配置
  6. 在“选择主体”选项中,选择托管服务身份为您的网络应用程序创建(应命名为您的应用程序) enter image description here

  7. 现在转到“关键权限”并至少选择获取,以获取对您的 key ( secret 和证书的过程相同)。

完成所有这些步骤后,您可以转到您的网络应用程序代码并获取例如如下所示的 secret :

AzureServiceTokenProvider azureServiceTokenProvider = new AzureServiceTokenProvider();

var keyVaultClient = new KeyVaultClient(new KeyVaultClient.AuthenticationCallback(azureServiceTokenProvider.KeyVaultTokenCallback));

var secret = await keyVaultClient.GetSecretAsync("https://keyvaultname.vault.azure.net/secrets/secret").ConfigureAwait(false);

您需要将 Microsoft.Azure.Services.AppAuthenticationMicrosoft.Azure.KeyVault NuGet 包安装到您的应用程序。

关于azure - 如何在不存储凭据的情况下连接到 KeyVault?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49053940/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com