Referência de detalhes da transformação

Nesta página, descrevemos o conteúdo de uma tabela de detalhes da transformação e fornecemos exemplos de consultas que podem ser executadas nela.

Ao desidentificar dados no armazenamento, é possível configurar o job de inspeção para fornecer detalhes sobre cada transformação feita. A proteção de dados confidenciais grava esses detalhes em uma tabela do BigQuery que você especifica. Neste documento, ela é chamada de tabela de detalhes da transformação.

Conteúdo de uma tabela de detalhes da transformação

Nesta seção, listamos e descrevemos o conteúdo da tabela de detalhes da transformação.

resource_name

O nome do job de inspeção que concluiu a transformação.

container_name

O arquivo que contém os dados que foram transformados.

transformação

Detalhes sobre a transformação. Esse campo contém as seguintes propriedades:

tipo

O método de transformação que a proteção de dados sensíveis aplicou à descoberta. Veja a seguir alguns dos valores possíveis:

Descrição

Uma representação em string da transformação. O valor é a saída de uma chamada toString() na mensagem do buffer de protocolo PrimitiveTransformation para todos os tipos de transformações, exceto uma RecordSuppression. Se o método de transformação for uma supressão de registro, esse campo estará vazio.

condição

Uma representação de string do RecordCondition para a transformação. Esse campo será definido apenas se uma condição de registro tiver sido usada para determinar se a proteção de dados sensíveis precisa aplicar a transformação. Exemplos:

  • (age_field <= 18)
  • (zip_field exists)
  • (zip_field == 01234) && (age_field <= 18) && (city_field exists)
infoType

Detalhes sobre o tipo de informação detectada na descoberta. Esse campo contém as seguintes propriedades:

name
Nome do infoType integrado ou personalizado.
version
Versão do infoType.

status_details

Detalhes sobre o status da transformação. Se a transformação não tiver sido bem-sucedida, esse campo especificará o que causou a falha. Esse campo contém as seguintes propriedades:

result_status_type

Um código que representa o status da tentativa de transformação. Confira os valores possíveis:

  • STATE_TYPE_UNSPECIFIED: a proteção de dados sensíveis não conseguiu determinar o status da transformação.
  • INVALID_TRANSFORM: a proteção de dados sensíveis não conseguiu transformar a descoberta.
  • METADATA_UNRETRIEVABLE: há uma descoberta nos metadados personalizados de um arquivo. Ao gravar o arquivo transformado, a proteção de dados sensíveis não conseguiu recuperar os metadados.
  • SUCCESS: a transformação foi bem-sucedida.
detalhes

Mais detalhes sobre o status. Esse campo segue as especificações definidas em Status. Esse campo contém as seguintes propriedades:

código
O código do erro.
mensagem
A mensagem de erro.
detalhes
Uma lista de mensagens com os detalhes do erro.

transformed_bytes

O número de bytes que a proteção de dados sensíveis transformou. Se a transformação não for bem-sucedida ou não houver conteúdo a ser transformado, o valor será 0.

transformation_location

Detalhes sobre o local da transformação.

Confira a seguir um exemplo JSON de um local de transformação, em que a proteção de dados sensíveis realizou uma transformação de infoType:

{
    "finding_id": "2022-05-23T23:51:29.775337Z831678185946560283",
    "record_transformation": null,
    "container_type": "TRANSFORM_BODY"
}

Confira a seguir um exemplo JSON de um local de transformação, em que a proteção de dados sensíveis realizou uma transformação de registro:

{
    "finding_id": null,
    "record_transformation": {
      "field_id": {
        "name": " \"Name\""
      },
      "container_timestamp": {
        "timestamp": null,
        "seconds": "1654796423",
        "nanos": "763000000"
      },
      "container_version": "1654796423733485"
    },
    "container_type": "TRANSFORM_TABLE"
  }
}

Como os exemplos mostram, a proteção de dados sensíveis preenche finding_id ou record_transformation, dependendo do tipo de transformação realizada. Os dois campos são mutuamente exclusivos.

finding_id
Esse campo será definido se a proteção de dados sensíveis tiver realizado uma transformação de infotype. Cada ID de descoberta está correlacionado a uma entrada na tabela de saída das descobertas. A tabela de saída das descobertas contém todas as descobertas que a proteção de dados sensíveis detectou durante a inspeção. Essa tabela será criada somente se você tiver configurado o job de inspeção para salvar as descobertas no BigQuery.
record_transformation

Esse campo será definido se a proteção de dados sensíveis tiver realizado uma transformação de registro em dados tabulares. Esse campo contém as seguintes propriedades:

field_id
A coluna da tabela que contém a descoberta.
container_timestamp
Carimbo de data/hora da modificação do arquivo.
container_version
Número de geração do arquivo que contém a descoberta.
container_type

Informações sobre a funcionalidade dos dados que contêm a descoberta. Veja a seguir os valores possíveis:

  • TRANSFORM_UNKNOWN_CONTAINER: a proteção de dados sensíveis não conseguiu determinar o tipo de dados que contêm a descoberta.
  • TRANSFORM_BODY: a proteção de dados confidenciais detectou a descoberta no corpo de um arquivo.
  • TRANSFORM_METADATA: a proteção de dados sensíveis detectou a descoberta nos metadados de um arquivo.
  • TRANSFORM_TABLE: a proteção de dados sensíveis detectou a descoberta na tabela.

Exemplo de consultas

Veja a seguir exemplos de consultas que podem ser executadas na tabela de detalhes da transformação. Para informações sobre como consultar uma tabela do BigQuery, consulte Como executar consultas interativas.

Selecionar todas as transformações com falha

SELECT *
    FROM `PROJECT_ID.DATASET_ID.TABLE_ID`
    WHERE status_details.result_status_type != "SUCCESS";

Substitua:

  • PROJECT_ID: o ID do projeto que contém a tabela de detalhes da transformação.
  • DATASET_ID: o ID do conjunto de dados do BigQuery que contém a tabela de detalhes da transformação.
  • TABLE_ID: o ID da tabela de detalhes da transformação.

Contam o número de arquivos com falhas de transformação

SELECT COUNT(DISTINCT(container_name))
    FROM `PROJECT_ID.DATASET_ID.TABLE_ID`
    WHERE status_details.result_status_type != "SUCCESS";

Selecione todas as transformações que usaram o mascaramento de caracteres

SELECT resource_name, container_name, info_type.name
    FROM `PROJECT_ID.DATASET_ID.TABLE_ID`,
    UNNEST(transformation) AS tr
    WHERE tr.type LIKE "CHARACTER_MASK";

A seguir