📅  最后修改于: 2023-12-03 15:38:43.805000             🧑  作者: Mango
Azure Key Vault 是一种云服务,用于存储和管理应用程序、API密钥、密码、证书和其他机密。它提供了安全、高度可靠的方式来访问和管理应用程序机密,同时也可以控制和审计机密的使用。
在 Python 函数应用程序中,我们可以通过使用 Azure Key Vault,来安全地存储和管理应用程序所需的敏感信息,例如密钥、密码等。本文将介绍如何在 Python 函数应用程序中使用 Azure Key Vault。
首先,在 Azure 门户中创建一个新的 Azure Key Vault 或使用现有的 Azure Key Vault。你可以按照以下步骤来创建新的 Azure Key Vault:
登录 Azure 门户。
点击“创建资源”按钮。
搜索“Azure Key Vault”,选择“Azure Key Vault”。
在“创建 Azure Key Vault”页面上,输入“名称”、“订阅”、“资源组”等基本信息。
在“访问策略”选项卡中,配置 Key Vault 的访问策略。详细信息请参阅 Azure Key Vault 文档。
点击“创建”按钮来创建 Key Vault。
在 Azure Key Vault 中添加机密值(例如密码、密钥)非常简单。你可以按照以下步骤进行操作:
登录 Azure 门户。
找到 Azure Key Vault,并选择“机密”选项卡。
点击“添加”按钮来创建新的机密值。
在“添加机密”页面中,输入“名称”、“值”和“描述”等信息。
点击“创建”按钮来添加机密值。
要在 Python 函数应用程序中使用 Azure Key Vault,我们需要按照以下步骤进行操作:
在命令行中运行以下命令:
pip install azure-keyvault-secrets
在 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 的名称。
接下来,我们使用 Azure Key Vault 客户端从 Azure Key Vault 中获取机密值。在下面的代码片段中,我们将获取一个名为 password
的机密值,并将其存储在变量中。
secret = client.get_secret("password")
password = secret.value
我们现在可以在 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。