O que é o Azure RBAC?
Quando se trata de identidade e acesso, a maioria das organizações que estão considerando usar a nuvem pública estão preocupadas com duas coisas:
- Garantir que as pessoas perderão o acesso aos recursos na nuvem quando saírem da organização.
- Atingir o equilíbrio certo entre autonomia e governança central; por exemplo, conferir às equipes de projeto a capacidade de criar e gerenciar máquinas virtuais na nuvem enquanto controla centralmente as redes que essas VMs usam para se comunicar com outros recursos.
O Microsoft Entra ID e o RBAC do Azure (controle de acesso baseado em função do Azure) trabalham juntos para simplificar a realização dessas metas.
Assinaturas do Azure
Primeiro, lembre-se de que cada assinatura do Azure está associada a um só diretório do Microsoft Entra. Usuários, grupos e aplicativos nesse diretório podem gerenciar recursos na assinatura do Azure. As assinaturas usam o Microsoft Entra ID para o SSO (logon único) e o gerenciamento de acesso. Você pode estender seu Active Directory local para a nuvem usando o Microsoft Entra Connect. Esse recurso permite que seus funcionários gerenciem suas assinaturas do Azure usando suas identidades de trabalho existentes. Quando você desabilita uma conta do Active Directory local, ela perde automaticamente o acesso a todas as assinaturas do Azure conectadas ao Microsoft Entra ID.
O que é o RBAC do Azure?
O controle de acesso baseado em função do Azure (Azure RBAC) é um sistema de autorização interno ao Azure Resource Manager que fornece gerenciamento de acesso refinado para recursos no Azure. Com o RBAC do Azure, você pode conceder o acesso exato de que os usuários precisam para realizar os trabalhos deles. Por exemplo, use o RBAC do Azure para permitir que um funcionário gerencie as máquinas virtuais em uma assinatura, enquanto outro pode gerenciar bancos de dados SQL na mesma assinatura.
O vídeo a seguir descreve o RBAC do Azure em detalhes:
Você pode conceder acesso ao atribuir a função do Azure apropriada a usuários, grupos e aplicativos em determinado escopo. O escopo de uma atribuição de função pode ser um grupo de gerenciamento, uma assinatura, um grupo de recursos ou um único recurso. Uma função atribuída a um escopo pai também concede acesso aos escopos filho contidos nele. Por exemplo, um usuário com acesso a um grupo de recursos pode gerenciar todos os recursos que ele contém, como sites, máquinas virtuais e sub-redes. A função do Azure que você atribui determina quais recursos o usuário, o grupo ou o aplicativo pode gerenciar dentro do escopo.
O diagrama a seguir mostra como as funções de administrador da assinatura clássica, as funções do Azure e as funções do Microsoft Entra se relacionam em um alto nível. As funções atribuídas em um escopo superior, como uma assinatura inteira, são herdadas por escopos filho, como instâncias de serviço.
No diagrama anterior, uma assinatura está associada apenas a um locatário do Microsoft Entra. Observe também que um grupo de recursos pode ter vários recursos, mas está associado a apenas uma assinatura. Embora não seja óbvio no diagrama, um recurso pode ser associado a apenas um grupo de recursos.
O que posso fazer com o RBAC do Azure?
Com o RBAC do Azure, você permite acesso aos recursos do Azure que você controla. Suponha que você precise gerenciar o acesso aos recursos no Azure para as equipes de desenvolvimento, engenharia e marketing. Você começou a receber solicitações de acesso e precisa aprender rapidamente como funciona o gerenciamento de acesso aos recursos do Azure.
Estes são alguns cenários que você pode implementar com o RBAC do Azure:
- Permitir que um usuário gerencie máquinas virtuais em uma assinatura e outro usuário gerencie redes virtuais
- Permitir que um grupo de administradores de banco de dados gerencie bancos de dados SQL em uma assinatura
- Permitir que um usuário gerencie todos os recursos em um grupo de recursos, como máquinas virtuais, sites e sub-redes
- Permitir que um aplicativo acesse todos os recursos em um grupo de recursos
RBAC do Azure no portal do Azure
Em várias áreas no portal do Azure, você verá um painel chamada Controle de acesso (IAM), também conhecido como gerenciamento de identidades e acesso. Nesse painel, você pode ver quem tem acesso a essa área e a função. Usando esse mesmo painel, você pode conceder ou remover o acesso.
Veja a seguir um exemplo do painel Controle de acesso (IAM) para um grupo de recursos. Neste exemplo, Alain recebeu a função Operador de Backup no grupo de recursos.
Como funciona o RBAC do Azure?
Você pode controlar o acesso aos recursos usando o RBAC do Azure com a criação de atribuições de função, que controlam como as permissões são impostas. Para criar uma atribuição de função, você precisa de três elementos: uma entidade de segurança, uma definição de função e um escopo. Considere esses elementos como "quem", "o quê" e "onde".
1. Entidade de segurança (quem)
Uma entidade de segurança é apenas um nome especial para um usuário, um grupo ou um aplicativo ao qual você deseja permitir acesso.
2. Definição de função (o que pode ser feito)
Uma definição de função é uma coleção de permissões. Às vezes, é chamada apenas de função. Uma definição de função lista as permissões que a função pode executar, como ler, escrever e excluir. As funções podem ser de alto nível, como Proprietário, ou específicas, como Colaborador da Máquina Virtual.
O Azure inclui várias funções internas que você pode usar. Esta é uma lista das quatro funções internas fundamentais:
- Proprietário: tem acesso total a todos os recursos, incluindo o direito de delegar acesso a outras pessoas
- Colaborador: pode criar e gerenciar todos os tipos de recursos do Azure, mas não pode conceder acesso a outras pessoas
- Leitor: pode exibir os recursos existentes do Azure
- Administrador de Acesso do Usuário: permite que você gerencie o acesso do usuário aos recursos do Azure
Se as funções internas não atenderem às necessidades específicas da sua organização, você poderá criar suas próprias funções personalizadas.
3. Escopo (onde)
Escopo é o nível em que o acesso se aplica. Isso será útil se você desejar tornar alguém um Colaborador do Site, mas apenas para um grupo de recursos.
No Azure, você pode especificar um escopo em vários níveis: grupo de gerenciamento, assinatura, grupo de recursos ou recurso. Os escopos são estruturados em uma relação pai-filho. Quando você concede acesso a um escopo pai, essas permissões são herdadas pelos escopos filho. Por exemplo, se você atribuir a função Colaborador a um grupo no escopo da assinatura, essa função será herdada por todos os grupos de recursos e recursos na assinatura.
Atribuição de função
Depois de determinar quem, o quê e onde, você poderá combinar esses elementos para conceder acesso. Uma atribuição de função é o processo de associar uma função a uma entidade de segurança em um escopo específico com a finalidade de conceder acesso. Para conceder acesso, crie uma atribuição de função. Para revogar o acesso, remova uma atribuição de função.
O exemplo a seguir mostra como o grupo de Marketing recebeu a função Colaborador no escopo do grupo de recursos de vendas.
O RBAC do Azure é um modelo de permissões
O RBAC do Azure é um modelo de permissões. Isso significa que, quando você recebe uma função, o RBAC do Azure permite que você execute determinadas ações, como leitura, gravação ou exclusão. Portanto, se uma atribuição de função conceder a você permissões de leitura em um grupo de recursos e uma atribuição de função diferente conceder a você permissões de gravação no mesmo grupo de recursos, você deverá ter permissões de leitura e gravação nesse grupo de recursos.
O RBAC do Azure tem as chamadas permissões NotActions
. Você pode usar NotActions
para criar um conjunto de permissões não autorizadas. O acesso que uma função concede, as permissões efetivas, é computado subtraindo-se as operações NotActions
das operações Actions
. Por exemplo, a função Colaborador tem Actions
e NotActions
. O curinga (*) em Actions
indica que ela pode executar todas as operações no plano de controle. Então você deve subtrair as seguintes operações em NotActions
para calcular as permissões efetivas:
- Excluir funções e atribuições de função
- Criar funções e atribuições de função
- Conceda ao chamador o acesso de Administrador de Acesso do Usuário no escopo do locatário
- Criar ou atualizar qualquer artefato de blueprint
- Excluir quaisquer artefatos de blueprint