Azure Python SDK 身份验证错误

Azure Python SDK Authentication Error

我正在尝试使用 azure-python-sdk 停止 azure 云中的虚拟机。我正在关注此页面 https://github.com/Azure-Samples/virtual-machines-python-manage and I have created an Azure active directory application by following this link, https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-create-service-principal-portal

作为第一步,我尝试使用传递 client_id、秘密和租户的 ServicePrincipalCredentials 调用进行身份验证,但连接引发以下错误, '密钥环缓存令牌失败:(1783,'CredWrite','The stub received bad data')'

该应用程序具有虚拟机参与者权限设置。这是权限问题吗?

Keyring 是一个可选的子系统,完全不会影响身份验证。它旨在以一种方式存储您的令牌,即使 Python 进程消失,您也可以重新实例化凭据,而无需再次与 AD 对话。如果凭据有效,这不会阻止身份验证,这只是一个警告日志,如果您的 Python 进程结束,您将无法重新创建凭据 class 而不重新询问AD 的令牌。

如果您有异常堆栈跟踪,明确指出这会阻止身份验证工作,请在此处提出问题: https://github.com/Azure/msrestazure-for-python/issues

(我在 Microsoft 拥有此代码和库,并撰写了您提到的文章)

编辑:从 msrestazure 0.5.0 开始,密钥环支持已被删除。