As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Para ocultar dados confidenciais armazenados em uma ou mais colunas das tabelas que estão sendo migradas, você pode aproveitar as ações da regra de transformação do mascaramento de dados. A partir da versão 3.5.4, AWS DMS permite o uso de ações de regras de transformação de mascaramento de dados no mapeamento de tabelas, permitindo que você altere o conteúdo de uma ou mais colunas durante o processo de migração. AWS DMS carrega os dados modificados nas tabelas de destino.
AWS Database Migration Service fornece três opções para ações de regras de transformação de mascaramento de dados:
Mascaramento de dados: máscara de dígitos
Mascaramento de dados: dígitos aleatórios
Mascaramento de dados: máscara de hash
Essas ações de regra de transformação de mascaramento de dados podem ser configuradas no mapeamento de tabela da sua tarefa de replicação, de forma semelhante a outras regras de transformação. A meta da regra deve ser definida no nível da coluna.
Mascarando números nos dados da coluna com um caractere de mascaramento
A ação da regra de transformação “Mascaramento de dados: máscara de dígitos” permite mascarar dados numéricos em uma ou mais colunas substituindo dígitos por um único caractere ASCII imprimível que você especifica (excluindo caracteres vazios ou de espaço em branco).
Aqui está um exemplo que mascara todos os dígitos na cust_passport_no
coluna da customer_master
tabela com o '#'
caractere de mascaramento e carrega os dados mascarados na tabela de destino:
{
"rules": [
{
"rule-type": "selection",
"rule-id": "1",
"rule-name": "1",
"object-locator": {
"schema-name": "cust_schema",
"table-name": "%"
},
"rule-action": "include"
},
{
"rule-type": "transformation",
"rule-id": "2",
"rule-name": "2",
"rule-target": "column",
"object-locator": {
"schema-name": "cust_schema",
"table-name": "customer_master",
"column-name": "cust_passport_no"
},
"rule-action": "data-masking-digits-mask",
"value": "#"
}
]
}
Por exemplo, se a coluna cust_passport_no
na tabela de origem contiver o registro “C6 BGJ566669K “, a AWS DMS tarefa gravará esses dados na tabela de destino como"C#BGJ######K"
.
Substituindo números na coluna por números aleatórios
A regra de transformação “Mascaramento de dados: dígitos aleatórios” permite que você substitua cada dígito numérico em uma ou mais colunas por um número aleatório. No exemplo a seguir, AWS DMS substitui cada dígito na cust_passport_no
coluna da tabela customer_master
de origem por um número aleatório e grava os dados modificados na tabela de destino:
{
"rules": [
{
"rule-type": "selection",
"rule-id": "1",
"rule-name": "1",
"object-locator": {
"schema-name": "cust_schema",
"table-name": "%"
},
"rule-action": "include"
},
{
"rule-type": "transformation",
"rule-id": "2",
"rule-name": "2",
"rule-target": "column",
"object-locator": {
"schema-name": "cust_schema",
"table-name": "customer_master",
"column-name": "cust_passport_no"
},
"rule-action": "data-masking-digits-randomize"
}
]
}
Por exemplo, a AWS DMS tarefa transformará o valor "C6BGJ566669K"
na cust_passport_no
coluna da tabela de origem "C1BGJ842170K"
e o gravará no banco de dados de destino.
Substituindo dados da coluna por valor de hash
A regra de transformação “Mascaramento de dados: máscara de hash” permite que você substitua os dados da coluna por um hash gerado usando o algoritmo. SHA256
O tamanho do hash sempre será de 64 caracteres, portanto, o comprimento da coluna da tabela de destino deve ser de 64 caracteres no mínimo. Como alternativa, você pode adicionar uma ação de regra de change-data-type
transformação à coluna para aumentar a largura da coluna na tabela de destino.
O exemplo a seguir gera um valor de hash de 64 caracteres para os dados na cust_passport_no
coluna da tabela de origem customer_master
e carrega os dados transformados na tabela de destino depois de aumentar o tamanho da coluna:
{
"rules": [
{
"rule-type": "selection",
"rule-id": "1",
"rule-name": "1",
"object-locator": {
"schema-name": "cust_schema",
"table-name": "%"
},
"rule-action": "include"
},
{
"rule-type": "transformation",
"rule-id": "2",
"rule-name": "2",
"rule-target": "column",
"object-locator": {
"schema-name": "cust_schema",
"table-name": "customer_master",
"column-name": "cust_passport_no"
},
"rule-action": "change-data-type",
"data-type": {
"type": "string",
"length": "100",
"scale": ""
}
},
{
"rule-type": "transformation",
"rule-id": "3",
"rule-name": "3",
"rule-target": "column",
"object-locator": {
"schema-name": "cust_schema",
"table-name": "customer_master",
"column-name": "cust_passport_no"
},
"rule-action": "data-masking-hash-mask"
}
]
}
Por exemplo, se a coluna cust_passport_no
da tabela de origem contiver valor“C6BGJ566669K”
, a AWS DMS tarefa gravará um hash “7CB06784764C9030CCC41E25C15339FEB293FFE9B329A72B5FED564E99900C75”
na tabela de destino.
Limitações
Cada opção de regra de transformação de mascaramento de dados é compatível somente com tipos de AWS DMS dados específicos:
Mascaramento de dados: a máscara de dígitos é compatível com colunas de tipos de dados: e.
WSTRING
STRING
Mascaramento de dados: Digits Randomize é compatível com colunas de tipos de dados:
WSTRING, STRING; NUMERIC, INT1, INT2, INT4, and INT8
com contrapartes não assinadas.Mascaramento de dados: a máscara de hash é compatível com colunas de tipos de dados: e.
WSTRING
STRING
Para saber mais sobre o mapeamento de tipos de AWS DMS dados para os tipos de dados do seu mecanismo de origem, consulte o mapeamento de tipos de dados do seu mecanismo de origem com tipos de AWS DMS dados. Veja os tipos de dados de origem para Tipos de dados de origem do Oracle Tipos de dados de origem no SQL ServerTipos de dados de origem para Postgre SQL,, Tipos de dados de origem para My SQL e.
Usar uma ação de regra de mascaramento de dados para uma coluna com um tipo de dados incompatível causará um erro na DMS tarefa. Consulte DataMaskingErrorPolicy nas configurações da DMS tarefa para especificar o comportamento de tratamento de erros. Para obter mais informações sobre o
DataMaskingErrorPolicy
, consulte Configurações de tarefa de tratamento de erros.Você pode adicionar uma ação de regra de change-data-type transformação para alterar o tipo de dados da coluna para um tipo compatível se o tipo de coluna de origem não for compatível com a opção de mascaramento que você planeja usar. O
rule-id
dachange-data-type
transformação deve ser um número menor do que o ID da regra da transformação de mascaramento para que a alteração do tipo de dados ocorra antes do mascaramento.Use a ação de mascaramento de dados: máscara de hash para mascarar as colunas de chave primária/chave única/chave estrangeira, pois o valor de hash gerado será único e consistente. Outras duas opções de mascaramento não podem garantir a exclusividade.
Enquanto o mascaramento de dados: máscara de dígitos e mascaramento de dados: a classificação aleatória de dígitos afeta somente os dígitos nos dados da coluna e não afeta o tamanho dos dados, o mascaramento de dados: máscara de hash modifica a coluna inteira, o tamanho dos dados muda para 64 caracteres. Portanto, a tabela de destino deve ser criada adequadamente ou uma regra de change-data-type transformação deve ser adicionada à coluna que está sendo mascarada.
As colunas com a ação da regra de transformação de mascaramento de dados especificada são excluídas da validação de dados em AWS DMS. Se as colunas Chave Primária/Chave Única estiverem mascaradas, a validação de dados não será executada para essa tabela; o status de validação dessa tabela será igual a.
No Primary key