Modelos RBAC, ABAC e PBAC

Publicado

Por

Douglas Rondon

Dentro do universo de Gestão de Identidade, existem diversos protocolos, frameworks e metodologias para auxiliar nas decisões e implantação dos projetos. Quando tratamos  de autorização e do processo de determinar quem pode acessar o quê, temos as técnicas de RBAC, ABAC ou PBAC e algumas de suas variações.

Neste artigo veremos o conceito principal de cada um destes modelos, como são aplicados, semelhanças, diferenças e o cenário em que cada um se adequa melhor.

Role-Based Access Control (RBAC)

Como o próprio nome sugere, RBAC utiliza o conceito de roles (funções) para determinar o que um usuário pode ou não acessar, ou seja suas permissões. Dentro deste conceito um role geralmente se refere a um grupo de pessoas que compartilham certas características, como um departamento da empresa, um nível de senioridade, uma localização, etc.

Ao utilizar o RBAC, você analisa as necessidades de seus usuários e os agrupa em funções com base em responsabilidades comuns. Em seguida, você atribui uma ou mais funções a cada usuário e uma ou mais permissões a cada função. Os relacionamentos de função de usuário e permissões de função simplificam a execução de atribuições de usuário, pois os usuários não precisam mais ser gerenciados individualmente, mas têm privilégios que estão de acordo com as permissões atribuídas à sua função

  • Benefícios: A principal vantagem do RBAC é sua simplicidade na administração de permissões, uma vez que as suas regras dentro do sistema são simples e fáceis de executar. De forma geral, os trabalhos acontecem rapidamente e requerem menos poder de processamento.
  • Desafios: Em alguns contextos, para ter maior granularidade nos seus sistemas, administradores adicionam mais funções/roles. Isso pode levar a um aumento da complexidade com centenas ou até milhares de regras para gerenciar.
  • Cenários para aplicar: O RBAC costuma ser uma ótima escolha para organizações que desejam estabelecer um modelo de controle de acesso simples, eficaz e fácil de implementar  e gerenciar. Este modelo se encaixa bem em organizações com requisitos de controle de acesso mais diretos e um número limitado de funções. 

Attribute-Based Access Control (ABAC)

O modelo ABAC determina permissões com base em atributos específicos associados a usuários, recursos e outros elementos relevantes no contexto de controle de acesso.

Neste conceito, os atributos mencionados são usados para determinar as permissões de acesso através de um motor de decisão. Esse controle de acesso baseado em atributos analisa os atributos de um componente(sistema, diretório, etc) em relação às regras, que por sua vez definem quais combinações de atributos são autorizadas para que o sujeito execute com sucesso uma ação.

Dessa forma, o ABAC traz uma dinâmica que permite uma abordagem mais detalhada e granular para proteger recursos e aplicar políticas de segurança. 

  • Benefícios: Os administradores podem definir, aprimorar e gerenciar muitas variáveis com  regras específicas, garantindo um alto nível de controle e proteção dos ativos. 
  • Desafios: Definir, configurar e gerenciar variáveis e regras pode se tornar um esforço grande e que despende recursos. Além disso, a implementação e integração deste modelo pode se tornar complexa quando não existe padronização e interoperabilidade entre diferentes sistemas e ambientes.
  • Cenário para aplicar: Essa abordagem granular e adaptável torna o ABAC uma solução poderosa para empresas que precisam de um controle de acesso mais refinado, incorporando diferentes atributos.

Policy-Based Access Control (PBAC)

No modelo PBAC são utilizadas políticas pré-definidas para determinar as permissões de acesso dos usuários a recursos e informações em uma organização. Essas políticas são criadas e gerenciadas centralmente, descrevendo quais ações os usuários podem realizar em quais recursos e sob quais condições específicas. 

Na criação destas políticas são levados em consideração atributos dos usuários (cargo, departamento ou nível de autoridade) e características dos recursos (tipo de arquivo, localização ou proprietário) e então as políticas são expressas com uma combinação de atributos que detalham quem, o quê, quando, onde e como estes recursos podem ser acessados.

  • Benefícios: A principal vantagem do PBAC é o fato de ser dinâmico e sensível ao contexto, permitindo a adaptação das políticas de acordo com as necessidades da organização. Quando aplicado de forma correta, ganha-se uma gestão granular, eficiente e com regras de acesso complexas e refinadas.
  • Desafios: Implementar o PBAC não é uma tarefa rápida, necessitando de tempo e recursos para ajustar o melhor formato. Além disso, esse é um modelo mais recente e pode ser necessário customizar ferramentas ou trabalhar com soluções adicionais para implementar o conceito completo.
  • Cenário para aplicar: O modo como o PBAC foi projetado e quando bem executado, auxilia organizações que possuem requisitos de autorização complexos e em constante mudança.

Para fechar essa breve visão dos modelos RBAC, ABAC e PBAC, é importante mencionar que uma solução híbrida, combinando 2 ou as 3 soluções, pode ser a melhor abordagem em muitos casos, aplicando cada modelo em diferentes partes da infraestrutura de controle de acesso para melhor atender seus requisitos específicos.  

Como tantas outras decisões de Gestão de Identidade e Acesso, para definir qual destas abordagens são mais adequadas é necessário avaliar o contexto da empresa, considerando as necessidades de controle de acesso da organização, a complexidade do ambiente atual e as expectativas de crescimento futuro.

Douglas Rondon

Head of Product e Especialista em IAM, com forte conhecimento técnico e experiência nas áreas de produto, gestão de projetos, vendas e pré-vendas. Durante sua carreira, liderou equipes nestas diversas áreas e atuou em projetos locais e globais de IAM com diferentes setores da indústria.

Linkedin: https://www.linkedin.com/in/douglasrondon/