Login

O que é o controle de acesso baseado em função (RBAC)?

O termo controle de acesso baseado em função (RBAC) refere-se a uma estratégia de autorização que organiza privilégios com base em uma função (daí o prefixo “baseado em função”). A estratégia de autorização do RBAC é comumente usada por organizações de médio a grande porte que precisam classificar o seu pessoal usando a atribuição de funções. As funções são associadas a direitos de acesso e permissões para usar recursos. Atribuir uma função a usuários individuais garante que eles tenham apenas as permissões necessárias para executar seu trabalho. Essa é uma parte importante de uma estratégia geral de segurança cibernética.

Essas funções podem refletir a estrutura organizacional e, muitas vezes, também diferentes departamentos. Em outras palavras, um funcionário em um determinado departamento pode receber direitos de acesso ao sistema com base nos requisitos da função, permitindo que ele acesse as informações relevantes para executar tarefas do trabalho. Por exemplo:

  • Um funcionário do departamento de RH pode ter direitos de acesso às informações da folha de pagamento, que são consideradas dados confidenciais. A empresa provavelmente restringiria esse acesso apenas a pessoas dentro desse departamento e impediria que outros funcionários acessassem esses dados.

  • No entanto, um gerente de departamento de vendas pode ter direitos de acesso a relatórios de vendas que não são acessíveis pelo pessoal de RH.

No entanto, o RBAC não é especificamente definido pelo departamento. Ele diz respeito muito mais às funções e às permissões associadas a essas funções. Por exemplo, a função de procurador pode ter privilégios associados à representação de uma empresa por motivos legais. Todos os usuários do departamento jurídico estarão na função de procuradores; no entanto, outros (por exemplo, o CEO e o conselho) também podem ter essa função. \ nO controle de acesso baseado em função faz parte de uma estratégia mais ampla de Gestão de Identidades e Acesso (IAM). Abaixo, discutimos o gerenciamento de acesso baseado em função (RBAC) e como ele pode ser usado para aplicar níveis de controle de permissão sobre recursos corporativos e informações confidenciais.

Exemplos de controle de acesso baseado em função

Aqui descrevemos como você usaria o RBAC para controlar os privilégios em um sistema que dá suporte ao gerenciamento de despesas. Este sistema fictício permite que o pessoal execute as seguintes ações:

  • Ler despesas
  • Criar despesas
  • Aprovar despesas
  • Pagar despesas

Estas ações representam as permissões disponíveis para os usuários do sistema.

Podemos agrupar essas permissões nas seguintes funções:

  • Apresentador de despesas (pode ler e criar despesas)
  • Aprovador de despesas e (pode ler e aprovar despesas)
  • Pagador de despesas (pode ler e pagar despesas)

Um sistema RBAC nos permite criar as funções que têm permissões de acesso associadas a recursos corporativos. Uma vez configurado, os gerentes de sistema podem atribuir usuários a essas funções com esse conjunto de permissões associado.

Vantagens do RBAC

A vantagem mais significativa da estratégia de RBAC é a capacidade de agrupar diferentes permissões para que possam ser atribuídas e revogadas coletivamente. Além disso, ao alterar o conjunto de permissões em uma função, ele nos permite alterar as permissões para um grupo de usuários em uma única etapa. Isso diminui o esforço relacionado ao tratamento de permissões em seu sistema.

Por exemplo, imagine que sua empresa decida que não aceitará novas despesas (talvez o pessoal que costumava apresentá-las agora tenha cartões corporativos). Nessa situação, para impedir que os usuários enviem novas reivindicações de despesas, um gerente de sistema simplesmente removeria a permissão "Criar despesa" do "Apresentador de despesas". Os usuários do aplicativo ainda seriam capazes de verificar as despesas que enviaram anteriormente, mas não seriam capazes de criar novas despesas.

Outra vantagem do uso do controle de acesso baseado em função é que a auditoria dos privilégios de usuário se torna mais gerenciável. Se você tiver problemas com as permissões atribuídas aos usuários, corrigi-las exigirá a edição de uma única função. Se você estivesse controlando permissões por usuário, teria que auditar centenas ou até mesmo milhares de usuários. Claro, isso é o resultado de uma definição de função bem projetada.

Uso da Auth0 para implementar o controle de acesso baseado em função

A Auth0, uma plataforma de identidade escolhida pelos clientes em todos os setores de mercado, envia o RBAC como parte de seu núcleo. A Auth0 ajuda a simplificar a implementação do RBAC para gerenciar permissões baseadas em funções.

Por exemplo, para proteger sua API de aplicativo com RBAC e Auth0, para que usuários com uma determinada função possam acessar a API, mas outros não, você precisará seguir uma receita simples que contém apenas quatro etapas:

  1. Primeiro, você precisará registrar a API em seu painel da Auth0.

  2. Depois de registrá-la, você precisará definir as permissões que esta API usará.

  3. Com as permissões mapeadas, sua próxima tarefa será criar as funções que organizarão essas permissões.

  4. Por fim, você precisará atribuir usuários a essas funções.

Controle de acesso baseado em atributo (ABAC) alternativo ao RBAC

Os cientistas da computação desenvolveram muitas estratégias de autorização para proteger seus sistemas de controle de acesso. O RBAC é apenas uma dessas estratégias. Entre as alternativas, está o controle de acesso baseado em atributo (ABAC). Essa estratégia usa um atributo de usuário (por exemplo, qualificação) em vez de uma função de usuário para conceder permissões de usuário para acessar recursos. Um exemplo de caso de uso: um fornecedor precisa provar que possui uma licença específica para executar o trabalho em uma organização. Mostrar a licença seria o atributo que permitiria que as permissões de acesso do usuário fossem concedidas.

Se você quiser saber mais sobre autenticação ou autorização, consulte os seguintes artigos:

Quer saber mais?

Continue lendo a Introdução ao IAM para conhecer outros tópicos sobre a Gestão de Identidades e Acesso.

Comece a construir gratuitamente