Cloud Data Loss Prevention은 이미지에서 민감한 텍스트를 수정할 수 있습니다. Cloud DLP는 infoType 감지기 및 Cloud Vision을 사용하여 이미지에서 텍스트를 검사하고, 텍스트 내의 민감한 정보를 감지한 다음, 일치하는 모든 민감한 정보를 불투명한 직사각형으로 가린 이미지를 반환합니다.
예를 들어 다음의 '이전' 이미지와 '이후' 이미지를 살펴보세요. 원본 이미지는 종이 문서를 스캔한 후 생성된 일반적인 이미지 파일의 예시입니다. 이 예시에서 Cloud DLP는 콘텐츠에 따라 다양한 색상의 직사각형을 사용하여 주민등록번호, 이메일 주소, 전화번호를 수정하도록 구성되었습니다.

- 이미지 수정 전 스캔한 이미지
- 이미지 수정 후 스캔한 이미지
제한사항 및 고려사항
이미지에서 콘텐츠를 수정할 때는 다음 사항을 고려하세요.
지원되는 파일 형식
Cloud DLP는 JPEG, BMP, PNG를 비롯한 다양한 이미지 유형에서 민감한 정보를 수정할 수 있습니다. 자세한 내용은 지원되는 파일 형식을 참조하세요.
SVG, PDF, XLSX, PPTX 또는 DOCX 파일에 대해서는 콘텐츠 수정이 지원되지 않습니다.
발견 항목 한도
이미지에서 데이터를 수정할 때는 발견 항목 한도가 적용되지 않습니다. 일부 데이터만 수정되는 예기치 않거나 일관되지 않는 결과가 발생할 수 있습니다. 요청에 FindingLimits
를 포함하면 Cloud DLP에서 오류를 생성합니다.
시작하기 전에
- Google Cloud 계정에 로그인합니다. Google Cloud를 처음 사용하는 경우 계정을 만들고 Google 제품의 실제 성능을 평가해 보세요. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.
-
Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.
-
Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다. 프로젝트에 결제가 사용 설정되어 있는지 확인하는 방법을 알아보세요.
-
DLP API 사용 설정
-
서비스 계정을 만듭니다.
-
Google Cloud Console에서 서비스 계정 만들기 페이지로 이동합니다.
서비스 계정 만들기로 이동 - 프로젝트를 선택합니다.
-
서비스 계정 이름 필드에 이름을 입력합니다. Google Cloud 콘솔은 이 이름을 기반으로 서비스 계정 ID 필드를 채웁니다.
서비스 계정 설명 필드에 설명을 입력합니다. 예를 들면
Service account for quickstart
입니다. - 만들고 계속하기를 클릭합니다.
-
프로젝트에 대한 액세스 권한을 제공하려면 서비스 계정에 Project > Owner 역할을 부여합니다.
역할을 부여하려면 역할 선택 목록을 찾은 후 Project > Owner을 선택합니다.
- 계속을 클릭합니다.
-
완료를 클릭하여 서비스 계정 만들기를 마칩니다.
브라우저 창을 닫지 마세요. 다음 단계에서 사용합니다.
-
-
서비스 계정 키 만들기
- Google Cloud Console에서 만든 서비스 계정의 이메일 주소를 클릭합니다.
- 키를 클릭합니다.
- 키 추가를 클릭한 후 새 키 만들기를 클릭합니다.
- 만들기를 클릭합니다. JSON 키 파일이 컴퓨터에 다운로드됩니다.
- 닫기를 클릭합니다.
-
GOOGLE_APPLICATION_CREDENTIALS
환경 변수를 서비스 계정 키가 포함된 JSON 파일의 경로로 설정합니다. 이 변수는 현재 셸 세션에만 적용되므로, 새 세션을 열 경우, 변수를 다시 설정합니다. - Google Cloud CLI를 설치합니다.
-
gcloud CLI를 초기화하려면 다음 명령어를 실행합니다.
gcloud init
-
Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.
-
Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다. 프로젝트에 결제가 사용 설정되어 있는지 확인하는 방법을 알아보세요.
-
DLP API 사용 설정
-
서비스 계정을 만듭니다.
-
Google Cloud Console에서 서비스 계정 만들기 페이지로 이동합니다.
서비스 계정 만들기로 이동 - 프로젝트를 선택합니다.
-
서비스 계정 이름 필드에 이름을 입력합니다. Google Cloud 콘솔은 이 이름을 기반으로 서비스 계정 ID 필드를 채웁니다.
서비스 계정 설명 필드에 설명을 입력합니다. 예를 들면
Service account for quickstart
입니다. - 만들고 계속하기를 클릭합니다.
-
프로젝트에 대한 액세스 권한을 제공하려면 서비스 계정에 Project > Owner 역할을 부여합니다.
역할을 부여하려면 역할 선택 목록을 찾은 후 Project > Owner을 선택합니다.
- 계속을 클릭합니다.
-
완료를 클릭하여 서비스 계정 만들기를 마칩니다.
브라우저 창을 닫지 마세요. 다음 단계에서 사용합니다.
-
-
서비스 계정 키 만들기
- Google Cloud Console에서 만든 서비스 계정의 이메일 주소를 클릭합니다.
- 키를 클릭합니다.
- 키 추가를 클릭한 후 새 키 만들기를 클릭합니다.
- 만들기를 클릭합니다. JSON 키 파일이 컴퓨터에 다운로드됩니다.
- 닫기를 클릭합니다.
-
GOOGLE_APPLICATION_CREDENTIALS
환경 변수를 서비스 계정 키가 포함된 JSON 파일의 경로로 설정합니다. 이 변수는 현재 셸 세션에만 적용되므로, 새 세션을 열 경우, 변수를 다시 설정합니다. - Google Cloud CLI를 설치합니다.
-
gcloud CLI를 초기화하려면 다음 명령어를 실행합니다.
gcloud init
이미지에서 모든 기본 infoType 수정
이미지에서 민감한 정보를 수정하려면 이미지를 DLP API의 image.redact
메서드에 제출합니다.
검색할 구체적인 정보 유형(infoType)을 지정하지 않으면 Cloud DLP가 가장 일반적인 infoType을 검색합니다.
이미지에서 기본 infoType을 수정하려면 다음을 수행합니다.
이미지를 base64 문자열로 인코딩합니다.
Cloud DLP 클라이언트 라이브러리 중 하나를 사용하여 이 태스크를 수행하려면 이 단계를 건너뜁니다.
image.redact
메서드에 요청을 제출합니다.기본 infoType을 수정하려는 경우 요청에는 base64로 인코딩된 이미지만 있으면 됩니다.
예를 들어 다음 이미지를 살펴보겠습니다. 이는 종이 문서를 스캔한 후 생성된 일반적인 이미지 파일의 예시입니다.

이 이미지에서 기본 infoType을 수정하려면 다음 요청을 DLP API의 image.redact
메서드에 제출합니다.
프로토콜
{ "byteItem": { "data": "[BASE64-ENCODED-IMAGE]", "type": "IMAGE_JPEG" } }
Cloud DLP는 다음을 반환합니다.
{ "redactedImage": "[BASE64-ENCODED-IMAGE]" }
base64로 인코딩된 이미지를 디코딩합니다.
Java
Cloud DLP용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud DLP 클라이언트 라이브러리를 참조하세요.
Cloud DLP에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
결과 이미지가 다음과 같이 표시됩니다.

Cloud DLP에서 필기 입력된 주민등록번호, 이메일 주소, 전화번호를 마스킹하는 것 외에 연도도 수정했습니다. 다음 섹션에서는 특정 infoType만 수정하는 방법을 보여줍니다.
이미지에서 특정 infoType 수정
이미지에서 특정 민감한 정보만 수정하려면 해당하는 기본 제공 infoType을 지정하세요.
이미지에서 특정 infoType을 수정하려면 DLP API의 image.redact
메서드에 요청을 제출합니다. 요청은 다음을 포함해야 합니다.
* 이미지.
* 1개 이상의 infoType 감지기
이전 섹션의 원본 이미지를 다시 살펴보겠습니다. 주민등록번호, 이메일 주소, 전화번호를 수정하려면 다음 JSON을 DLP API의 image.redact
메서드에 제출합니다.
프로토콜
{ "byteItem": { "data": "[BASE64-ENCODED-IMAGE]", "type": "IMAGE_JPEG" }, "imageRedactionConfigs": [ { "infoType": { "name": "US_SOCIAL_SECURITY_NUMBER" } }, { "infoType": { "name": "EMAIL_ADDRESS" } }, { "infoType": { "name": "PHONE_NUMBER" } } ] }
Cloud DLP는 다음을 반환합니다.
{ "redactedImage": "[BASE64-ENCODED-IMAGE]" }
base64로 인코딩된 이미지를 디코딩합니다.
Java
Cloud DLP용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud DLP 클라이언트 라이브러리를 참조하세요.
Cloud DLP에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
C#
Cloud DLP용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud DLP 클라이언트 라이브러리를 참조하세요.
Cloud DLP에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
결과 이미지가 다음과 같이 표시됩니다.

수정된 정보를 infoType별로 색상으로 분류하면 수정된 정보를 한 눈에 파악할 수 있습니다. 자세한 내용은 다음 섹션을 참조하세요.
색상 코딩을 사용하여 이미지에서 infoType 수정
수정된 정보를 infoType별로 색상으로 분류하려면 infoType 감지기를 RGB 색상 공간 값과 연결합니다.
이미지에서 수정된 infoType의 색상을 지정하려면 DLP API의 image.redact
메서드에 요청을 제출합니다. 요청은 다음을 포함해야 합니다.
* 이미지.
* 1개 이상의 infoType 감지기(각각에 RGB 색상 공간 값을 사용하여 색상을 할당)
첫 번째 섹션의 원본 이미지를 다시 살펴보겠습니다. 주민등록번호는 자주색 상자, 이메일 주소는 녹색 상자, 전화번호는 주황색 상자로 수정하려면 다음 JSON을 DLP API의 image.redact
메서드에 제출합니다.
프로토콜
{ "byteItem": { "data": "[BASE64-ENCODED-IMAGE]", "type": "IMAGE_JPEG" }, "imageRedactionConfigs": [ { "infoType": { "name": "US_SOCIAL_SECURITY_NUMBER" }, "redactionColor": { "red": 0.3, "green": 0.1, "blue": 0.6 } }, { "infoType": { "name": "EMAIL_ADDRESS" }, "redactionColor": { "red": 0.5, "blue": 0.5, "green": 1 } }, { "infoType": { "name": "PHONE_NUMBER" }, "redactionColor": { "red": 1, "blue": 0, "green": 0.6 } } ] }
Cloud DLP는 다음을 반환합니다.
{ "redactedImage": "[BASE64-ENCODED-IMAGE]" }
base64로 인코딩된 이미지를 디코딩합니다.
Java
Cloud DLP용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud DLP 클라이언트 라이브러리를 참조하세요.
Cloud DLP에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
결과 이미지가 다음과 같이 표시됩니다.

이미지에서 모든 텍스트 수정
Cloud DLP에는 이미지에서 감지된 모든 텍스트를 수정할 수 있는 옵션도 있습니다.
이미지에서 모든 텍스트를 수정하려면 DLP API의 image.redact
메서드에 요청을 제출합니다. 요청은 다음을 포함해야 합니다.
* 이미지.
* true
로 설정된 redactAllText
옵션
첫 번째 섹션의 원본 이미지를 다시 살펴보겠습니다. 모든 텍스트를 수정하려면 다음 JSON을 DLP API의 image.redact
메서드로 보냅니다.
프로토콜
{ "byteItem": { "data": "[BASE64-ENCODED-IMAGE]", "type": "IMAGE_JPEG" }, "imageRedactionConfigs": [ { "redactAllText": true } ] }
Cloud DLP는 다음을 반환합니다.
{ "redactedImage": "[BASE64-ENCODED-IMAGE]" }
base64로 인코딩된 이미지를 디코딩합니다.
Python
Cloud DLP용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud DLP 클라이언트 라이브러리를 참조하세요.
Cloud DLP에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Java
Cloud DLP용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud DLP 클라이언트 라이브러리를 참조하세요.
Cloud DLP에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
API는 제공된 것과 동일한 이미지를 반환하지만 기준에 따라 민감한 정보가 포함된 것으로 식별된 모든 텍스트는 수정됩니다.
결과 이미지가 다음과 같이 표시됩니다.

코드 예시
다음은 Cloud DLP를 사용하여 이미지에서 민감한 텍스트를 수정하는 방법을 보여주는 여러 언어로 된 샘플 코드입니다.
Node.js
Cloud DLP용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud DLP 클라이언트 라이브러리를 참조하세요.
Cloud DLP에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Python
Cloud DLP용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud DLP 클라이언트 라이브러리를 참조하세요.
Cloud DLP에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Go
Cloud DLP용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud DLP 클라이언트 라이브러리를 참조하세요.
Cloud DLP에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
PHP
Cloud DLP용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud DLP 클라이언트 라이브러리를 참조하세요.
Cloud DLP에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
C#
Cloud DLP용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Cloud DLP 클라이언트 라이브러리를 참조하세요.
Cloud DLP에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
사용해 보기
image.redact
의 참조 페이지에서 API 탐색기로 이 페이지의 각 예시를 직접 사용해 보거나 자체 이미지로 실험해 볼 수 있습니다.
다음 단계
- 이미지 검사 및 수정 자세히 알아보기
- Cloud Data Loss Prevention으로 민감한 데이터 수정 Codelab 진행하기
- 이미지에서 민감한 정보를 검사하는 방법 알아보기
- 스토리지에서 익명화된 데이터 사본 만들기 자세히 알아보기