クイックスタート: コマンドライン ツールの使用

このページでは、コマンドライン インターフェースを使用して、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/editorroles/ownerroles.dlp.user のロールには必要な権限が含まれていますが、独自のカスタムロールを定義することもできます。

プロジェクト レベルで dlp.user ロールをユーザーに付与するには、次のようにします。

ウェブ UI

  1. Google Cloud Console で IAM ページを開きます。

    [IAM] ページを開く

  2. プロジェクトがまだ選択されていない場合は、プロジェクト セレクタをクリックして、プロジェクトを選択します。

  3. IAM ページで次の操作を行います。

    • 新しいユーザーを追加するには、 [追加] をクリックします。
    • 既存のユーザーに dlp.user ロールを追加する場合は、該当のユーザーの [メンバーを編集] をクリックし、[権限を編集] ペインの [別のロールを追加] をクリックします。

  4. [メンバーの追加] ペインで、次の操作を行います。

    • [新しいメンバー] フィールドに、追加するユーザーのメールアドレスを入力します(たとえば test@example.com)。
    • [ロール] については、[ロールを選択] をクリックして、[Cloud DLP] > [DLP ユーザー] の順に選択します。

  5. [Add] をクリックします。

詳しくは、IAM ロールを付与するをご覧ください。

コマンドライン

  1. プロジェクトの IAM ポリシーにバインドを 1 つ追加するには、次のコマンドを実行します。

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

    以下を置き換えます。

  2. 更新されたポリシーをコンソール ウィンドウに書き込みます。

    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 プロジェクトのプロジェクト ID にその環境変数を設定します。

gcloud alpha dlp

  1. Cloud SDK をインストールして初期化します

    この手順では、gcloud Alpha Commands コンポーネントも必要です。今すぐインストールできます。プロンプトが表示されたら、後でインストールすることもできます。

  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 への最初のリクエストを送信できました。

次のステップ