변환 세부정보 참조

이 페이지에서는 변환 세부정보 테이블의 콘텐츠에 대해 설명하고 실행할 수 있는 예시 쿼리를 제공합니다.

스토리지의 데이터를 익명화할 때는 수행되는 각 변환에 대해 세부정보를 제공하도록 검사 작업을 구성할 수 있습니다. Sensitive Data Protection은 지정된 BigQuery 테이블에 이러한 세부정보를 작성합니다. 이 문서에서는 이 테이블을 변환 세부정보 테이블이라고 합니다.

변환 세부정보 테이블의 콘텐츠

이 섹션에서는 변환 세부정보 테이블의 콘텐츠를 나열하고 설명합니다.

resource_name

변환을 완료한 검사 작업의 이름입니다.

container_name

변환된 데이터가 포함된 파일입니다.

transformation

변환에 대한 세부정보입니다. 이 필드에는 다음 속성이 포함됩니다.

type

Sensitive Data Protection이 발견 항목에 적용한 변환 방법입니다. 가능한 값은 다음과 같습니다.

description

변환에 대한 문자열 표현입니다. 값은 RecordSuppression을 제외한 모든 유형의 변환에서 PrimitiveTransformation 프로토콜 버퍼 메시지에 대한 toString() 호출의 출력입니다. 변환 메서드가 레코드 비표시인 경우 이 필드가 비어 있습니다.

condition

변환에 대한 RecordCondition의 문자열 표현입니다. 이 필드는 Sensitive Data Protection이 변환을 적용해야 하는지 여부를 결정하기 위해 레코드 조건이 사용된 경우에만 설정됩니다. 예:

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

발견 항목에서 감지된 정보 유형에 대한 세부정보입니다. 이 필드에는 다음 속성이 포함됩니다.

name
기본 제공 또는 커스텀 infoType의 이름입니다.
version
infoType 버전입니다.

status_details

변환 상태에 대한 세부정보입니다. 변환이 실패한 경우 이 필드에 실패 원인이 지정됩니다. 이 필드에는 다음 속성이 포함됩니다.

result_status_type

변환 시도의 상태를 나타내는 코드입니다. 사용 가능한 값은 다음과 같습니다.

  • STATE_TYPE_UNSPECIFIED: Sensitive Data Protection이 변환 상태를 확인할 수 없습니다.
  • INVALID_TRANSFORM: Sensitive Data Protection이 발견 항목을 변환할 수 없습니다.
  • METADATA_UNRETRIEVABLE: 파일의 커스텀 메타데이터에 발견 항목이 있습니다. 변환된 파일을 작성하는 동안 Sensitive Data Protection이 메타데이터를 검색할 수 없습니다.
  • SUCCESS: 변환이 성공했습니다.
세부정보

추가 상태 세부정보입니다. 이 필드는 Status에 정의된 사양을 따릅니다. 이 필드에는 다음 속성이 포함됩니다.

code
오류 코드입니다.
message
오류 메시지입니다.
세부정보
오류 세부정보가 포함된 메시지 목록입니다.

transformed_bytes

Sensitive Data Protection이 변환한 바이트 수입니다. 변환이 실패했거나 변환할 콘텐츠가 없으면 값이 0입니다.

transformation_location

변환 위치에 대한 세부정보입니다.

다음은 Sensitive Data Protection이 infoType 변환을 수행한 변환 위치에 대한 JSON 예시입니다.

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

다음은 Sensitive Data Protection이 레코드 변환을 수행한 변환 위치에 대한 JSON 예시입니다.

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

예시에서 볼 수 있듯이 Sensitive Data Protection이 수행된 변환 유형에 따라 finding_id 또는 record_transformation을 채웁니다. 두 필드는 상호 배타적입니다.

finding_id
이 필드는 Sensitive Data Protection이 infoType 변환을 수행한 경우에 설정됩니다. 각 발견 항목 ID는 발견 항목 출력 테이블의 항목과 상관관계가 있습니다. 발견 항목 출력 테이블에는 검사 중 Sensitive Data Protection이 감지한 모든 발견 항목이 포함됩니다. 이 표는 발견 항목을 BigQuery에 저장하도록 검사 작업을 구성한 경우에만 생성됩니다.
record_transformation

이 필드는 Sensitive Data Protection이 테이블 형식 데이터에서 레코드 변환을 수행한 경우에 설정됩니다. 이 필드에는 다음 속성이 포함됩니다.

field_id
발견 항목이 포함된 테이블 열입니다.
container_timestamp
파일에 대한 수정 타임스탬프입니다.
container_version
발견 항목이 포함된 파일의 세대 번호입니다.
container_type

발견 항목이 포함된 데이터의 기능에 대한 정보입니다. 사용 가능한 값은 다음과 같습니다.

  • TRANSFORM_UNKNOWN_CONTAINER: Sensitive Data Protection이 발견 항목을 포함하는 데이터 유형을 확인할 수 없습니다.
  • TRANSFORM_BODY: Sensitive Data Protection이 파일 본문에서 발견 항목을 감지했습니다.
  • TRANSFORM_METADATA: Sensitive Data Protection이 파일의 메타데이터에서 발견 항목을 감지했습니다.
  • TRANSFORM_TABLE: Sensitive Data Protection이 테이블에서 발견 항목을 감지했습니다.

쿼리 예

다음은 변환 세부정보 테이블에서 실행할 수 있는 쿼리의 예시입니다. BigQuery 테이블을 쿼리하는 방법에 대한 자세한 내용은 대화형 쿼리 실행을 참조하세요.

실패한 모든 변환 선택

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

다음을 바꿉니다.

  • PROJECT_ID: 변환 세부정보 테이블이 포함된 프로젝트의 ID입니다.
  • DATASET_ID: 변환 세부정보 테이블이 포함된 BigQuery 데이터 세트의 ID입니다.
  • TABLE_ID: 변환 세부정보 테이블의 ID입니다.

변환 실패가 포함된 파일 수 계산

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

문자 마스킹이 사용된 모든 변환 선택

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";

다음 단계