Controle de acesso baseado em função do Azure

Direitos e privilégios de acesso baseados em grupo são uma boa prática. Lidar com grupos em vez de usuários individuais simplifica a manutenção de políticas de acesso, fornece gerenciamento de acesso consistente entre equipes e reduz erros de configuração. Atribuir e remover usuários de grupos, conforme apropriado, ajuda a manter os privilégios dos usuários sempre atualizados. O RBAC do Azure (controle de acesso baseado em função do Azure) oferece gerenciamento de acesso refinado aos recursos organizados em torno das funções de usuário.

Para obter uma visão geral das práticas de RBAC do Azure recomendadas como parte de uma estratégia de identidade e segurança, confira Melhores práticas de segurança para controle de acesso e gerenciamento de identidades do Azure.

Visão geral do controle de acesso baseado em função do Azure

Usando o controle de acesso baseado em função do Azure, você pode separar tarefas em sua equipe e conceder acesso suficiente apenas para usuários, grupos, entidades de serviço ou identidades gerenciadas específicas do Microsoft Entra executarem seus trabalhos. Em vez de conceder a todos acesso irrestrito à assinatura ou aos recursos do Azure, você pode limitar as permissões para cada conjunto de recursos.

As definições de função do Azure listam as operações que são permitidas ou não aos usuários ou grupos a quem cada função foi atribuída. O escopo de uma função especifica a quais recursos as permissões definidas se aplicam. O escopo pode ser especificado em vários níveis: grupo de gerenciamento, assinatura, grupo de recursos ou recursos. Os escopos são estruturados em uma relação pai/filho.

Azure RBAC scope hierarchy

Para obter instruções detalhadas de atribuição de usuários e grupos a funções específicas e de atribuição de funções a escopos, confira Adicionar ou remover atribuições de função do Azure usando o portal do Azure.

Ao planejar sua estratégia de controle de acesso, use um modelo de acesso com privilégios mínimos que conceda aos usuários somente as permissões necessárias para executar seu trabalho. O diagrama a seguir mostra um padrão sugerido para o uso do RBAC do Azure por meio dessa abordagem.

Suggested pattern for using Azure RBAC

Observação

Quanto mais específicas ou detalhadas forem as permissões definidas, maior será a probabilidade de que seus controles de acesso se tornem complexos e difíceis de gerenciar. A probabilidade de que isso seja verdadeiro aumenta à medida que a propriedade digital da sua nuvem cresce de tamanho. Evite permissões específicas para cada recurso. Em vez disso, use grupos de gerenciamento para controle de acesso no âmbito de toda a empresa e grupos de recursos para controle de acesso no âmbito de assinaturas. Evite também permissões específicas para cada usuário. Em vez disso, atribua acesso a grupos na ID do Microsoft Entra.

Usar funções internas do Azure

O Azure fornece várias definições de funções internas, com três funções principais para fornecer acesso:

  • A função de Proprietário pode gerenciar tudo, inclusive o acesso aos recursos.
  • A função de Colaborador pode gerenciar tudo, exceto o acesso aos recursos.
  • A função de Leitor pode exibir tudo, mas não fazer alterações.

Desses níveis de acesso principais em diante, funções internas adicionais fornecem controles mais detalhados para acessar tipos de recursos específicos ou recursos do Azure. Por exemplo, você pode gerenciar o acesso a máquinas virtuais usando as seguintes funções internas:

Para outro exemplo de como usar as funções internas para gerenciar o acesso a recursos específicos, confira a discussão sobre como controlar o acesso a recursos de acompanhamento de custos em Como acompanhar os custos em unidades de negócios, ambientes ou projetos.

Para obter uma lista completa das funções internas disponíveis, confira Funções internas do Azure.

Usar funções personalizadas

Embora as funções internas do Azure sejam compatíveis com uma ampla variedade de cenários de controle de acesso, elas podem não atender a todas as necessidades de sua organização ou equipe. Por exemplo, se você tiver um único grupo de usuários responsável por gerenciar máquinas virtuais e recursos do Banco de Dados SQL do Azure, talvez queira criar uma função personalizada para otimizar o gerenciamento dos controles de acesso necessários.

A documentação do RBAC do Azure contém instruções sobre como criar funções personalizadas, juntamente com detalhes sobre como funcionam as definições de função.

Separação de responsabilidades e funções para organizações de grande porte

O RBAC do Azure permite que as organizações atribuam várias tarefas de gerenciamento a diferentes equipes dentro de grandes propriedades digitais de nuvem. Ele pode permitir que as equipes centrais de TI controlem os principais recursos de acesso e segurança, além de fornecer aos desenvolvedores de software e a outras equipes grandes quantidades de controle sobre cargas de trabalho ou grupos de recursos específicos.

A maioria dos ambientes de nuvem também pode se beneficiar de uma estratégia de controle de acesso que use várias funções e enfatize uma separação de responsabilidades entre essas funções. Essa abordagem exige que todas as alterações significativas nos recursos ou na infraestrutura envolvam várias funções para serem concluídas, designando mais de uma pessoa para analisar e aprovar cada alteração. Essa separação de responsabilidades limita a capacidade de uma única pessoa acessar dados confidenciais ou introduzir vulnerabilidades sem o conhecimento de outros membros da equipe.

A tabela a seguir ilustra um padrão comum para dividir as responsabilidades de TI em funções personalizadas separadas:

Grupo Nome da função comum Responsibilities
Operações de segurança SecOps Fornece supervisão geral de segurança.
Estabelece e impõe a política de segurança, como a criptografia em repouso.

Gerencia as chaves de criptografia.

Gerencia as regras de firewall.
Operações de rede NetOps Gerencia a configuração e as operações de rede em redes virtuais, como rotas e emparelhamentos.
Operações de sistema SysOps Especifica as opções de infraestrutura de armazenamento e computação e mantém os recursos que foram implantados.
Desenvolvimento, teste e operações DevOps Compila e implanta recursos e aplicativos de carga de trabalho.

Opera recursos e aplicativos para atender aos contratos de nível de serviço e a outros padrões de qualidade.

O detalhamento de ações e permissões nessas funções padrão é geralmente o mesmo nos aplicativos, nas assinaturas ou em toda a propriedade digital de nuvem, mesmo que essas funções sejam executadas por pessoas diferentes em diferentes níveis. Da mesma forma, você pode criar um conjunto comum de definições de função do Azure para aplicar a diferentes escopos do seu ambiente. Então uma função comum poderá ser atribuída aos usuários e grupos, mas apenas para o escopo de recursos, grupos de recursos, assinaturas ou grupos de gerenciamento que eles forem responsáveis por gerenciar.

Por exemplo, em uma topologia de rede hub e spoke com várias assinaturas, você pode ter um conjunto comum de definições de função para o hub e todos os spokes de carga de trabalho. A função NetOps de uma assinatura de hub pode ser atribuída a membros da equipe de IT central da organização, que são responsáveis por manter a rede para serviços compartilhados usados por todas as cargas de trabalho. Uma função NetOps da assinatura do spoke da carga de trabalho pode ser atribuída aos membros de equipe dessa carga de trabalho específica, permitindo que eles configurem a rede nessa assinatura para dar melhor suporte aos seus requisitos de carga de trabalho. A mesma definição de função é usada para ambas, mas as atribuições baseadas em escopo garantem que os usuários tenham apenas o acesso de que realmente precisam para executar seu trabalho.