首页 > 解决方案 > 如何在 Azure 中查看所有用户的列表以及分配给他们的角色?

问题描述

我是 Azure 管理员。

我想知道是否有一种简单的方法可以显示 Azure 中的用户列表以及他们对哪些订阅、用户组和资源的角色分配?

基本上,我想要一份人们在任何事情上都有的所有角色分配的列表。

相反,我会接受订阅中每个资源组和资源的列表,并列出它们的角色分配。

听起来不是一个很大的问题吗?

最简单的方法是什么?

——李

标签: azure

解决方案



#!/bin/bash
    
    
subscriptions_list=($(az account list --all --query "[].id" -o table  | grep -vi "resul\|--"))
    
#echo "These subscriptions are linked to Azure Account: $subscriptions_list"
    

    
echo ""
    
echo "Below is the list of <USERS> with direct role assignments to subscriptions"
    
echo ""
    

    
# Listing "Users" with direct tole assignments to subscriptions
    

    
for subscription in "${subscriptions_list[@]}"; do
    
 echo "************************************************************************************"
    
 echo "Direct Role Assignments(s) for subscription id: $subscription"
    
 echo ""
    
 az role assignment list --subscription $subscription --query "[?principalType=='User'].{Role:roleDefinitionName,Email:principalName}" -o table
    
 echo ""
    
done

“az account list” az cli 命令将输出(订阅列表)保存在一个变量中。然后一个 for 循环逐个遍历这些订阅,列出它们的所有者(“用户”类型)。请询问是否不清楚。


推荐阅读