Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O RBAC (controle de acesso baseado em função) do Azure é o sistema de autorização usado para gerenciar o acesso aos recursos no Azure. Para determinar a quais recursos os usuários, grupos, entidades de serviço ou identidades gerenciadas têm acesso, liste as atribuições das funções. Este artigo descreve como listar as atribuições de função usando a CLI do Azure.
Observação
Se sua organização tiver funções de gerenciamento terceirizadas para um provedor de serviços que usa o Azure Lighthouse, as atribuições de função autorizadas por esse provedor de serviços não serão mostradas aqui. Da mesma forma, os usuários no locatário do provedor de serviços não verão atribuições de função para usuários no locatário de um cliente, independentemente da função atribuída.
Pré-requisitos
Listar as atribuições de função de um usuário
Para listar as atribuições de função para um usuário específico, use a lista de atribuições de função az:
az role assignment list --assignee {assignee}
By default, only role assignments for the current subscription will be displayed. To view role assignments for the current subscription and below, add the --all
parameter. To include role assignments at parent scopes, add the --include-inherited
parameter. To include role assignments for groups of which the user is a member transitively, add the --include-groups
parameter.
The following example lists the role assignments that are assigned directly to the patlong@contoso.com user:
az role assignment list --all --assignee patlong@contoso.com --output json --query '[].{principalName:principalName, roleDefinitionName:roleDefinitionName, scope:scope}'
[
{
"principalName": "patlong@contoso.com",
"roleDefinitionName": "Backup Operator",
"scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales"
},
{
"principalName": "patlong@contoso.com",
"roleDefinitionName": "Virtual Machine Contributor",
"scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales"
}
]
Listar as atribuições para um grupo de recursos
Para listar as atribuições de função que existem para o escopo de um grupo de recursos, use az role assignment list:
az role assignment list --resource-group {resourceGroup}
The following example lists the role assignments for the pharma-sales resource group:
az role assignment list --resource-group pharma-sales --output json --query '[].{principalName:principalName, roleDefinitionName:roleDefinitionName, scope:scope}'
[
{
"principalName": "patlong@contoso.com",
"roleDefinitionName": "Backup Operator",
"scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales"
},
{
"principalName": "patlong@contoso.com",
"roleDefinitionName": "Virtual Machine Contributor",
"scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/pharma-sales"
},
...
]
Listar atribuições de função de um usuário
Para listar todas as atribuições de função em um escopo de assinatura, use az role assignment list. Para obter a ID da assinatura, encontre-a na folha Assinaturas no portal do Azure ou use az account list.
az role assignment list --scope "/subscriptions/{subscriptionId}"
Example:
az role assignment list --scope "/subscriptions/00000000-0000-0000-0000-000000000000" --output json --query '[].{principalName:principalName, roleDefinitionName:roleDefinitionName, scope:scope}'
[
{
"principalName": "admin@contoso.com",
"roleDefinitionName": "Owner",
"scope": "/subscriptions/00000000-0000-0000-0000-000000000000"
},
{
"principalName": "Subscription Admins",
"roleDefinitionName": "Owner",
"scope": "/subscriptions/00000000-0000-0000-0000-000000000000"
},
{
"principalName": "alain@contoso.com",
"roleDefinitionName": "Reader",
"scope": "/subscriptions/00000000-0000-0000-0000-000000000000"
},
...
]
Listar as atribuições de função para um grupo de gerenciamento
Para listar todas as atribuições de função em no escopo de um grupo de gerenciamento, use az role assignment list. Para obter a ID do grupo de gerenciamento, você pode encontrá-la na folha Grupos de gerenciamento no portal do Azure ou pode usar az account management-group list.
az role assignment list --scope /providers/Microsoft.Management/managementGroups/{groupId}
Example:
az role assignment list --scope /providers/Microsoft.Management/managementGroups/sales-group --output json --query '[].{principalName:principalName, roleDefinitionName:roleDefinitionName, scope:scope}'
[
{
"principalName": "admin@contoso.com",
"roleDefinitionName": "Owner",
"scope": "/providers/Microsoft.Management/managementGroups/sales-group"
},
{
"principalName": "alain@contoso.com",
"roleDefinitionName": "Reader",
"scope": "/providers/Microsoft.Management/managementGroups/sales-group"
}
]
Listar atribuições de função para uma identidade gerenciada
Siga estas etapas:
Obtenha a ID da entidade de segurança ou da identidade gerenciada atribuída pelo sistema ou pelo usuário.
Para obter a ID de entidade de segurança de uma identidade gerenciada atribuída pelo usuário, você pode usar az ad sp list ou az identity list.
az ad sp list --display-name "{name}" --query [].id --output tsv
Para obter a ID de entidade de segurança de uma identidade gerenciada atribuída pelo sistema, você pode usar az ad sp list.
az ad sp list --display-name "{vmname}" --query [].id --output tsv
Para listar as atribuições de função, use az role assignment list.
Por padrão, somente as atribuições de função para a assinatura atual serão exibidas. Para exibir as atribuições de função para a assinatura atual e abaixo, adicione o parâmetro
--all
. Para exibir as atribuições de função herdadas, adicione o parâmetro--include-inherited
.az role assignment list --assignee {objectId}