📜  如何将 azure keyvalaut 值放入 python 函数应用程序 - Python (1)

📅  最后修改于: 2023-12-03 15:38:43.805000             🧑  作者: Mango

如何将 Azure Key Vault 值放入 Python 函数应用程序

Azure Key Vault 是一种云服务,用于存储和管理应用程序、API密钥、密码、证书和其他机密。它提供了安全、高度可靠的方式来访问和管理应用程序机密,同时也可以控制和审计机密的使用。

在 Python 函数应用程序中,我们可以通过使用 Azure Key Vault,来安全地存储和管理应用程序所需的敏感信息,例如密钥、密码等。本文将介绍如何在 Python 函数应用程序中使用 Azure Key Vault。

步骤 1 - 创建 Azure Key Vault

首先,在 Azure 门户中创建一个新的 Azure Key Vault 或使用现有的 Azure Key Vault。你可以按照以下步骤来创建新的 Azure Key Vault:

  1. 登录 Azure 门户。

  2. 点击“创建资源”按钮。

  3. 搜索“Azure Key Vault”,选择“Azure Key Vault”。

  4. 在“创建 Azure Key Vault”页面上,输入“名称”、“订阅”、“资源组”等基本信息。

  5. 在“访问策略”选项卡中,配置 Key Vault 的访问策略。详细信息请参阅 Azure Key Vault 文档。

  6. 点击“创建”按钮来创建 Key Vault。

步骤 2 - 添加机密值到 Azure Key Vault

在 Azure Key Vault 中添加机密值(例如密码、密钥)非常简单。你可以按照以下步骤进行操作:

  1. 登录 Azure 门户。

  2. 找到 Azure Key Vault,并选择“机密”选项卡。

  3. 点击“添加”按钮来创建新的机密值。

  4. 在“添加机密”页面中,输入“名称”、“值”和“描述”等信息。

  5. 点击“创建”按钮来添加机密值。

步骤 3 - 在 Python 函数应用程序中使用 Azure Key Vault

要在 Python 函数应用程序中使用 Azure Key Vault,我们需要按照以下步骤进行操作:

  1. 安装 Azure Key Vault 库。

在命令行中运行以下命令:

pip install azure-keyvault-secrets
  1. 创建 Azure Key Vault 客户端。

在 Python 函数应用程序中,创建一个 Azure Key Vault 客户端来访问 Azure Key Vault 中的机密值。在下面的代码片段中,我们将使用 Azure CLI 登录到 Azure 帐户,并使用登录凭据创建一个 Azure Key Vault 客户端。

import os
from azure.identity import DefaultAzureCredential
from azure.keyvault.secrets import SecretClient

credential = DefaultAzureCredential()
client = SecretClient(vault_url="https://{key-vault-name}.vault.azure.net/", credential=credential)

其中 {key-vault-name} 是你的 Azure Key Vault 的名称。

  1. 获取机密值。

接下来,我们使用 Azure Key Vault 客户端从 Azure Key Vault 中获取机密值。在下面的代码片段中,我们将获取一个名为 password 的机密值,并将其存储在变量中。

secret = client.get_secret("password")
password = secret.value
  1. 在 Python 函数应用程序中使用机密值。

我们现在可以在 Python 函数应用程序中使用上面获取的 password 机密值。在下面的代码片段中,我们将使用机密值来连接到数据库。

import pymssql

server = "example.database.windows.net"
database = "AdventureWorks"
user = "exampleuser"
password = password

conn = pymssql.connect(server, user, password, database)
结论

通过使用 Azure Key Vault,在 Python 函数应用程序中安全地存储和管理机密信息变得非常简单。按照本文所述的步骤进行操作,你也可以轻松地在自己的应用程序中使用 Azure Key Vault。