Mascaramento de dados usando a semântica Mask at Read em Data Virtualization
Configure a máscara na semântica de leitura para que Data Virtualization ela mascare seus dados antes de avaliar a consulta.
Sobre essa tarefa
Habilite a configuração global Máscara na leitura para aplicar regras de mascaramento aos seus dados antes de Data Virtualization avaliar qualquer parte da consulta. A configuração padrão é Máscara no resultado, que aplica o mascaramento ao conjunto de resultados.
Com o Mask at Read, você adiciona uma camada extra de proteção aos seus dados, controlando como as regras de mascaramento de colunas definidas por IBM® Knowledge Catalog são aplicadas.
Para obter mais informações sobre tabelas de mascaramento em Data Virtualization com IBM Knowledge Catalog, consulte Mascaramento de dados virtuais em Data Virtualization.
- WHERE
- JOIN (INTERNO / ESQUERDA / DIREITA / EXTERNO ESQUERDO / EXTERNO DIREITO / EXTERNO COMPLETO)
- HAVING
- DENTRO
- GROUP BY
- ORDER BY
Funções necessárias
- Função Gerenciador
Casos de uso
- Máscara no exemplo de leitura
Com a opção Máscara em leitura, os dados são mascarados com o valor
Considere a seguinte consulta que você pode usar para determinar o salário de Holly Rhodes:0, preservando a privacidade dos seus dados durante todo o ciclo de vida da consulta.SELECT Salary FROM employee_info WHERE Name='Holly Rhodes' AND Salary=132000
- Máscara no exemplo de leitura usando predicados de consulta mascarados
- Considere o cenário em que você precisa:
- Buscar anônimo
PATIENT_ID. - Em seguida, faça consultas de acompanhamento com base nesse ID anônimo, sem saber o real (não mascarado)
PATIENT_ID.
Ao contrário da semântica Mask at Result, com a semântica Mask at Read, você não precisa conhecer e usar valores desmascarados para emitir predicados de consulta.
- Buscar anônimo
Restrições
- Se você ativar Máscara na leitura, as regras de filtragem de linhas que fazem Data Virtualization referência a colunas mascaradas serão avaliadas usando os valores não mascarados da tabela de referência.
- Os predicados de consulta não são empurrados para baixo quando fazem referência a colunas mascaradas, o que pode causar um impacto negativo no desempenho da consulta em comparação com o Mask at Result (comportamento padrão). Em vez Data Virtualization disso, realiza as seguintes ações:
- Busque todos os dados dos objetos de origem que participam da consulta.
- Mascare todas as linhas com regras de proteção de dados aplicáveis.
- Aplique os predicados.
- Se você referenciar uma coluna mascarada em um predicado de consulta (como em uma cláusula WHERE) e aplicar uma função de conversão de tipo (como CAST, VARCHAR, INTEGER e etc.), então esteja ciente do seguinte:
- O Data Virtualization otimizador de consultas não transfere essa conversão de tipo para a fonte de dados. Em vez disso, o otimizador de consultas aplica a conversão de tipos após a função de mascaramento ser aplicada.
- Como resultado, os dados podem ser recuperados da fonte em um tipo de dados que não é compatível com o tipo de dados da coluna da tabela virtualizada, causando um
SQLCODE=-420, SQLSTATE=22018erro. Para evitar esse problema, certifique-se de especificar predicados de consulta que correspondam ao tipo de dados da coluna virtualizada. Por exemplo: Se a coluna AGE for virtualizada como um tipo CHAR/VARCHAR, use a seguinte sintaxe:- Correto: AGE='75'
- Incorreto: AGE=75
Procedimento
- Aplicando a máscara na configuração de leitura
- Para aplicar o mascaramento aos dados antes de avaliar a consulta, execute este procedimento:
CALL DVSYS.SETWKCPOLICYOPTS('MASK_SEMANTICS=READ')
- Revertendo para a configuração padrão Máscara no resultado
- Para reverter para o comportamento padrão, em que as consultas são avaliadas em dados não mascarados, enquanto o conjunto de resultados é mascarado, execute este procedimento:
CALL DVSYS.SETWKCPOLICYOPTS('MASK_SEMANTICS=RESULT') - Verifique a semântica de mascaramento atualmente configurada
- Para verificar se você está configurado para usar Máscara na leitura ou Máscara no resultado, execute esta consulta:
SELECT VALUE FROM DVSYS.INSTANCE_INFO WHERE KEY='WKC_POLICY_OPTS'Observação: uma string vazia é equivalente a Máscara no resultado (comportamento padrão).