用途:在 Python 中调用 Azure Key Vault 服务,安全管理机密(secrets)、加密密钥(keys)与证书(certificates)。
主要能力:SecretClient 用于设置、获取、列出、按版本获取、软删除、恢复及永久清除机密;KeyClient 用于创建 RSA/EC 密钥、获取与列出、删除密钥;CryptographyClient 基于指定密钥执行加解密(如 rsa_oaep)与签名验签(如 rs256);CertificateClient 用于创建自签名证书、获取证书、列出与删除证书。另提供异步客户端,适用于高吞吐场景。
安装(保持原样):
Secrets
pip install azure-keyvault-secrets azure-identity
Keys
pip install azure-keyvault-keys azure-identity
Certificates
pip install azure-keyvault-certificates azure-identity
All
pip install azure-keyvault-secrets azure-keyvault-keys azure-keyvault-certificates azure-identity
必要用法:设置环境变量 AZURE_KEYVAULT_URL=https://<vault-name>.vault.azure.net/;使用 DefaultAzureCredential 认证,构造对应客户端并传入 vault_url 与 credential;例如 SecretClient(vault_url=vault_url, credential=credential)。证书私钥可通过 SecretClient 以机密形式获取。错误处理可捕获 ResourceNotFoundError 与 HttpResponseError(如 403 表示权限问题)。异步用法从 azure.identity.aio 与 azure.keyvault.secrets.aio 导入。
适用场景:需要集中、安全存储与轮换应用机密、密钥和证书的 Python 项目;在 Azure 托管环境使用托管标识;通过版本化实现机密轮换;在 App Service/Functions 配置中使用 Key Vault 引用。
限制:原文未提供具体定价、配额或完整权限配置细节;资料建议仅在与上述范围明确匹配时使用,输出不能替代针对具体环境的验证、测试或专家审查;若缺少必要输入、权限、安全边界或成功标准,应停止并请求澄清。