使用Python SDK为新建Azure VM配置用户分配标识报错求助
Azure Python SDK创建VM绑定用户分配标识修正方案
错误原因
你代码中的identity配置不符合Azure Compute SDK的参数规范,问题出在user_assigned_identities字段的结构上:
- 该字段是字典结构,键必须为用户分配标识的完整资源ID,不能使用自定义的
identity_id作为键 - 每个键对应的取值固定为空字典
{},不需要嵌套{ myidentity }结构
正确配置步骤
- 先获取你要绑定的用户分配标识的完整资源ID,可通过az cli命令获取:
az identity show -g <标识所在资源组名称> -n <标识名称> --query id -o tsv - 替换原有代码中的
identity配置块:
"identity": { "type": "UserAssigned", "user_assigned_identities": { # 替换为上一步获取到的标识完整资源ID "/subscriptions/你的订阅ID/resourceGroups/标识所在资源组/providers/Microsoft.ManagedIdentity/userAssignedIdentities/你的标识名称": {} } }
如果需要同时绑定多个用户分配标识,在user_assigned_identities字典中新增多条键值对即可。
注意事项
运行代码的身份需要具备目标标识的Microsoft.ManagedIdentity/userAssignedIdentities/assign/action权限,否则会触发权限不足的报错。VM创建完成后可进入Azure门户VM的「标识」-「用户分配」页面确认绑定结果。
内容的提问来源于stack exchange,提问作者archcutbank
相关产品推荐
相关产品推荐

