Mascaramento de dados do pós -gres com o anonimizador do PostGresql

Mascaramento de dados do pós -gres com o anonimizador do PostGresql
Ao usar o sistema de gerenciamento de banco de dados PostGresql, precisamos ocultar inteiro ou parte dos dados dos usuários para manter dados sensíveis protegidos e não utilizados. Isso pode ser feito através de diferentes abordagens, mas aqui explicaremos um dos processos comumente usados ​​de mascaramento de dados.

Mascaramento de dados

É o método usado para proteger dados sensíveis importantes, substituindo os valores por alguns valores alternativos que são realisticamente equivalentes. O mascaramento de dados também é conhecido como guarda -chuva para os dados que ocultam a peça nela e protegem os dados de usuários indesejados.

PostgreSQL Anonymizer

É uma extensão PostGresql criada para ocultar ou substituir detalhes pessoais ou aplicar uma máscara nas informações. Esta técnica é aplicada com o procedimento de mascaramento, criando papéis.

A funcionalidade do mascaramento de dados

Ao usar mascaramento de dados, nossos requisitos legais são confirmados para manter os dados privados, como PCI-DSS e outros regulamentos, são criados para garantir que os dados permaneçam privados. Ele protege os segredos da informação, pois muitas organizações trabalham com registros críticos de alto tempo, que devem ser protegidos dos concorrentes.

Funcionando do processo:

  • Configuramos o sistema PostgreSQL para configurar o mascaramento de dados.
  • Criamos um usuário para os backups seguros.
  • Então também, um backup mascarado é criado.
  • Os backups seguros são fornecidos aos desenvolvedores.

Papel

Uma função pode ser um único usuário ou talvez um grupo de usuários. Uma função é a entidade do banco de dados PostGresql que oferece propriedade PostGresql e fornece os privilégios de banco de dados. Por exemplo, um usuário de login é uma função que torna o novo usuário ser conectado ao banco de dados PostGresql. Através dos comandos e das opções do painel pgadmin, uma função é criada.

Implementação

Vá para o painel de administração do PostgreSQL. Forneça a senha para a conexão do banco de dados com o servidor assim que for estabelecido. Agora abra a ferramenta de consulta e use o comando para criar uma função. No PostgreSQL, uma função é criada para o usuário aplicando qualquer condição ou lógica separadamente a todos os comandos. Sempre que usamos essa função em nossos comandos, a lógica ou a condição é aplicada automaticamente a esse comando. Então aqui, um papel chamado Role1 é criado. Como comando, usamos a consulta abaixo.

>> Crie função de função1; Comentário sobre a função1 é 'mascarado';

Isso causará um comentário mascarado no comando onde usaremos a função. Este é o primeiro comentário usado que mascarará ou ocultará os itens. Sempre que queremos mascarar qualquer elemento ou coluna, usaremos a função especificada nessa coluna. Depois de criar a função, agora aplicaremos os efeitos em uma coluna específica em uma tabela. Portanto, selecione uma tabela na qual você deseja aplicar uma máscara. Selecionamos uma tabela chamada 'paciente' com três atributos: id, nome e telefone de um paciente.

>> selecione * dos pacientes;

Este comando exibirá os dados em cada linha. Agora aplicaremos o comentário de mascarado na coluna 'Nome'. O 'anon' é o nome da extensão na pasta PostGresql. Aqui a função Random_name () é chamada, que retornará um nome aleatório anônimo. E esse nome será substituído pelo nome original. É assim que uma máscara é aplicada para métodos de segurança.

>> Comente no paciente da coluna.o nome é 'mascarado com função anon.random_name () ';

Isso acessará a tabela e, em seguida, a coluna especificada, como você pode ver que um método 'Dot' é usado aqui. Esta máscara ocultará os nomes originais da coluna; Quando o papel for aplicado, você verá os resultados.

O próximo passo é aplicar o comentário de uma máscara na coluna 'telefones' da tabela 'paciente'. Alguma porção é visível, enquanto outros serão ocultos. O sinal do dólar indica que aqui o número original aparecerá. Enquanto o '*' mostra que o número não é visível. No local do número, um asterisco será colocado como na senha; As letras estão escondidas.

>> Comente no paciente da coluna.Os telefones são 'mascarados com função e.parcial (telefones, 2, $$*-***-** $$, 2) ';

O parâmetro '2' significa que apenas dois números podem ser visíveis nas duas extremidades. Agora usaremos uma instrução Select simples para visualizar os resultados de uma linha específica. Esta visão será o que um usuário normal verá, no qual não aplicamos nenhuma máscara.

>> selecione * do paciente onde id = '3';

Você pode ver que todos os dados são visíveis. Um usuário normal pode atualizar, visualizar, excluir e executar quase todas as operações sobre a relação do banco de dados PostgreSQL. Mas para restringir alguns dados, usamos a máscara como o comentário que é aplicado ao papel. Ao usar esta máscara, um usuário não pode executar qualquer atualização sobre qualquer comando na tabela como excluir, atualizar ou mesmo não pode ver os resultados corretamente. Como vimos a visão do usuário normal, agora veremos o que o usuário mascarado verá na execução da mesma consulta. Para esse fim, precisamos aplicar e definir a função que criamos os comentários da máscara sobre ele. Caso contrário, a máscara não será aplicada e a visão será a mesma que acima.

>> Defina função de função1; Selecione * FRPM PACIENT WHERE ID = '3';

Agora lembre -se dos comentários que aplicamos; Duas máscaras foram criadas. Uma na coluna 'nome' para aplicar qualquer nome aleatório e uma na coluna 'telefones' para ocultar dados parciais. Agora, na execução, você pode ver que o nome 'Robert James' na linha 3 é substituído por um nome aleatório 'Sheetle' e, da mesma forma, o número na coluna 'telefones' também está escondido. Somente o primeiro e os dois números são visíveis de acordo com a condição que aplicamos.

Esses comentários 'mascarados' são importantes para manter a privacidade. E manter seus dados intactos e visíveis apenas para as pessoas que você deseja.

Ao aplicar a função1, o usuário deseja buscar o registro de uma pessoa específica aplicando outra consulta.

>> Defina função de função1; Selecione * do paciente onde o nome é 'sushi azaar';

A palavra -chave 'ilike' age da mesma forma que uma declaração igual. Na execução do comando, você verá que 0 linhas são mostradas devido à função adicionada ao comando; Se você remover a função da consulta, os resultados serão exibidos da tabela.

Da mesma forma, agora aplicando uma declaração de exclusão solicitando a função.

>> Defina a função da função1 Excluir do paciente onde id = '3';

Não excluirá nenhuma linha da tabela à medida que o papel é aplicado e, portanto, os privilégios são restritos. E se o usuário tentar atualizar a tabela usando uma consulta, ele/ela não poderá fazê -lo, pois o papel é mencionado no comando.

Conclusão

Este artigo contém informações sobre a integridade dos dados dos hackers ou da pessoa que você deseja ocultar os dados. O processo envolve o mascaramento de dados, o que é feito criando um papel no PostgreSQL. Os dados podem ser substituídos ou parcialmente ocultos. Ambos os tipos são explicados com exemplos que são implementados em uma coluna da tabela.