Visão geral do RBAC de dados

Compatível com:

O controle de acesso baseado em função de dados (RBAC de dados) é um modelo de segurança que usa funções de usuário individuais para restringir o acesso aos dados em uma organização. Com o RBAC de dados, os administradores podem definir escopos e atribuí-los aos usuários para garantir que eles acessem apenas os dados necessários para as funções de trabalho.

Esta página oferece uma visão geral do RBAC de dados e ajuda você a entender como os rótulos e os escopos funcionam juntos para definir permissões de acesso aos dados.

Diferença entre RBAC de dados e RBAC de recursos

O RBAC de dados e o RBAC de recursos são métodos para controlar o acesso em um sistema, mas se concentram em aspectos diferentes.

O RBAC de recursos controla o acesso a recursos ou funcionalidades específicas em um sistema. Ele determina quais recursos estão acessíveis aos usuários com base nas funções deles. Por exemplo, um analista júnior pode ter acesso apenas para visualizar painéis, mas não para criar ou modificar regras de detecção, enquanto um analista sênior pode ter permissões para criar e gerenciar regras de detecção. Para mais informações sobre o RBAC de recursos, consulte Configurar o controle de acesso a recursos usando o IAM.

O RBAC de dados controla o acesso a dados ou informações específicas em um sistema. Ele controla se um usuário pode visualizar, editar ou excluir dados com base nas funções dele. Por exemplo, em um sistema de gestão de relacionamento com o cliente (CRM), um representante de vendas pode ter acesso aos dados de contato do cliente, mas não aos dados financeiros, enquanto um gerente financeiro pode ter acesso aos dados financeiros, mas não aos dados de contato do cliente.

O RBAC de dados e o RBAC de recursos são usados juntos para fornecer um sistema de controle de acesso abrangente. Por exemplo, um usuário pode ter permissão para acessar um recurso específico (RBAC de recurso) e, dentro desse recurso, o acesso a dados específicos pode ser restrito com base na função dele (RBAC de dados).

Planejar a implementação

Para planejar sua implementação, revise a lista de papéis e permissões predefinidos do Google SecOps e alinhe-os às necessidades da sua organização. Crie uma estratégia para definir escopos e rotular os dados recebidos. Verifique se você tem o papel de Leitor de papéis (roles/iam.roleViewer) para gerenciar escopos. Identifique quais membros precisam ter acesso aos dados nesses escopos.

Se a organização precisar de políticas do IAM além das funções predefinidas do Google SecOps, crie funções personalizadas para atender a requisitos específicos.

Papéis do usuário

Os usuários podem ter acesso a dados restrito (usuários restritos) ou global (usuários globais).

  • Os usuários com escopo têm acesso limitado aos dados com base nos escopos atribuídos. Esses escopos restringem a visibilidade e as ações a dados específicos. As permissões específicas associadas ao acesso limitado estão detalhadas na tabela a seguir.

  • Os usuários globais não têm escopos atribuídos e têm acesso irrestrito a todos os dados no Google SecOps. As permissões específicas associadas ao acesso global estão detalhadas na tabela a seguir.

O acesso global substitui o acesso limitado. Se um usuário tiver uma função global e uma função com escopo, ele terá acesso a todos os dados, independentemente das restrições impostas pela função com escopo.

Os administradores de RBAC de dados podem criar escopos e atribuí-los a usuários para controlar o acesso aos dados no Google SecOps. Para restringir um usuário a determinados escopos, é necessário atribuir a ele o papel de acesso restrito a dados da API Chronicle (roles/chronicle.restrictedDataAccess) junto com um papel predefinido ou personalizado. A função "Acesso restrito a dados da API Chronicle" identifica um usuário como um usuário com escopo. Não é necessário atribuir a função de acesso a dados restritos do Chronicle a usuários que precisam de acesso a dados globais.

As seguintes funções podem ser atribuídas aos usuários:

Tipo de acesso Papéis Permissões
Acesso global predefinido Os usuários globais podem receber qualquer um dos papéis predefinidos do IAM.
Acesso somente leitura predefinido e limitado Acesso a dados restritos da API Chronicle (roles/chronicle.restrictedDataAccess) e Leitor de acesso a dados restritos da API Chronicle (roles/chronicle.restrictedDataAccessViewer) Leitor de acesso a dados restritos da API Chronicle
Acesso personalizado no escopo Acesso restrito a dados da API Chronicle (roles/chronicle.restrictedDataAccess) e função personalizada (para definição de RBAC de recursos) Permissões personalizadas em recursos
Acesso global personalizado Permissão chronicle.globalDataAccessScopes.permit e acesso global aos dados da API Chronicle (roles/globalDataAccess) Permissões globais nos recursos

A seguir, uma descrição de cada tipo de acesso apresentado na tabela:

Acesso global predefinido:geralmente é necessário para usuários que precisam acessar todos os dados. É possível atribuir um ou mais papéis a um usuário com base nas permissões necessárias.

Acesso somente leitura com escopo predefinido:para usuários que precisam de acesso somente leitura. A função de acesso restrito a dados da API Chronicle identifica um usuário como um usuário no escopo. A função de leitor de acesso a dados restritos da API Chronicle dá acesso de visualização aos usuários nos recursos deles.

Acesso com escopo personalizado:a função de acesso restrito a dados da API Chronicle identifica um usuário como um usuário com escopo. A função personalizada especifica os recursos que o usuário pode acessar. Os escopos adicionados à função de acesso restrito a dados da API Chronicle especificam os dados que os usuários podem acessar nos recursos.

Para verificar se os escopos personalizados do RBAC funcionam corretamente, inclua a permissão chronicle.dataAccessScopes.list ao criar os papéis personalizados. No entanto, não inclua as permissões chronicle.DataAccessScopes.permit ou chronicle.globalDataAccessScopes.permit. Essas permissões podem ser incluídas se você usou o editor ou administrador da API Chronicle predefinido como ponto de partida para seus papéis personalizados.

Acesso global personalizado:é para usuários que precisam de permissões irrestritas nos recursos atribuídos. Para conceder acesso global personalizado a um usuário, especifique a permissão chronicle.globalDataAccessScopes.permit além do papel personalizado atribuído a ele.

Controle de acesso com escopos e rótulos

Com o Google SecOps, é possível controlar o acesso aos dados dos usuários usando escopos. Os escopos são definidos com a ajuda de rótulos que definem os dados a que um usuário no escopo tem acesso. Durante a ingestão, os metadados são atribuídos aos dados na forma de rótulos, como namespace (opcional), metadados de ingestão (opcional) e tipo de registro (obrigatório). São marcadores padrão aplicados aos dados durante a ingestão. Além disso, é possível criar rótulos personalizados. É possível usar rótulos padrão e personalizados para definir seus escopos e o nível de acesso aos dados que eles vão definir.

Visibilidade de dados com rótulos de permissão e negação

Cada escopo contém um ou mais rótulos permitir acesso e, opcionalmente, rótulos negar acesso. Os rótulos de acesso permitem que os usuários acessem os dados associados a eles. Os rótulos de negação de acesso impedem que os usuários acessem os dados associados a eles. As rotulagens de negação de acesso substituem as de permissão de acesso ao restringir o acesso do usuário.

Em uma definição de escopo, os rótulos de acesso do mesmo tipo (por exemplo, tipo de registro) são combinados usando o operador OR, enquanto os rótulos de tipos diferentes (por exemplo, tipo de registro e um rótulo personalizado) são combinados usando o operador AND. Os rótulos de negação de acesso são combinados usando o operador OR. Quando vários rótulos de negar acesso são aplicados em um escopo, o acesso é negado se eles corresponderem a QUALQUER UM desses rótulos.

Por exemplo, considere um sistema do Cloud Logging que categoriza registros usando os seguintes tipos de rótulo:

Tipo de registro:acesso, sistema, firewall

Namespace:App1, App2, Database

Gravidade:crítica, alerta

Considere um escopo chamado "Restricted logs" (Registros restritos) com o seguinte acesso:

Tipo de rótulo Valores permitidos Valores negados
Tipo de registro Acesso, firewall Sistema
Namespace App1 App2, banco de dados
Gravidade Aviso Crítico

A definição de escopo é assim:

Permitir:(Log type: "Access" OR "Firewall") AND (Namespace: "App1") AND (Severity: "Warning")

Negar:Log type: "System" OR Namespace: App2 OR Namespace: Database OR Severity: "Critical"

Exemplos de registros que correspondem ao escopo:

  • Registro de acesso do App1 com gravidade: aviso
  • Registro de firewall do App1 com gravidade: aviso

Exemplos de registros que não correspondem ao escopo:

  • Registro do sistema do App1 com gravidade: aviso
  • Registro de acesso do banco de dados com gravidade: aviso
  • Registro de firewall do App2 com gravidade: crítica

Visibilidade dos dados em eventos enriquecidos

Os eventos enriquecidos são eventos de segurança que foram aprimorados com contexto e informações adicionais além do que os dados de registro brutos contêm. Os eventos enriquecidos só ficam acessíveis em um escopo se o evento de base também estiver acessível e se nenhum dos rótulos enriquecidos incluir um rótulo de negação do escopo.

Por exemplo, considere um registro bruto que indica uma tentativa de login com falha de um endereço IP e tem um rótulo enriquecido user_risk: high (indica um usuário de alto risco). Um usuário com um escopo que tem o rótulo de negação user_risk: high não pode ver as tentativas de login com falha de usuários de alto risco.

Impacto do RBAC de dados nos recursos do Google Security Operations

Depois que o RBAC de dados é configurado, os usuários começam a ver dados filtrados nos recursos do Google Security Operations. O impacto depende de como o recurso é integrado aos dados subjacentes. Para entender como o RBAC de dados afeta cada recurso, consulte Impacto do RBAC de dados nos recursos do Google Security Operations.

A seguir

Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.