O que é Controle de acesso com base em função (RBAC)?
- Glossário do IAM
- O que é Controle de acesso com base em função (RBAC)?
O controle de acesso com base em função (RBAC) aproveita funções e privilégios definidos para restringir o acesso a sistemas aos usuários autorizados. O RBAC é a fundação do acesso de menor privilégio e também pode ser usado para implementar outros modelos de acesso, como controle de acesso com base em atributo (ABAC).
Como funciona o Controle de acesso com base em função?
A ideia por trás do controle de acesso com base em função é simples: limitar o acesso dos usuários a sistemas e dados apenas ao mínimo necessário para fazer o trabalho e nada mais. É um conceito conhecido como o princípio do menor privilégio (algumas vezes abreviado como PoLP).
Em um ambiente de acesso com base em função, a função de um usuário dentro da organização determina as permissões de rede específicas que ele recebe. Isso significa impedir que funcionários de nível mais baixo acessem informações e recursos altamente sensíveis, mas os níveis de acesso com base em função são normalmente mais granulares. Quando o RBAC é implementado de forma adequada, os usuários não devem conseguir acessar nenhum recurso fora de suas áreas designadas de trabalho. Por exemplo, funcionários de marketing não devem ter acesso a ambientes de desenvolvedores e vice-versa.
Além disso, o acesso com base em função é usado para restringir o que os usuários podem fazer com um sistema ou arquivo para o qual recebeu acesso. Um usuário pode ter acesso somente leitura a certos arquivos ou sistemas, como bancos de dados, mas acesso de leitura/gravação a outros.
RBAC vs. ABAC
O controle de acesso com base em função é frequentemente usado de forma sinônima com o controle de acesso com base em atributo. Apesar de o ABAC e o RBAC serem diferentes, o RBAC é frequentemente usado com o ABAC.
O ABAC é mais granular que o RBAC e pode ser considerado como uma extensão ou melhoria do acesso com base em função. Enquanto o RBAC depende da função de um usuário dentro da organização, em um modelo de ABAC os direitos de acesso dos usuários dependem de uma combinação de atributos, não apenas funções dos usuários. Eles incluem, sem limitação, a função do usuário na organização, de onde tentam acessar os recursos, o dispositivo que estão usando e os atributos associados com o sistema ou aplicativo que estão tentando acessar. Isso possibilita que as organizações concedam acesso e imponham restrições de acordo com o perfil de risco de um usuário individual.
Como exemplo, você pode querer que seus administradores de TI sejam restringidos de acessar remotamente os sistemas de back-end, a não ser que estejam usando uma VPN ou um gerenciador de conexão de área de trabalho remota, ou talvez queira impedir que todos os funcionários acessem recursos da empresa, a não ser que estejam usando um dispositivo fornecido pela empresa.
RBAC vs. Listas de controle de acesso (ACLs)
Uma lista de controle de acesso (ACL) é uma lista de usuários que têm acesso a um recurso particular, juntamente com os privilégios que cada usuário tem para esse recurso (somente leitura, leitura/gravação etc.). As ACLs são a fundação do modelo de controle de acesso discricionário (DAC).
O exemplo mais comum de ACLs e DAC em ação é o sistema de arquivos do Windows, que permite que usuários e administradores definam ACLs individuais para cada objeto, como um documento de texto ou uma pasta de arquivos.
As listas de controle de acesso, normalmente consistindo em endereços IP, também são usadas por administradores de rede para filtrar tráfego para VPNs, firewalls de aplicativos web (WAFs) e roteatores e switches de rede. A ACL pode conter uma "lista de permissão" de IPs permitidos ou uma "lista de bloqueio" de IPs não permitidos.
Se você acha que isso soa como muito trabalho, tem razão. Manter listas enormes de permissão e bloqueio é algo demorado e suscetível a erros, e é por isso que ACLs (e o modelo DAC) são úteis apenas em casos isolados envolvendo um número pequeno de usuários.
Em resumo: enquanto o RBAC define privilégios de acesso no nível de grupo, uma ACL define-os no nível de usuário individual ou IP. Isso torna o RBAC muito menos trabalhoso e suscetível a erros do que listas de controle de acesso, o que o torna muito mais viável em um ambiente comercial com dezenas, centenas ou até mesmo milhares de usuários.
Quais são os benefícios do RBAC?
Há muitos benefícios na implementação do controle de acesso com base em função, incluindo:
Melhoria da segurança.
Limitar o acesso dos funcionários apenas aos recursos de que precisam para realizar seu trabalho impede que pessoas internas descuidadas ou maliciosas excluam, exfiltrem ou comprometam a integridade de arquivos e outros ativos digitais, como bancos de dados e código fonte.
Adicionalmente, caso um ator de ameaça externo roube um conjunto de credenciais de login funcionais, o RBAC e o acesso de menor privilégio evitarão que se movam lateralmente dentro da rede e escalonem privilégios.
O RVAC e o acesso de menor privilégio também são componentes essenciais dos modelos de acesso de rede de confiança zero.
Apoio a iniciativas de conformidade
O acesso com base em função possibilita que as empresas atendam aos requisitos de conformidade regulamentares e do setor, incluindo HIPAA, o GDPR e outras estruturas de proteção de dados e privacidade que exigem controles de confidencialidade e privacidade para informações pessoalmente identificáveis (PII) e outros dados confidenciais. Isso é especialmente importante em setores altamente regulados, como cuidados de saúde e financeiro, bem como em agências governamentais.
Redução de custos gerais e custos administrativos indiretos
As funções de usuários predefinidas em um modelo de RBAC minimiza os custos administrativos indiretos ao integrar e desligar funcionários, quando os funcionários recebem novas funções ou responsabilidades de trabalho dentro da empresa ou quando a empresa precisa conceder acesso a um fornecedor ou terceirizado. Conceder acesso a um novo usuário ou alterar o acesso de um usuário existente é simplesmente uma questão de designar a ele as funções corretas. Da mesma forma, quando os usuários saem da empresa, os administradores de TI e de segurança podem revogar rapidamente seu acesso aos sistemas.
Ao dar aos administradores visibilidade sobre o acesso e as atividades dos usuários, o RBAC possibilita que as organizações identifiquem áreas em que podem usar de forma mais efetiva os recursos de rede, como largura de banda e armazenamento.
Como implementar o controle de acesso com base em função
1. Desenvolva uma estratégia que atenda às necessidades de sua empresa.
Antes de começar a definir funções, faça um inventário de seus sistemas para determinar que recursos precisam ter o acesso controlado. Identifique sistemas que processam ou armazenam informações sensíveis, como bancos de dados de clientes e ambientes de desenvolvedores, bem como sistemas aos quais todos precisam ter acesso, como sistemas de e-mail da empresa e de tíquetes da central de atendimento.
Além disso, examine os processos de negócios, as tecnologias, os requisitos de conformidade e a postura de segurança atual da empresa. Identifique lacunas existentes, como imposição inconsistente de políticas na organização.
Tenha em mente que talvez deseje usar o RBAC em conjunto com o ABAC ou outro modelo, particularmente se estiver implementando acesso de rede de confiança zero.
2. Defina funções dos usuários.
Agora, é hora de analisar sua força de trabalho e agrupar os usuários em funções que tenham necessidades de acesso similares. Comece com divisões amplas, como ver os usuários por departamento, e, em seguida, refina as funções dos usuários.
Certifique-se de não definir funções demais, pois isso acabaria com a finalidade de usar o RBAC. Considere usar um mapeamento de equipe para função, em que os usuários são designados diretamente para equipes, que podem então receber funções personalizadas. Isso poupará tempo, melhorará a consistência das políticas, reduzirá erros e facilitará o trabalho dos administradores com políticas de acesso com base em função.
Além disso, cuidado com outras armadilhas comuns, como granularidade insuficiente, superposição de funções e exceções em excesso para permissões do RBAC.
3. Estabeleça uma estrutura de governança apropriada
Depois de definir a estratégia de RBAC e as funções dos usuários, você precisará de uma força de impor as novas políticas, bem como um processo de gerenciamento de alterações para mudá-las à medida que as necessidades de seu negócio mudarem.
Desenvolva uma política de controle de acesso por escrito, contendo as regras e a orientação do modelo de RBAC, incluindo indicadores de desempenho, estratégias de gerenciamento de riscos, procedimentos de reavaliação de funções e mecanismos de imposição. Um conjunto claro de regras evita o "espalhamento de função" e conflitos internos entre departamentos e usuários individuais.
4. Implemente seu modelo de RBAC.
Uma organização grande, particularmente uma sem modelo com base em função, pode querer distribuir o novo plano em estágios para evitar confusão dos usuários e interrupção das operações diárias. Antecipe que haverá problemas ao longo do caminho, incluindo problemas que exigirão que você modifique seu plano original. Isso é normal e, ao distribuir o plano em estágios, poderá resolver os problemas mais facilmente.
5. Faça manutenção de seu modelo de RBAC.
Usuários vêm e vão. O negócio precisa mudar. A tecnologia muda. O mercado muda. Com tudo isso, os controles de acesso com base em função não se manterão. Colete feedback dos usuários, monitore continuamente sua postura de segurança e conduza revisões periódicas das funções, das atribuições de funções e dos registros de acesso para entender o que está funcionando e o que precisa ser ajustado.