如何通过Azure CLI将用户托管标识关联至Azure Analysis Services并赋管理员权限
使用Azure CLI为Azure Analysis Services关联用户托管标识并赋予管理员权限
可以通过Azure CLI结合变通方案实现需求,具体步骤如下:
1. 获取用户托管标识的主体ID
首先用Azure CLI获取已创建的用户托管标识的principalId(主体ID),后续将用这个ID添加为AAS管理员:
# 替换为你的托管标识名称和资源组名称 MI_PRINCIPAL_ID=$(az identity show --name <user-managed-identity-name> --resource-group <resource-group-name> --query principalId -o tsv)
执行后,MI_PRINCIPAL_ID变量会存储托管标识的主体ID。
2. 通过REST API为AAS添加托管标识作为管理员
由于Azure Analysis Services的CLI命令暂不直接支持添加托管标识作为管理员,我们可以用az rest调用Azure管理REST API,将托管标识的主体ID添加到服务器管理员列表中:
# 替换为你的订阅ID、资源组名称和AAS服务器名称 az rest --method patch \ --uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.AnalysisServices/servers/<aas-server-name>?api-version=2017-08-01" \ --body '{ "properties": { "asAdministrators": { "members": [ "obj:'$MI_PRINCIPAL_ID'" ] } } }'
注意事项:
- 上述命令会替换现有管理员列表,如果需要保留原有管理员,需将他们的成员信息一并加入
members数组,格式示例:"members": [ "obj:'$MI_PRINCIPAL_ID'", "user:existing-admin@yourdomain.com", "group:admin-group@yourdomain.com" ] - 托管标识的成员格式为
obj:<主体ID>,这是AAS识别服务主体类身份的标准格式。
3. 验证管理员配置
执行以下命令确认托管标识已成功添加为AAS服务器管理员:
az rest --method get \ --uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.AnalysisServices/servers/<aas-server-name>?api-version=2017-08-01" \ --query properties.asAdministrators.members -o table
内容的提问来源于stack exchange,提问作者Muhammad Pathan
相关产品推荐
相关产品推荐

