Azure Custom Role – RBAC

O Azure Custom Role no contexto do Role-Based Access Control (RBAC) permite criar funções personalizadas para conceder permissões específicas a usuários, grupos ou identidades gerenciadas. Isso é útil quando as funções padrão do Azure não atendem às necessidades exatas de controle de acesso.

📌 O que é RBAC no Azure?

O RBAC (Role-Based Access Control) no Azure é um modelo que gerencia permissões baseadas em funções. Ele permite controlar quem pode realizar quais ações sobre quais recursos.

Tipos de funções no Azure RBAC:

  1. Funções Padrão – Criadas pela Microsoft, como:
    • Owner (Dono) – Controle total, incluindo delegação de acesso.
    • Contributor (Colaborador) – Pode gerenciar recursos, mas sem alterar permissões.
    • Reader (Leitor) – Apenas leitura.
    • User Access Administrator – Gerencia o acesso de usuários.
  2. Funções Personalizadas (Custom Role) – Criadas pelo usuário quando as funções padrão não são suficientes.

🔹 Criando uma Custom Role pelo Portal do Azure

1️⃣ Acesse o portal do Azure

  • Vá para https://portal.azure.com
  • No menu de pesquisa, digite “IAM” ou “Controle de Acesso (IAM)”
  • Acesse a seção “Controle de Acesso (IAM)” no escopo desejado (Subscription, Resource Group ou Resource).

2️⃣ Criar a função personalizada

  • Clique em “Funções (Roles)” no menu lateral.
  • Clique em “+ Criar”“Nova função personalizada”.

3️⃣ Definir informações básicas

  • Nome da função → Escolha um nome significativo (ex: “Operador de VM Personalizado”).
  • Descrição → Explique o que a função faz (ex: “Permite iniciar e parar VMs, mas não excluí-las”).
  • Baseline de permissões:
    • Começar do zero → Criar do zero.
    • Clonar uma função existente → Basear-se em uma função padrão.

Clique em “Avançar”.


4️⃣ Adicionar permissões

  • Clique em “+ Adicionar permissões”.
  • Na caixa de pesquisa, digite um provedor de recursos (ex: Microsoft.Compute para VMs).
  • Marque as permissões desejadas, como:
    • Iniciar VM: Microsoft.Compute/virtualMachines/start/action
    • Parar VM: Microsoft.Compute/virtualMachines/deallocate/action
    • Reiniciar VM: Microsoft.Compute/virtualMachines/restart/action
  • Clique em “Adicionar” e depois “Avançar”.

5️⃣ Definir escopo de atribuição

  • Escolha onde a função poderá ser atribuída:
    • Assinatura (Subscription)
    • Grupo de Recursos (Resource Group)
    • Recurso específico
  • Clique em “+ Adicionar escopo”, selecione a assinatura ou grupo de recursos e clique em “Selecionar”.
  • Clique em “Avançar”.

6️⃣ Revisar e criar

  • Verifique todas as configurações.
  • Clique em “Criar” para finalizar.

Agora a Custom Role estará disponível para ser atribuída a usuários, grupos ou identidades gerenciadas! 🎯

🔧 Como criar uma função personalizada (Custom Role)

As funções personalizadas são definidas em JSON e incluem:

  • Nome
  • Descrição
  • Permissões permitidas e negadas
  • Escopo (Subscription, Resource Group ou Resource)

🔹 Exemplo de JSON de um Azure Custom Role

{
  "Name": "Custom Virtual Machine Operator",
  "IsCustom": true,
  "Description": "Permite iniciar, parar e reiniciar máquinas virtuais, mas não excluí-las.",
  "Actions": [
    "Microsoft.Compute/virtualMachines/start/action",
    "Microsoft.Compute/virtualMachines/deallocate/action",
    "Microsoft.Compute/virtualMachines/restart/action"
  ],
  "NotActions": [
    "Microsoft.Compute/virtualMachines/delete/action"
  ],
  "AssignableScopes": [
    "/subscriptions/{subscriptionId}"
  ]
}

🔍 Explicação:

  • Actions: Lista de permissões concedidas.
  • NotActions: Permissões explicitamente negadas.
  • AssignableScopes: Define em quais escopos essa função pode ser atribuída

🔹 Como importar uma Custom Role JSON usando a opção “Start from JSON” no Portal do Azure

Se você deseja criar uma função personalizada (Custom Role) a partir de um arquivo JSON existente usando a opção “Start from JSON”, siga os passos abaixo:


1️⃣ Acesse o Portal do Azure

  • Vá para https://portal.azure.com
  • No menu de pesquisa, digite “IAM” ou “Controle de Acesso (IAM)”
  • Acesse a seção “Controle de Acesso (IAM)” no nível desejado (Assinatura, Grupo de Recursos ou Recurso específico).

2️⃣ Criar uma nova função personalizada

  • Clique na aba “Funções (Roles)”.
  • Clique em “+ Criar”“Nova função personalizada”.

3️⃣ Selecionar “Start from JSON”

  • Na aba “Informações básicas”, procure a opção “Baseline de Permissões”.
  • Selecione “Start from JSON”.
  • Clique no botão “Upload JSON” e selecione o arquivo JSON da sua função personalizada.

4️⃣ Revisar e modificar (se necessário)

  • Depois de carregar o JSON, os campos serão preenchidos automaticamente.
  • Revise as permissões na aba “Permissões”.
  • Se necessário, ajuste as ações permitidas (“Actions”) e ações negadas (“NotActions”).

5️⃣ Definir escopo

  • Na aba “Escopo de Atribuição”, clique em “+ Adicionar escopo”.
  • Selecione a assinatura, grupo de recursos ou recurso específico onde a função pode ser usada.

6️⃣ Revisar e Criar

  • Verifique todas as configurações.
  • Clique em “Criar” para finalizar a importação da Custom Role.

Agora sua função personalizada foi importada com sucesso!

Ela poderá ser atribuída a usuários, grupos ou identidades gerenciadas conforme necessário.

🏆 Benefícios do Azure Custom Role

✅ Maior segurança – Princípio do menor privilégio
✅ Controle granular sobre permissões
✅ Melhoria na governança e conformidade
✅ Redução de riscos de acesso indevido

Assista ao meu vídeo no canal Azure Xplorer e veja como configurar uma Custom Role utilizando um arquivo JSON.

Fonte Microsoft Learn:

https://learn.microsoft.com/pt-br/azure/role-based-access-control/overview

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *