如何使用来自Azure云函数(python)的用户托管标识向Azure KeyVault发出请求?

2024-05-29 05:08:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我的当前设置:

我的DevOps人员创建了一个用户管理的身份,并将其添加到Azure密钥保险库的访问策略中。
我已经创建了一个功能应用程序testing-01,并在平台设置下为其分配了用户ManagedIdentity。
我使用python3.6作为运行时语言。在

这是我的助手方法,我用它来检查我是否能够从密钥库访问机密。 我要回复它的回应。在

def cred_checker():
    credential = ManagedIdentityCredential()
    # credential = ManagedIdentityCredential(client_id='client_id 
    vault_name= "myvault"
    client = SecretClient(vault_url=f"https://{vault_name}.vault.azure.net/", credential=credential)
    username = client.get_secret(name="username")
    password= client.get_secret(name="password")

    return f"AKV client created successfully {client} .<br> name: {username},<br> pass: {password} " 

我可以创建客户端没有错误。但是当我试图从中获取秘密时,我得到了这个ClientAuthenticationError:

^{pr2}$

Tags: 用户namebrclientidgetsecret人员
1条回答
网友
1楼 · 发布于 2024-05-29 05:08:57

使用用户分配的标识时,需要在^{}中指定MSI的^{}。在

credential = ManagedIdentityCredential(client_id="xxxxxxxx")

若要获取client_id,请导航到您的功能应用程序->gt;Identity->;User assigned->;单击用户分配的标识->复制client_id。在

enter image description here

相关问题 更多 >

    热门问题