빠른 시작: 명령줄 도구 사용

이 페이지에서는 명령줄 인터페이스를 사용하여 Cloud Data Loss Prevention API에서 기본적인 작업을 수행하는 방법을 보여줍니다. 특히 이 빠른 시작은 검사를 위해 DLP API로 짧은 문자열을 보내는 방법을 다룹니다.

시작하기 전에

  1. Google Cloud 계정에 로그인합니다. Google Cloud를 처음 사용하는 경우 계정을 만들고 Google 제품의 실제 성능을 평가해 보세요. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.
  2. Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

    프로젝트 선택기로 이동

  3. Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다. 프로젝트에 결제가 사용 설정되어 있는지 확인하는 방법을 알아보세요.

  4. DLP API를 사용 설정합니다.

    API 사용 설정

  5. 서비스 계정을 만듭니다.

    1. Cloud Console에서 서비스 계정 만들기 페이지로 이동합니다.

      서비스 계정 만들기로 이동
    2. 프로젝트를 선택합니다.
    3. 서비스 계정 이름 필드에 이름을 입력합니다. Cloud Console은 이 이름을 기반으로 서비스 계정 ID 필드를 채웁니다.

      서비스 계정 설명 필드에 설명을 입력합니다. 예를 들면 Service account for quickstart입니다.

    4. 만들기를 클릭합니다.
    5. 역할 선택 필드를 클릭합니다.

      빠른 액세스에서 기본을 클릭한 후 소유자를 클릭합니다.

    6. 계속을 클릭합니다.
    7. 완료를 클릭하여 서비스 계정 만들기를 마칩니다.

      브라우저 창을 닫지 마세요. 다음 단계에서 사용합니다.

  6. 서비스 계정 키 만들기

    1. Cloud Console에서 만든 서비스 계정의 이메일 주소를 클릭합니다.
    2. 를 클릭합니다.
    3. 키 추가를 클릭한 후 새 키 만들기를 클릭합니다.
    4. 만들기를 클릭합니다. JSON 키 파일이 컴퓨터에 다운로드됩니다.
    5. 닫기를 클릭합니다.
  7. GOOGLE_APPLICATION_CREDENTIALS 환경 변수를 서비스 계정 키가 포함된 JSON 파일의 경로로 설정합니다. 이 변수는 현재 셸 세션에만 적용되므로, 새 세션을 열 경우, 변수를 다시 설정합니다.

권한

콘텐츠를 검사하려면 parent에 지정된 프로젝트에 대한 serviceusage.services.use 권한이 필요합니다. 필요한 권한이 포함된 roles/editor, roles/owner, roles.dlp.user 역할을 부여하거나 직접 커스텀 역할을 정의할 수 있습니다.

프로젝트 수준에서 사용자에게 dlp.user 역할을 부여하는 방법은 다음과 같습니다.

웹 UI

  1. Google Cloud Console에서 IAM 페이지를 엽니다.

    IAM 페이지 열기

  2. 프로젝트가 아직 선택되지 않은 경우 프로젝트 선택기를 클릭한 다음 프로젝트를 선택합니다.

  3. IAM 페이지에서 다음을 수행합니다.

    • 새 사용자를 추가하려면 추가를 클릭합니다.
    • 기존 사용자에게 dlp.user 역할을 추가하려면 해당 사용자에 대해 구성원 수정을 클릭한 다음 권한 수정 창에서 다른 역할 추가를 클릭합니다.

  4. 구성원 추가 창에서 다음을 수행합니다.

    • 새 구성원 필드에 추가할 사용자의 이메일 주소를 입력합니다(예: test@example.com).
    • 역할에서 역할 선택을 클릭하고 Cloud DLP > DLP 사용자를 선택합니다.

  5. 추가를 클릭합니다.

자세한 내용은 IAM 역할 부여를 참조하세요.

명령줄

  1. 프로젝트의 IAM 정책에 단일 결합을 추가하려면 다음 명령어를 입력합니다.

    gcloud projects add-iam-policy-binding PROJECT_ID --member serviceAccount:SERVICE_ID --role roles/dlp.user

    다음을 바꿉니다.

    • PROJECT_ID: 프로젝트 ID입니다.
    • SERVICE_ID: 사용할 서비스 계정입니다.
  2. Conlose 창에 업데이트된 정책을 씁니다.

    bindings:
    - members:
      - group: EMAIL_ADDRESS
        role: roles/dlp.user
    

    EMAIL_ADDRESS를 추가하려는 사용자의 이메일 주소로 바꿉니다.

Cloud DLP CLI 앱 설정

Node.js

  1. Node.js와 NPM 다운로드 및 설치

  2. Node.js DLP 클라이언트 라이브러리의 ZIP 파일을 클론하거나 다운로드한 다음 다운로드한 파일을 확장합니다.

  3. 명령줄 도구를 열고 확장 디렉터리 내의 samples 디렉터리로 이동합니다.

  4. samples 디렉터리에서 npm install을 실행하여 앱 종속 항목을 설치합니다.

  5. 아직 GCLOUD_PROJECT 환경 변수를 만들지 않았으면, 지금 만들고 Cloud DLP에 사용하도록 설정한 Google Cloud Platform 프로젝트의 프로젝트 ID로 설정합니다.

gcloud alpha dlp

  1. Cloud SDK를 설치하고 초기화합니다.

    이 절차에는 gcloud Alpha 명령어 구성요소도 필요합니다. 지금 설치하거나 나중에 메시지가 표시되면 설치할 수 있습니다.

  2. 서비스 계정을 활성화합니다.

    gcloud auth activate-service-account SERVICE_ACCOUNT \\
     --key-file=PATH_TO_SERVICE_ACCOUNT_KEY

    다음을 바꿉니다.

    • SERVICE_ACCOUNT: 서비스 계정의 ID입니다.
    • PATH_TO_SERVICE_ACCOUNT_KEY: 서비스 계정의 비공개 키가 포함된 JSON 파일의 경로입니다. 시작하기 전에 섹션에서 인증을 설정할 때 다운로드한 JSON 파일입니다.

문자열에서 민감한 정보 검사

이 섹션에서는 DLP API를 사용하여 샘플 텍스트를 스캔하는 방법을 보여줍니다.

Node.js

이 예시에서는 inspectString Node.js 스크립트를 사용합니다. 아직 명령줄 도구를 열지 않았다면 지금 엽니다. 이전 섹션에서 다운로드하고 확장한 Node.js 샘플 저장소의 samples 폴더로 이동합니다.

다음 명령어를 실행합니다.

node inspectString.js PROJECT_ID "My email address is joe@example.com."

여기서 PROJECT_ID프로젝트 ID로 바꿉니다.

다음이 출력됩니다.

Findings:
  Quote: joe@example.com
  Info type: EMAIL_ADDRESS
  Likelihood: LIKELY

gcloud alpha dlp

이 예시에서는 gcloud alpha dlp text inspect 명령어를 사용합니다. 아직 명령줄 도구를 열지 않았다면 지금 엽니다.

다음 명령어를 실행합니다.

gcloud alpha dlp text inspect --project="PROJECT_ID" \
--content="My email address is joe@example.com." \
--include-quote --info-types="EMAIL_ADDRESS"

여기서 PROJECT_ID프로젝트 ID로 바꿉니다.

아직 gcloud Alpha Commands 구성요소를 설치하지 않았다면 시스템에서 먼저 설치할지 묻는 메시지가 표시됩니다. 계속하려면 Y를 누릅니다.

다음이 출력됩니다.

result:
findings:
- createTime: '2021-02-26T19:31:28.051Z'
  findingId: 2021-02-26T19:31:28.054696Z5687834655654299045
  infoType:
    name: EMAIL_ADDRESS
  likelihood: LIKELY
  location:
    byteRange:
      end: '35'
      start: '20'
    codepointRange:
      end: '35'
      start: '20'
  quote: joe@example.com

첫 번째 요청을 DLP API로 보냈습니다.

다음 단계