이 주제에서는 대형 커스텀 사전을 만들고 다시 빌드하는 방법을 설명합니다. 또한 여러 오류 시나리오를 다룹니다.
일반 커스텀 사전 대신 대형 커스텀 사전을 선택해야 하는 경우
일반 커스텀 사전 감지기는 콘텐츠에서 스캔할 민감한 단어나 구문이 수만 개 있을 때 충분합니다. 수만 개 이상이거나 용어 목록이 자주 변경될 경우에는 수천만 개의 용어를 지원할 수 있는 대형 커스텀 사전을 만드는 것이 좋습니다.
대형 커스텀 사전과 다른 커스텀 infoType의 차이점
대형 커스텀 사전은 각 대형 커스텀 사전에 다음과 같은 두 가지 구성요소가 있다는 점에서 다른 커스텀 infoType과 다릅니다.
- 사용자가 만들고 정의하는 구문 목록. 이 목록은 Cloud Storage 내에 텍스트 파일로 또는 BigQuery 테이블에 열로 저장됩니다.
- 민감한 정보 보호에서 생성되고 Cloud Storage에 저장되는 사전 파일입니다. 사전 파일은 용어 목록 사본, 그리고 검색 및 일치 확인을 보조하는 블룸 필터로 구성됩니다.
대형 맞춤 사전 만들기
이 섹션에서는 대형 커스텀 사전을 만들고 수정하며 다시 빌드하는 방법을 설명합니다.
용어 목록 만들기
새 infoType 감지기에서 검색할 모든 단어와 구문이 포함된 목록을 만듭니다. 다음 중 하나를 수행합니다.
- 각 단어 또는 구문이 독립된 줄로 저장된 텍스트 파일을 Cloud Storage 버킷에 넣습니다.
- BigQuery 테이블의 한 열을 단어 및 구문 컨테이너로 지정합니다. 열에서 각 항목에 자체 행을 부여합니다. 모든 사전 단어 및 구문이 하나의 열에 있다는 조건 하에 기존 BigQuery 테이블을 사용할 수 있습니다.
민감한 정보 보호에서 처리하기에 너무 큰 용어 목록이 조합될 수 있습니다. 오류 메시지가 표시되는 경우 이 주제 뒷부분에 있는 오류 문제 해결하기를 참조하세요.
저장된 infoType 만들기
용어 목록을 만든 후 민감한 정보 보호를 사용하여 사전을 만듭니다.
콘솔
Cloud Storage 버킷에서 민감한 정보 보호가 생성된 사전을 저장할 새 폴더를 만듭니다.
민감한 정보 보호는 개발자가 지정한 위치에 사전 파일이 포함된 폴더를 만듭니다.
Google Cloud 콘솔에서 InfoType 만들기 페이지로 이동합니다.
유형에서 대형 맞춤 사전을 선택합니다.
InfoType ID에 저장된 infoType의 식별자를 입력합니다.
검사 및 익명화 작업을 구성할 때 이 식별자를 사용합니다. 이름에 문자, 숫자, 하이픈, 밑줄을 사용할 수 있습니다.
InfoType 표시 이름에 저장된 infoType의 이름을 입력합니다.
이름에 공백과 구두점을 사용할 수 있습니다.
설명에 저장된 infoType이 감지하는 항목에 대한 설명을 입력합니다.
스토리지 유형에서 용어 목록의 위치를 선택합니다.
- BigQuery: 프로젝트 ID, 데이터 세트 ID, 테이블 ID를 입력합니다. 필드 이름 필드에 열 식별자를 입력합니다. 이 테이블에서 최대 1개의 열을 지정할 수 있습니다.
- Google Cloud Storage: 파일 경로를 입력합니다.
출력 버킷 또는 폴더에 1단계에서 만든 폴더의 Cloud Storage 위치를 입력합니다.
만들기를 클릭합니다.
저장된 infoType의 요약이 표시됩니다. 사전이 생성되고 새로 저장된 infoType을 사용할 준비가 되면 infoType 상태가 준비로 표시됩니다.
C#
민감한 정보 보호의 클라이언트 라이브러리를 설치하고 사용하는 방법은 민감한 정보 보호 클라이언트 라이브러리를 참조하세요.
Sensitive Data Protection에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Go
민감한 정보 보호의 클라이언트 라이브러리를 설치하고 사용하는 방법은 민감한 정보 보호 클라이언트 라이브러리를 참조하세요.
Sensitive Data Protection에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Java
민감한 정보 보호의 클라이언트 라이브러리를 설치하고 사용하는 방법은 민감한 정보 보호 클라이언트 라이브러리를 참조하세요.
Sensitive Data Protection에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Node.js
민감한 정보 보호의 클라이언트 라이브러리를 설치하고 사용하는 방법은 민감한 정보 보호 클라이언트 라이브러리를 참조하세요.
Sensitive Data Protection에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
PHP
민감한 정보 보호의 클라이언트 라이브러리를 설치하고 사용하는 방법은 민감한 정보 보호 클라이언트 라이브러리를 참조하세요.
Sensitive Data Protection에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Python
민감한 정보 보호의 클라이언트 라이브러리를 설치하고 사용하는 방법은 민감한 정보 보호 클라이언트 라이브러리를 참조하세요.
Sensitive Data Protection에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
REST
- Cloud Storage 버킷에서 사전의 새 폴더를 만듭니다. 민감한 정보 보호는 개발자가 지정한 위치에 사전 파일이 포함된 폴더를 만듭니다.
storedInfoTypes.create메서드를 사용하여 사전을 만듭니다.create메서드에는 다음 매개변수가 사용됩니다.- 저장된 infoType의 구성이 포함된
StoredInfoTypeConfig객체입니다. 포함되는 요소는 다음과 같습니다.description: 사전에 대한 설명displayName: 사전에 지정할 이름LargeCustomDictionaryConfig: 대형 맞춤법 사전의 구성을 포함합니다. 포함되는 요소는 다음과 같습니다.BigQueryField: 용어 목록이 BigQuery에 저장되는 경우 지정됩니다. 목록이 저장된 테이블에 대한 참조, 그리고 각 사전 구문이 들어 있는 필드가 포함됩니다.CloudStorageFileSet: 용어 목록이 Cloud Storage에 저장되는 경우 지정됩니다. Cloud Storage의 소스 위치에 대한 URL이"gs://[PATH_TO_GS]"형식으로 포함됩니다. 와일드카드가 지원됩니다.outputPath: 생성된 사전을 저장할 Cloud Storage 버킷의 위치 경로입니다.
storedInfoTypeId: 저장된 infoType의 식별자입니다. 저장된 infoType을 다시 빌드하거나 삭제하거나 검사 또는 익명화 작업에서 사용할 때 이 식별자를 사용하여 저장된 infoType을 참조합니다. 이 필드를 비워 두면 자동으로 식별자가 생성됩니다.
- 저장된 infoType의 구성이 포함된
다음은 storedInfoTypes.create 메서드로 전송될 때 저장된 새 infoType(특히 대규모 맞춤 사전 감지기)을 만드는 JSON 예시입니다. 이 예시에서는 공개적으로 사용 가능한 BigQuery 데이터베이스(bigquery-public-data.samples.github_nested)에 저장된 용어 목록에서 저장된 infoType을 만듭니다. 데이터베이스에는 커밋에 사용되는 모든 GitHub 사용자 이름이 포함됩니다. 생성된 사전의 출력 경로는 dlptesting이라는 Cloud Storage 버킷으로 설정되고 저장된 infoType의 이름은 github-usernames입니다.
JSON 입력
POST https://dlp.googleapis.com/v2/projects/PROJECT_ID/storedInfoTypes
{
"config":{
"displayName":"GitHub usernames",
"description":"Dictionary of GitHub usernames used in commits",
"largeCustomDictionary":{
"outputPath":{
"path":"gs://[PATH_TO_GS]"
},
"bigQueryField":{
"table":{
"datasetId":"samples",
"projectId":"bigquery-public-data",
"tableId":"github_nested"
}
}
}
},
"storedInfoTypeId":"github-usernames"
}
사전 다시 빌드
사전을 업데이트하려면 먼저 소스 용어 목록을 업데이트한 다음 민감한 정보 보호에 지시하여 저장된 infoType을 다시 빌드하도록 지시합니다.
Cloud Storage 또는 BigQuery의 기존 소스 용어 목록을 업데이트합니다.
필요에 따라 용어 또는 구문을 추가, 삭제, 변경합니다.
Google Cloud 콘솔이나
storedInfoTypes.patch메서드를 사용하여 저장된 infoType을 '다시 빌드'하여 새 버전을 만듭니다.다시 빌드하면 이전 사전을 대체하는 새 버전의 사전이 생성됩니다.
저장된 infoType을 새 버전으로 다시 빌드하면 이전 버전이 삭제됩니다. 민감한 정보 보호가 저장된 infoType을 업데이트하는 동안 저장된 infoType의 상태는 '대기 중'입니다. 이 기간에는 저장된 infoType의 이전 버전이 여전히 존재하는 것입니다. 저장된 infoType이 대기 중 상태일 때 실행하는 모든 스캔은 이전 버전의 저장된 infoType을 사용하여 실행됩니다.
저장된 infoType을 다시 빌드하려면 다음 단계를 따르세요.
콘솔
- Cloud Storage 또는 BigQuery에서 용어 목록을 업데이트하고 저장합니다.
Google Cloud 콘솔에서 저장된 infoType 목록으로 이동합니다.
업데이트하려는 저장된 infoType의 ID를 클릭합니다.
infoType 세부정보 화면에서 데이터 다시 빌드를 클릭합니다.
민감한 정보 보호는 소스 용어 목록의 변경사항으로 저장된 infoType을 다시 빌드합니다. 저장된 infoType의 상태가 '준비됨'이면 사용할 수 있습니다. 저장된 infoType을 사용하는 모든 템플릿 또는 작업 트리거에서 자동으로 다시 빌드된 버전을 사용합니다.
C#
민감한 정보 보호의 클라이언트 라이브러리를 설치하고 사용하는 방법은 민감한 정보 보호 클라이언트 라이브러리를 참조하세요.
Sensitive Data Protection에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.