Na era dos dados, controlar quem pode ver ou fazer o quê é tão importante quanto os próprios dados.
Em um cenário cada vez mais orientado por informações sensíveis e sistemas distribuídos, o controle de acesso a dados se tornou um pilar essencial da segurança da informação. Diferentes modelos evoluíram para atender às demandas de flexibilidade, escalabilidade e precisão — do tradicional RBAC (Role-Based Access Control), baseado em papéis, ao poderoso e dinâmico ABAC (Attribute-Based Access Control), que leva em conta atributos do usuário e do contexto. Outros modelos, como o PBAC, focado em políticas declarativas, o ReBAC, baseado em relacionamentos, além dos clássicos DAC e MAC, oferecem abordagens distintas para diferentes realidades organizacionais. Entender essas opções é o primeiro passo para implementar uma estratégia de acesso realmente eficaz.

1. RBAC – Role-Based Access Control (Controle de Acesso Baseado em Papéis)

  • Permissões são atribuídas a papéis (roles), e os usuários recebem papéis.
  • Exemplo: um papel “Gerente” pode ter acesso a relatórios financeiros.
  • Vantagem: simples de gerenciar em organizações estruturadas.
  • Limitação: não é granular o suficiente para ambientes dinâmicos.

2. ABAC – Attribute-Based Access Control (Baseado em Atributos)

  • Permissões são baseadas em atributos de usuário, recurso, ação e ambiente.
  • Exemplo: “Permitir acesso se o usuário for do departamento X e for horário comercial”.
  • Vantagem: mais flexível e detalhado que RBAC.
  • Limitação: mais complexo de configurar e manter.

3. PBAC – Policy-Based Access Control (Baseado em Políticas)

  • Evolução do ABAC, mas com foco em políticas declarativas escritas em linguagens como XACML ou Rego (usado pelo Open Policy Agent – OPA).
  • Exemplo: política que define que usuários com clearance nível 3 podem acessar dados confidenciais durante o horário comercial.
  • Vantagem: centralização de regras de negócio, separando lógica de autorização do código-fonte.
  • Uso comum: APIs, microsserviços, Kubernetes.

4. ReBAC – Relationship-Based Access Control

  • Foca nas relações entre os usuários e os recursos (ex: proprietário, amigo, supervisor).
  • Exemplo: “Usuário pode editar um documento se for o proprietário ou estiver no mesmo projeto.”
  • Muito usado em: redes sociais, sistemas colaborativos (Google Drive, GitHub).
  • Ferramentas: Zanzibar (Google), AuthZed.

5. DAC – Discretionary Access Control (Controle Discricionário)

  • O proprietário do recurso decide quem pode acessar.
  • Exemplo: o criador de um arquivo decide quem pode ler ou escrever nele.
  • Vantagem: flexível para usuários.
  • Desvantagem: mais difícil de controlar em larga escala.

6. MAC – Mandatory Access Control (Controle de Acesso Obrigatório)

  • Baseado em políticas de segurança rígidas definidas pelo sistema (e não pelo usuário).
  • Utilizado em ambientes militares, com níveis de segurança (confidencial, secreto, top secret).
  • Exemplo: um usuário com clearance “Confidencial” não pode acessar um arquivo “Secreto”.

Comparação geral:

ModeloFlexibilidadeEscalabilidadeComplexidade
RBACMédiaAltaBaixa
ABACAltaAltaMédia/Alta
PBACMuito altaMuito altaAlta
ReBACAltaAltaMédia
DACAlta (local)BaixaBaixa
MACBaixaMédiaAlta

Comments are closed