在 Python 中访问 Azure Key Vault 时意外的关键字参数“tenant_id”

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

我试图访问我的密钥库,但我总是得到同样的错误:

AppServiceCredential.get_token failed: request() got an unexpected keyword argument 'tenant_id'
ManagedIdentityCredential.get_token failed: request() got an unexpected keyword argument 'tenant_id'

这是我在 Azure 机器学习笔记本中使用的代码,从文档中复制:

from azure.identity import ManagedIdentityCredential
from azure.keyvault.secrets import SecretClient

credential = ManagedIdentityCredential()
secret_client = SecretClient(vault_url="https://XXXX.vault.azure.net/", credential=credential)

secretName = 'test'
retrieved_secret = secret_client.get_secret(secretName) # here's the error
retrieved_secret

怎么了?你可以帮帮我吗? 提前谢谢你。

python azure azure-keyvault
2个回答
8
投票

此错误是由于

azure-identity
ManagedIdentityCredential
中已修复的错误。最近软件包中的 Key Vault 客户端在令牌请求中包含租户 ID 以支持跨租户身份验证,但一些
azure-identity
凭证无法正确处理此关键字参数,直到 version 1.8.0 中修复了该错误。安装
azure-identity
>=1.8.0 应该可以解决您遇到的错误。

(免责声明:我为 Python 的 Azure SDK 工作)


0
投票

现在有同样的问题(也使用 Azure ML 计算实例),只有降级包对我有用。

  • 天蓝色身份==1.11.0
  • azure-keyvault-secrets==4.6.0

@mccoyp:也许你可以把这个反馈给团队

© www.soinside.com 2019 - 2024. All rights reserved.