Compartilhar via


Remover atribuições de função do Azure

O RBAC (controle de acesso baseado em função) do Azure é o sistema de autorização que você usa para gerenciar o acesso aos recursos do Azure. Para remover o acesso de um recurso do Azure, remova uma atribuição de função. Este artigo descreve como remover atribuições de funções usando o portal do Azure, o Azure PowerShell, a CLI do Azure e a API REST.

Pré-requisitos

Para remover atribuições de função, você deve ter:

Para a API REST, você deve usar a seguinte versão:

  • 2015-07-01 ou posterior

Para obter mais informações, confira as Versões de API das APIs REST do RBAC do Azure.

portal do Azure

  1. Abra o IAM (controle de acesso) em um escopo, como grupo de gerenciamento, assinatura, grupo de recursos ou recurso, em que você deseja remover o acesso.

  2. Clique na guia Atribuições de função para exibir todas as atribuições de função nesse escopo.

  3. Na lista de atribuições de função, marque a caixa de seleção ao lado de objeto com a atribuição de função de segurança que você deseja remover.

    Captura de tela da atribuição de função selecionada para ser removida.

    Se você quiser remover uma atribuição de função proprietário e essa atribuição de função tiver a descrição a seguir, você também deverá verificar se o usuário também tem uma atribuição de função de administrador clássica na guia Administradores Clássicos . Se o usuário tiver uma atribuição de função de administrador clássica, você também deverá remover essa atribuição de função. Para obter mais informações, consulte Atribuição automática à função Proprietário.

    • descrição: The Classic Admin role was converted to an Azure Owner role on behalf of the user due to Classic Admin retirement
  4. Clique em Remover.

    Captura de tela da mensagem para remover a atribuição de função.

  5. Na mensagem remover atribuição de função exibida, clique em Sim.

    Se vir uma mensagem informando que as atribuições de função herdadas não podem ser removidas, você estará tentando remover uma atribuição de função em um escopo filho. Você deve abrir o IAM (controle de acesso) no escopo em que a função foi atribuída e tentar novamente. Uma maneira rápida de abrir o controle de acesso (IAM) no escopo correto é olhar a coluna Escopo e clicar no link próximo a (Herdado).

    Captura de tela da mensagem de remoção de atribuição de função referente a atribuições de função herdadas.

Azure PowerShell

No Azure PowerShell, você remove uma atribuição de função usando Remove-AzRoleAssignment.

O seguinte exemplo remove a atribuição da função Colaborador da Máquina Virtual do usuário patlong@contoso.com no grupo de recursos pharma-sales:

PS C:\> Remove-AzRoleAssignment -SignInName patlong@contoso.com `
-RoleDefinitionName "Virtual Machine Contributor" `
-ResourceGroupName pharma-sales

Remove a função Leitor do grupo Ann Mack Team com ID 22222222-2222-2222-2222-222222222222 no escopo da assinatura.

PS C:\> Remove-AzRoleAssignment -ObjectId 22222222-2222-2222-2222-222222222222 `
-RoleDefinitionName "Reader" `
-Scope "/subscriptions/00000000-0000-0000-0000-000000000000"

Remove a função Leitor de cobrança do usuário alain@example.com no escopo de grupo de gerenciamento.

PS C:\> Remove-AzRoleAssignment -SignInName alain@example.com `
-RoleDefinitionName "Billing Reader" `
-Scope "/providers/Microsoft.Management/managementGroups/marketing-group"

Remove a função Administrador de Acesso de Usuário com a ID 18d7d88d-d35e-4fb5-a5c3-7773c20a72d9 da entidade principal com a ID 33333333-3333-3333-3333-333333333333 no escopo da assinatura com a ID 00000000-0000-0000-0000-000000000000.

PS C:\> Remove-AzRoleAssignment -ObjectId 33333333-3333-3333-3333-333333333333 `
-RoleDefinitionId 18d7d88d-d35e-4fb5-a5c3-7773c20a72d9 `
-Scope /subscriptions/00000000-0000-0000-0000-000000000000

Se você receber a mensagem de erro: "As informações fornecidas não correspondem a uma atribuição de função", certifique-se de também especificar os parâmetros -Scope ou -ResourceGroupName. Para saber mais, confira Solucionar problemas do RBAC do Azure.

CLI do Azure

Na CLI do Azure, você remove uma atribuição de função usando az role assignment delete.

O seguinte exemplo remove a atribuição da função Colaborador da Máquina Virtual do usuário patlong@contoso.com no grupo de recursos pharma-sales:

az role assignment delete --assignee "patlong@contoso.com" \
--role "Virtual Machine Contributor" \
--resource-group "pharma-sales"

Remove a função Leitor do grupo Ann Mack Team com ID 22222222-2222-2222-2222-222222222222 no escopo da assinatura.

az role assignment delete --assignee "22222222-2222-2222-2222-222222222222" \
--role "Reader" \
--scope "/subscriptions/00000000-0000-0000-0000-000000000000"

Remove a função Leitor de cobrança do usuário alain@example.com no escopo de grupo de gerenciamento.

az role assignment delete --assignee "alain@example.com" \
--role "Billing Reader" \
--scope "/providers/Microsoft.Management/managementGroups/marketing-group"

API REST

Na API REST, você remove uma atribuição de função usando Atribuições de Função – Excluir.

  1. Obter o GUID (identificador de atribuição de função). Esse identificador é retornado quando você cria a atribuição de função pela primeira vez ou pode obtê-la listando as atribuições de função.

  2. Comece com a seguinte solicitação:

    DELETE https://management.azure.com/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentId}?api-version=2022-04-01
    
  3. No URI, substitua {scope} pelo escopo para remover a atribuição de função.

    Scope Tipo
    providers/Microsoft.Management/managementGroups/{groupId1} Grupo de gerenciamento
    subscriptions/{subscriptionId1} Subscription
    subscriptions/{subscriptionId1}/resourceGroups/myresourcegroup1 Grupo de recursos
    subscriptions/{subscriptionId1}/resourceGroups/myresourcegroup1/providers/microsoft.web/sites/mysite1 Resource
  4. Substitua {roleAssignmentId} pelo identificador GUID da atribuição de função.

    A seguinte solicitação remove a atribuição de função especificada no escopo da assinatura:

    DELETE https://management.azure.com/subscriptions/{subscriptionId1}/providers/microsoft.authorization/roleassignments/{roleAssignmentId1}?api-version=2022-04-01
    

    O seguinte mostra um exemplo da saída:

    {
        "properties": {
            "roleDefinitionId": "/subscriptions/{subscriptionId1}/providers/Microsoft.Authorization/roleDefinitions/a795c7a0-d4a2-40c1-ae25-d81f01202912",
            "principalId": "{objectId1}",
            "principalType": "User",
            "scope": "/subscriptions/{subscriptionId1}",
            "condition": null,
            "conditionVersion": null,
            "createdOn": "2022-05-06T23:55:24.5379478Z",
            "updatedOn": "2022-05-06T23:55:24.5379478Z",
            "createdBy": "{createdByObjectId1}",
            "updatedBy": "{updatedByObjectId1}",
            "delegatedManagedIdentityResourceId": null,
            "description": null
        },
        "id": "/subscriptions/{subscriptionId1}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentId1}",
        "type": "Microsoft.Authorization/roleAssignments",
        "name": "{roleAssignmentId1}"
    }
    

modelo do ARM

Não há uma maneira de remover uma atribuição de função usando um modelo do ARM (Azure Resource Manager). Para remover uma atribuição de função, você deve usar outras ferramentas, como o portal do Azure, o Azure PowerShell, a CLI do Azure ou a API REST.