Azure 函数 - 在哪里存储配置值

问题描述 投票:0回答:4

如果这是一个愚蠢的问题,我深表歉意,但“设置”>“配置”是否是存储 azure 函数的环境特定值的正确位置?

例如连接到 microsoft.graph 时,需要以下内容:

  1. 租户 ID
  2. 客户编号
  3. 客户秘密

在设置 > 配置中存储客户端 ID 和租户 ID,然后将机密存储在密钥保管库中是否正确?

enter image description here

azure-functions azure-keyvault
4个回答
2
投票

Azure Key Vault 是存储租户 ID、客户端 ID 和机密的更好位置,因为它包含直接值,并且有权访问此函数应用程序的其他用户可以看到它。

如果您将 机密值存储在 Key Vault 中,您可以通过向 KeyVault 提供 身份来管理可以访问它的用户和不能访问它的用户。 但是在 Azure Function App > 配置中,您可以给出客户端密钥的值,如下所示:

@Microsoft.KeyVault(SecretUri=https://myvault.vault.azure.net/secrets/mysecret/)

客户端密钥存储在您的 
key vault > secrets

路径中

    


1
投票

连接字符串、环境变量和其他应用程序设置是为每个功能应用程序单独定义的。

您可以创建功能代码所需的任意数量的应用程序设置。函数还使用预定义的应用程序设置。要了解更多信息,请参阅 Azure Functions 的应用程序设置参考。

这些设置是加密存储的。要了解更多信息,请参阅应用程序设置安全性。

可以从 Azure 门户并使用 Azure CLI 和 Azure PowerShell 管理应用程序设置。您还可以从 Visual Studio Code 和 Visual Studio 管理应用程序设置。

使用应用程序设置

函数应用程序设置值也可以在代码中作为环境变量读取。

来源:
管理您的函数应用 - 使用应用程序设置

有关已可用的设置,请参阅

Azure Functions 的应用程序设置参考

您想要在(功能)应用程序之间共享的配置设置可以存储在外部持久存储中,例如

应用程序配置

Azure 应用程序配置提供了一项集中管理应用程序设置和功能标志的服务。现代程序,尤其是在云中运行的程序,通常具有许多本质上分布的组件。在这些组件之间分散配置设置可能会导致应用程序部署期间出现难以排除的错误。使用应用程序配置存储应用程序的所有设置并在一个地方保护它们的访问。


1
投票

关于应用程序设置

Key Vault 使用情况


1
投票
但是“设置”>“配置”是存储 azure 函数的环境特定值的正确位置吗?

是的,您可以在应用程序配置中存储环境值。

在设置 > 配置中存储客户端 ID 和租户 ID,然后将机密存储在密钥保管库中是否正确?

是的,但 Azure 应用程序配置不会访问您的密钥保管库,因为您的应用程序将直接从密钥保管库读取,因此您必须允许它读取密钥保管库中的机密。这可确保您的应用程序始终掌握秘密。可以使用 Key Vault 访问策略或 Azure 基于角色的访问控制来授予访问权限。

参考文献:

    授予您的应用程序对 Key Vault 的访问权限
  1. Azure Key Vault 与 Azure 应用程序配置有何不同
© www.soinside.com 2019 - 2024. All rights reserved.