O ABC do controle de acesso e o que é melhor para serviços em nuvem
Comparar diferentes abordagens para disponibilizar mais dados para mais usuários, mantendo a segurança e a conformidade com as regulamentações de privacidade de dados.
À medida que o movimento de migração de dados empresariais para a nuvem ganha força, há um debate ativo sobre a melhor abordagem para protegê-los. Mas antes de falarmos sobre os detalhes das diversas estruturas de controle de acesso, vamos primeiro entender a amplitude dos desafios que uma empresa enfrenta quando começa a migrar seus dados para a nuvem. Em primeiro lugar, está a ampla variedade de serviços de armazenamento e análise ou computação oferecidos por provedores de nuvem e terceiros. Ou seja, quando uma empresa decide migrar seus dados para a nuvem, ela precisa decidir o tipo de repositório no qual irá armazenar seus dados.
Cada empresa de nuvem oferece muitos armazenamentos de dados diferentes e há uma dúzia de serviços diferentes para analisar dados depois que eles são migrados para a nuvem. Depois, há serviços de terceiros nativos da nuvem que permitem que plataformas de ciência de dados e data warehouses operem como parte da infraestrutura líder de nuvem pública. Cada um desses serviços oferece um mecanismo exclusivo para administrar o acesso aos consumidores de dados, como analistas de dados e cientistas da organização.
Se você acha que isso está começando a parecer muito com data lakes baseados em Hadoop, você está certo. Escusado será dizer que isso representa um fardo muito pesado para os administradores que precisam disponibilizar amplamente os dados na organização e cumprir as regulamentações de privacidade e do setor, como a Lei de Privacidade do Consumidor da Califórnia (CCPA), o Regulamento Geral de Proteção de Dados (GDPR) e o Regulamento de Saúde. Lei de Portabilidade e Responsabilidade de Seguros (HIPAA) ao mesmo tempo.
Os fundamentos de duas abordagens populares: RBAC vs. ABAC
Os mecanismos de controle de acesso fazem parte do cenário de TI empresarial desde o advento dos sistemas de computador e há dois aspectos principais no controle do acesso aos dados. A primeira diz respeito à autenticação da identidade do usuário e ao estabelecimento se o indivíduo ou sistema é realmente quem afirma ser. A segunda tem a ver com garantir que o usuário tenha a permissão adequada para acessar um sistema de dados, um processo conhecido como autorização. Estes princípios também se aplicam aos dados armazenados na nuvem. Hoje, o controle de acesso baseado em funções (RBAC) e o controle de acesso baseado em atributos (ABAC) são as duas abordagens mais prevalentes para gerenciar o acesso aos dados na empresa. O objetivo dessas abordagens é ajudar a definir e aplicar as políticas e os privilégios que concedem aos usuários autorizados acesso aos dados necessários.
O RBAC é baseado nos conceitos de usuários, funções, grupos e privilégios em uma organização. Os administradores concedem privilégios ou permissões a funções organizacionais predefinidas, funções atribuídas a sujeitos ou usuários com base na responsabilidade ou área de especialização. Por exemplo, um usuário ao qual é atribuída a função de gerente pode ter acesso a um conjunto diferente de objetos e/ou receber permissão para executar um conjunto mais amplo de ações neles em comparação com um usuário com a função atribuída de analista. Quando o usuário gera uma solicitação para acessar um objeto de dados, o mecanismo de controle de acesso avalia a função atribuída ao usuário e o conjunto de operações que essa função está autorizada a realizar no objeto antes de decidir se concede ou nega a solicitação.
O RBAC simplifica a administração de controles de acesso a dados porque conceitos como usuários e funções são construções bem compreendidas na maioria das organizações. Além de se basear em conceitos familiares de banco de dados, o RBAC também oferece aos administradores a flexibilidade de atribuir usuários a diversas funções, reatribuir usuários de uma função para outra e conceder ou revogar permissões conforme necessário. Depois que uma estrutura RBAC é estabelecida, a função do administrador é principalmente atribuir ou revogar funções específicas aos usuários. No RBAC, um usuário pode receber muitas funções, uma função pode ter muitos usuários e uma função/usuário pode executar muitas operações.
O conceito de controle de acesso baseado em atributos surgiu no início dos anos 2000. Antes do ABAC, o gerenciamento do acesso aos dados corporativos envolvia conceder permissão a um usuário ou sujeito para executar uma ação específica em uma entidade – neste caso, um banco de dados, tabela ou coluna. No ABAC, a decisão de conceder acesso ou solicitar a execução de uma operação em um objeto é baseada em atributos atribuídos ao sujeito, objeto, condições ambientais e um conjunto de políticas específicas para esses atributos e condições. As condições ambientais são fatores dinâmicos independentes do usuário ou objeto e podem incluir coisas como a hora e a localização do sujeito. Assim como assuntos ou usuários têm atributos, objetos como bancos de dados, arquivos ou tabelas também têm. Os atributos do objeto podem incluir autor, data de criação, versão, data de vigência, última atualização, etc.
ABAC opera atribuindo atributos a sujeitos e objetos e desenvolvendo políticas que regem regras de acesso a dados. Cada componente do sistema de informação recebe atributos específicos do objeto. Por exemplo, um arquivo pode ser classificado como propriedade intelectual (IP). Da mesma forma, a cada usuário ou sujeito no sistema podem ser atribuídos atributos que podem incluir a localização e o fuso horário do usuário. Com base nesses atributos, um administrador pode criar uma política de acesso que especifique que qualquer documento classificado como IP não pode ser acessado por um usuário localizado fora dos EUA ou que só pode ser acessado por usuários afiliados à empresa. departamento jurídico durante o horário de 8h00 e 17h00 PST. Agora você pode ver como o ABAC estende o conceito de função, usuários e privilégios para incluir atributos.
O ABAC também oferece diversas vantagens aos administradores de infraestrutura. Por exemplo, não exigem conhecimento de usuários ou assuntos específicos que necessitam de acesso aos dados. A combinação de atributos de usuário e objeto regidos por um conjunto de políticas pode acomodar um número ilimitado de usuários. À medida que novos usuários são adicionados à plataforma, eles também podem ser regidos pelo mesmo conjunto de regras. Como o ABAC não exige que os administradores tenham conhecimento prévio dos usuários, essa abordagem é mais adequada para ambientes onde indivíduos são adicionados e removidos rotineiramente da plataforma de dados.
Fazendo a escolha certa
É importante salientar que a distinção entre as abordagens RBAC e ABAC é cada vez mais confusa por plataformas de controle de acesso como o Apache Ranger, uma estrutura de governança de dados originalmente desenvolvida para gerenciar Big Data em data lakes Hadoop.
Hoje, o Apache Ranger é o principal projeto de código aberto para governança de acesso a dados para ambientes de Big Data, incluindo o Apache Spark. Ele está em uso em centenas de empresas em todo o mundo, utilizado para definir e aplicar políticas de controle de acesso a dados para controlar dados confidenciais, conforme exigido por regulamentações como GDPR e CCPA.
O Apache Ranger foi construído para gerenciar centralmente o acesso aos dados utilizados pelos diferentes motores que fazem parte das plataformas Hadoop. Ele é inerentemente projetado para lidar com a diversidade de armazenamento de dados e ambientes de computação apresentados por vários serviços de nuvem em uso nas empresas atualmente.
A abordagem do Apache Ranger para autorização de dados é baseada no ABAC, que é uma combinação de assunto, ação, recurso e ambiente. Ao mesmo tempo, o Ranger pode fornecer controle de acesso refinado aos usuários com base nos conceitos de função, usuário e permissão.
A melhor estratégia para organizações que migram para a nuvem é selecionar uma plataforma de controle de acesso a dados que encontre um equilíbrio entre capacitar os administradores para disponibilizar mais dados para mais consumidores de dados e cumprir as regulamentações do setor e de privacidade. Mais importante ainda, deve fazê-lo sem afetar negativamente o desempenho da plataforma de dados ou o comportamento do utilizador.