コンテンツ ポリシーの作成と管理

このドキュメントでは、コンテンツ ポリシーの作成、取得、一覧表示、更新、削除を行う方法について説明します。コンテンツ ポリシーの詳細については、コンテンツ ポリシーの概要をご覧ください。

必要なロール

コンテンツ ポリシーの作成と管理に必要な権限を取得するには、プロジェクトに対する DLP 管理者 roles/dlp.admin)の IAM ロール付与を管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。

この事前定義ロールには、コンテンツ ポリシーの作成と管理に必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

コンテンツ ポリシーの作成と管理には、次の権限が必要です。

  • dlp.contentPolicies.create
  • dlp.contentPolicies.update
  • dlp.contentPolicies.list
  • dlp.contentPolicies.get
  • dlp.contentPolicies.delete

カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。

Gemini Enterprise コネクタとアプリ、または Gemini Notebook Enterprise ノートブックにコンテンツ ポリシーを適用する場合は、Gemini Enterprise サービス アカウントに DLP ユーザー(roles/dlp.user)ロールも付与する必要があります。詳細については、ソース内の機密データを保護するをご覧ください。

始める前に

  1. Google Cloud アカウントにログインします。 Google Cloudを初めて使用する場合は、 アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  4. Verify that billing is enabled for your Google Cloud project.

  5. Enable the Cloud Data Loss Prevention API.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  7. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  8. Verify that billing is enabled for your Google Cloud project.

  9. Enable the Cloud Data Loss Prevention API.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

  10. 省略可: コンテンツ ポリシーのアクションを BigQuery テーブルに記録するには、テーブルを作成します。エクスポートされたログのスキーマについては、ContentPolicyActionLog をご覧ください。

コンテンツ ポリシーを作成する

コンソール

  1. Google Cloud コンソールで、Sensitive Data Protection の [コンテンツ ポリシー] ページに移動します。

    コンテンツ ポリシーに移動

  2. プロジェクトを選択します。

  3. [作成] をクリックします。

  4. [Basic Information](基本情報)で、次の操作を行います。

    1. コンテンツ ポリシーの名前を入力します。
    2. 省略可。一意のコンテンツ ポリシー ID を入力します。コンテンツ ポリシー ID を入力しない場合、Sensitive Data Protection によって自動的に設定されます。
    3. コンテンツ ポリシーを保存するリージョンまたはマルチリージョンを選択します。
    4. [続行] をクリックします。
  5. [検査の構成] で、次の操作を行います。

    1. 検出する組み込みまたはカスタムの infoType を選択します。詳細については、Google Cloud コンソールを使用して infoType を管理するをご覧ください。

      既存の検査テンプレートを使用して検出を構成するには、[テンプレートからインポート] をクリックし、テンプレートの完全なリソース名を入力します。

    2. 省略可。検査ルールセットを追加します。

      クリックして手順を表示

      検査ルールセットを使用すると、コンテキスト ルールを使用して、組み込みの infoType 検出器とカスタム infoType 検出器の両方をカスタマイズできます。検査ルールの種類は次のとおりです。

      • 除外 ルール。誤った検索結果や望ましくない検索結果を除外するのに役立ちます。
      • ホットワード ルール。追加の検索結果を検出するのに役立ちます。
      • 調整ルール。検出結果が表示されるコンテキストに基づいて、検出結果の可能性を調整します。

      新しいルールセットを追加するには、まず [InfoTypes] セクションで 1 つ以上の組み込みまたはカスタムの infoType 検出器を指定します。ルールセットで変更する(ターゲット infoType)または評価に使用する(コンテキスト infoType)すべての infoType 検出機能を選択します。次の手順を行います。

      1. [ルールセットを追加] をクリックします。
      2. [対象の infoType を選択] フィールドで、ルールが満たされた場合にルールセットが変更する infoType を選択します。
      3. [ルールを追加] をクリックすると、[起動ワードルール]、[除外ルール]、[調整ルール] などのオプションを含むメニューが開きます。

      起動ワード ルールを作成するには、[起動ワード ルール] を選択します。次の操作を行います。

      1. [起動ワード] フィールドに、Sensitive Data Protection が検索する正規表現を入力します。
      2. [ホットワードの近接性] メニューで、入力したホットワードが選択した infoType の前後に検出されるかどうかを選択します。
      3. [infoType からの起動ワードの距離] に、起動ワードと選択した infoType との間のおおよその文字数を入力します。
      4. [信頼度の調整] で、一致に固定の可能性レベルを割り当てるか、デフォルトの可能性レベルを一定量増減させるかを選択します。

      除外ルールを作成するには、[除外ルール] と、作成する除外ルールのタイプ(正規表現 など)を選択します。次の操作を行います。

      1. 選択した除外ルールのタイプに応じて、ルールを適用するために検出する必要がある正規表現、フレーズ、起動ワード、コンテキスト infoType を入力します。
      2. 選択した除外ルールのタイプに応じて、一致タイプまたは画像包含タイプを設定します。
        • テキストベースの除外ルールを選択した場合は、次のいずれかの一致タイプを選択します。
          • 完全一致: 検出結果は、指定したテキストまたはコンテキスト infoType と完全に一致する必要があります。
          • 部分一致: 検出結果の部分文字列が、指定したテキストまたはコンテキスト infoType と一致する必要があります。
          • 逆一致: 検出結果は、指定したテキストまたはコンテキスト infoType と一致してはなりません。
        • 画像ベースの除外ルールを選択した場合は、ターゲットとコンテキストの infoType 間の必要な空間関係を選択します。たとえば、[Encloses] を選択した場合、ルールを適用するには、コンテキスト検出結果でターゲット検出結果を囲む必要があります。

      調整ルールを作成するには、[調整ルール] と調整ルールのタイプ([画像検出結果で調整] など)を選択します。次の操作を行います。

      1. [コンテキストの infoType] フィールドで、ターゲット検出結果のコンテキストを提供する infoType 検出器を選択します。Sensitive Data Protection では、コンテキスト infoType を使用して、ターゲット infoType を調整する必要があるかどうかを評価します。
      2. [最小尤度] フィールドで、コンテキスト infoType が調整ルールをトリガーできる最小尤度レベルを選択します。検出されたコンテキスト検出結果の可能性の値がこの値より低い場合、Sensitive Data Protection はターゲット検出結果の可能性を調整しません。
      3. 画像検出結果の場合は、[画像包含タイプ] フィールドで、ターゲットとコンテキストの infoType 間の必要な空間関係を選択します。たとえば、[Encloses] を選択した場合、ルールを適用するには、コンテキスト検出結果でターゲット検出結果を囲む必要があります。
      4. [可能性] フィールドで、ターゲット検出結果に割り当てる新しい可能性レベルを選択します。

      ルールセットを追加して、スキャン結果をさらに絞り込むことができます。

    3. 省略可。検出する検出結果の信頼度のしきい値を設定します。詳細については、一致の可能性をご覧ください。

    4. [続行] をクリックします。

  6. [ポリシー ルール] で、ポリシー ルールを追加して、検査構成で指定した infoType が検出されたときに Sensitive Data Protection が返す判定(許可またはブロック)を指定します。単一のポリシー ルールを追加して、任意の infoType に対して同じ判定を返すことも、複数のポリシー ルールを追加して、異なる infoType に対して異なる判定を返すこともできます。追加するポリシー ルールごとに条件を設定する必要があります。

    ポリシー ルールを追加する手順は次のとおりです。

    1. [ポリシー ルールを追加] をクリックします。
    2. infoType の検出結果に割り当てる判定([許可] または [ブロック])を選択します。
    3. [条件を追加] をクリックします。infoType ごとに異なる判定を設定するかどうかに応じて、[条件タイプ] を [すべての infoType] または [特定の infoType] に設定します。
    4. [特定の infoType] を選択した場合は、Sensitive Data Protection で選択した判定を返すために検出する必要がある infoType を入力します。
    5. 必要に応じて、ポリシー ルールと対応する条件を追加します。
    6. [続行] をクリックします。
  7. 省略可。[デフォルトのアクション] で、次の条件で適用する判定を指定します。

    これらの各条件のデフォルトの判定は ALLOW です。

    [続行] をクリックします。

  8. 省略可。[ロギング構成] で、スキャンするデータに対してコンテンツ ポリシーによって発行された判定を記録するロギングを有効にします。手順は次のとおりです。

    1. [Log policy execution to BigQuery] を選択します。
    2. Sensitive Data Protection で結果をロギングする必要がある既存の BigQuery テーブルの詳細を入力します。
  9. [作成] をクリックします。

REST

コンテンツ ポリシーを作成するには、projects.locations.contentPolicies.create メソッドに POST リクエストを送信します。リクエストの本文では、検出結果に基づいて判定を決定する検査構成とルールを含む content_policy オブジェクトを定義します。

content_policy オブジェクトには次のプロパティがあります。

{
  "contentPolicy": {
    "displayName": "DISPLAY_NAME",
    "inspectConfig": {
      "infoTypes": [
        {
          "name": "INFOTYPE_DETECTOR"
        }
      ],
      "ruleSet": "LIST_OF_RULES"
    },
    "rules": [
      {
        "conditions": [
          {
            "infoTypeCondition": {
              "anyInfoType": {}
            }
          }
        ],
        "action": {
          "returnVerdict": "INFOTYPE_CONDITION_VERDICT"
        }
      }
    ],
    "unsupportedFileType": {
      "returnVerdict": "UNSUPPORTED_FILE_TYPE_VERDICT"
    },
    "inputTooLarge": {
      "returnVerdict": "INPUT_TOO_LARGE_VERDICT"
    },
    "failedToScanSupportedFileType": {
      "returnVerdict": "FAILED_TO_SCAN_VERDICT"
    },
    "defaultAction": {
      "returnVerdict": "DEFAULT_ACTION_VERDICT"
    },
    "loggingConfigs": [
      {
        "logToBigQuery": {
          "projectId": "LOG_PROJECT_ID",
          "datasetId": "LOG_DATASET_ID",
          "tableId": "LOG_TABLE_ID"
        }
      }
    ]
  },
  "contentPolicyId": "CONTENT_POLICY_ID"
}

次のように置き換えます。

  • DISPLAY_NAME: 省略可。コンテンツ ポリシーの人が読める形式の名前。
  • INFOTYPE_DETECTOR: 組み込みまたはカスタムの infoType。
  • LIST_OF_RULES: 省略可。スキャン結果を絞り込むための infoType 検出器の変更で定義されている検査ルールのリスト。このコードは、簡潔にするために一部省略されています。コンテンツ ポリシー内のルールセット定義の例については、拡張された例をご覧ください。
  • INFOTYPE_CONDITION_VERDICT: infoType の検出結果に割り当てる判定(ALLOW または BLOCK)。
  • UNSUPPORTED_FILE_TYPE_VERDICT: 省略可。サポートされていないファイルに割り当てる判定: ALLOW または BLOCK。詳細については、サポートされているファイル形式とスキャンモードをご覧ください。
  • INPUT_TOO_LARGE_VERDICT: 省略可。スキャンするには大きすぎるサポート対象のファイルに割り当てる判定: ALLOW または BLOCK
  • FAILED_TO_SCAN_VERDICT: 省略可。スキャンできないファイル(破損したファイルや暗号化されたファイルなど)に割り当てる判定: ALLOW または BLOCK
  • DEFAULT_ACTION_VERDICT: 省略可。スキャンされたコンテンツに一致するルールがない場合に割り当てる判定: ALLOW または BLOCK
  • LOG_PROJECT_ID: 書き込み先の BigQuery テーブルを含むプロジェクトの ID。
  • LOG_DATASET_ID: 書き込む BigQuery テーブルを含むデータセットの ID。
  • LOG_TABLE_ID: 書き込み先の BigQuery テーブルの ID。
  • CONTENT_POLICY_ID: コンテンツ ポリシーの一意の ID。

レスポンスの例については、展開された例をご覧ください。

コンテンツ ポリシーの詳細を取得する

コンソール

  1. Google Cloud コンソールで、Sensitive Data Protection の [コンテンツ ポリシー] ページに移動します。

    コンテンツ ポリシーに移動

  2. プロジェクトを選択します。

  3. 表示するコンテンツ ポリシーのリソース名をクリックします。

  4. [詳細] タブで、コンテンツ ポリシーの詳細を表示します。

REST

コンテンツ ポリシーを取得するには、projects.locations.contentPolicies.get メソッドに GET リクエストを送信します。

リクエストのデータを使用する前に、次のように置き換えます。

  • REGION: コンテンツ ポリシーが保存されているリージョン(例: us-west2)。リージョンの完全なリストについては、Sensitive Data Protection のロケーションをご覧ください。
  • PROJECT_ID: コンテンツ ポリシーを含むプロジェクトの ID。
  • CONTENT_POLICY_ID: 詳細を取得するコンテンツ ポリシーの ID。

HTTP メソッドと URL:

GET https://dlp.REGION.rep.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/contentPolicies/CONTENT_POLICY_ID

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

{
  "name": "projects/example-project/locations/us-west1/contentPolicies/block-credit-cards-policy",
  "rules": [
    {
      "conditions": [
        {
          "infoTypeCondition": {
            "anyInfoType": {}
          }
        }
      ],
      "action": {
        "returnVerdict": "BLOCK"
      }
    }
  ],
  "inspectConfig": {
    "infoTypes": [
      {
        "name": "CREDIT_CARD_NUMBER"
      }
    ],
    "minLikelihood": "LIKELY",
    "limits": {}
  }
}

プロジェクト内のすべてのコンテンツ ポリシーを一覧表示する

コンソール

  1. Google Cloud コンソールで、Sensitive Data Protection の [コンテンツ ポリシー] ページに移動します。

    コンテンツ ポリシーに移動

  2. プロジェクトを選択します。プロジェクトのコンテンツ ポリシーのリストが表示されます。

REST

プロジェクト内のコンテンツ ポリシーを一覧表示するには、projects.locations.contentPolicies.list メソッドに LIST リクエストを送信します。

リクエストのデータを使用する前に、次のように置き換えます。

  • REGION: 一覧表示するコンテンツ ポリシーが保存されているリージョン(us-west2 など)。リージョンの完全なリストについては、Sensitive Data Protection のロケーションをご覧ください。
  • PROJECT_ID: 一覧表示するコンテンツ ポリシーを含むプロジェクトの ID。

HTTP メソッドと URL:

GET https://dlp.REGION.rep.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/contentPolicies

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

{
  "contentPolicies": [
      {
  "name": "projects/example-project/locations/us-west1/contentPolicies/block-credit-cards-policy",
  "rules": [
    {
      "conditions": [
        {
          "infoTypeCondition": {
            "anyInfoType": {}
          }
        }
      ],
      "action": {
        "returnVerdict": "BLOCK"
      }
    }
  ],
  "inspectConfig": {
    "infoTypes": [
      {
        "name": "CREDIT_CARD_NUMBER"
      }
    ],
    "minLikelihood": "LIKELY",
    "limits": {}
  }
},
    {
      "name": "projects/example-project/locations/us-west1/contentPolicies/block-pii",
      ...
    }
  ]
}

コンテンツ ポリシーを更新する

コンソール

  1. Google Cloud コンソールで、Sensitive Data Protection の [コンテンツ ポリシー] ページに移動します。

    コンテンツ ポリシーに移動

  2. プロジェクトを選択します。

  3. 編集するコンテンツ ポリシーのリソース名をクリックします。

  4. [編集] をクリックします。

  5. コンテンツ ポリシーの詳細を編集します。

REST

コンテンツ ポリシーを更新するには、projects.locations.contentPolicies.patch メソッドに PATCH リクエストを送信します。リクエスト本文で、更新された content_policy オブジェクトを定義します。

リクエストのデータを使用する前に、次のように置き換えます。

  • REGION: Sensitive Data Protection のリージョン エンドポイントが使用可能なリージョン(us-west2 など)。リージョンの完全なリストについては、Sensitive Data Protection のロケーションをご覧ください。
  • PROJECT_ID: 実際の Google Cloud プロジェクト ID。プロジェクト ID は英数字からなる文字列です(例: example-project)。
  • CONTENT_POLICY_ID: 更新するコンテンツ ポリシーの ID。

HTTP メソッドと URL:

PATCH https://dlp.REGION.rep.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/contentPolicies/CONTENT_POLICY_ID

リクエストの本文(JSON):

{
  "contentPolicy": {
    "displayName": "displayName",
    "inspectConfig": {
      "infoTypes": [
        {
          "name": "CREDIT_CARD_NUMBER"
        }
      ],
      "minLikelihood": "LIKELY"
    },
    "rules": [
      {
        "conditions": [
          {
            "infoTypeCondition": {
              "anyInfoType": {}
            }
          }
        ],
        "action": {
          "returnVerdict": "BLOCK"
        }
      }
    ]
  }
}

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

{
  "name": "projects/example-project/locations/us-west1/contentPolicies/block-credit-cards-policy",
  "rules": [
    {
      "conditions": [
        {
          "infoTypeCondition": {
            "anyInfoType": {}
          }
        }
      ],
      "action": {
        "returnVerdict": "BLOCK"
      }
    }
  ],
  "inspectConfig": {
    "infoTypes": [
      {
        "name": "CREDIT_CARD_NUMBER"
      }
    ],
    "minLikelihood": "LIKELY",
    "limits": {}
  }
}

コンテンツ ポリシーを削除する

コンソール

  1. Google Cloud コンソールで、Sensitive Data Protection の [コンテンツ ポリシー] ページに移動します。

    コンテンツ ポリシーに移動

  2. プロジェクトを選択します。

  3. 削除するコンテンツ ポリシーを選択します。

  4. [削除] をクリックします。

REST

コンテンツ ポリシーを削除するには、projects.locations.contentPolicies.delete メソッドに DELETE リクエストを送信します。

リクエストのデータを使用する前に、次のように置き換えます。

  • REGION: コンテンツ ポリシーが保存されているリージョン(例: us-west2)。リージョンの完全なリストについては、Sensitive Data Protection のロケーションをご覧ください。
  • PROJECT_ID: コンテンツ ポリシーを含むプロジェクトの ID。
  • CONTENT_POLICY_ID: 削除するコンテンツ ポリシーの ID。

HTTP メソッドと URL:

DELETE https://dlp.REGION.rep.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/contentPolicies/CONTENT_POLICY_ID

リクエストを送信するには、次のいずれかのオプションを展開します。

成功したことを示すステータス コード(2xx)と空のレスポンスが返されます。

REST の例

次の REST の例は、REST API を使用してコンテンツ ポリシーを作成する方法を示しています。

簡単な例

次の例では、可能性が POSSIBLE 以上の CREDIT_CARD_NUMBER の結果を特定するポリシーを作成します。クレジット カード番号が見つかった場合、Sensitive Data Protection は BLOCK の判定を返します。

リクエストのデータを使用する前に、次のように置き換えます。

  • REGION: Sensitive Data Protection のリージョン エンドポイントが使用可能なリージョン(us-west2 など)。リージョンの完全なリストについては、Sensitive Data Protection のロケーションをご覧ください。
  • PROJECT_ID: 実際の Google Cloud プロジェクト ID。プロジェクト ID は英数字からなる文字列です(例: example-project)。

HTTP メソッドと URL:

POST https://dlp.REGION.rep.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/contentPolicies

リクエストの本文(JSON):

{
  "contentPolicy": {
    "displayName": "displayName",
    "inspectConfig": {
      "infoTypes": [
        {
          "name": "CREDIT_CARD_NUMBER"
        }
      ],
      "minLikelihood": "POSSIBLE"
    },
    "rules": [
      {
        "conditions": [
          {
            "infoTypeCondition": {
              "anyInfoType": {}
            }
          }
        ],
        "action": {
          "returnVerdict": "BLOCK"
        }
      }
    ]
  },
  "contentPolicyId": "block-credit-cards-policy"
}

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

{
  "name": "projects/example-project/locations/us-west1/contentPolicies/block-credit-cards-policy",
  "rules": [
    {
      "conditions": [
        {
          "infoTypeCondition": {
            "anyInfoType": {}
          }
        }
      ],
      "action": {
        "returnVerdict": "BLOCK"
      }
    }
  ],
  "inspectConfig": {
    "infoTypes": [
      {
        "name": "CREDIT_CARD_NUMBER"
      }
    ],
    "minLikelihood": "POSSIBLE",
    "limits": {}
  }
}

展開された例

次の例では、可能性が POSSIBLE 以上の CREDIT_CARD_NUMBER の結果を特定するポリシーを作成します。このルールには、検出結果の近くで単語 credit card が検出された場合に、検出結果の可能性の値を VERY_LIKELY に引き上げる起動ワードルールが含まれています。

  • Sensitive Data Protection がクレジット カード番号の可能性があるものを検出すると、BLOCK 判定が返されます。
  • スキャンするファイルがサポートされていない、大きすぎる、破損している、暗号化されている、またはスキャンできない場合、Sensitive Data Protection は BLOCK の判定を返します。
  • スキャンされたコンテンツに一致するルールがない場合、Sensitive Data Protection は ALLOW 判定を返します。

リクエストのデータを使用する前に、次のように置き換えます。

  • REGION: Sensitive Data Protection のリージョン エンドポイントが使用可能なリージョン(us-west2 など)。リージョンの完全なリストについては、Sensitive Data Protection のロケーションをご覧ください。
  • PROJECT_ID: 実際の Google Cloud プロジェクト ID。プロジェクト ID は英数字からなる文字列です(例: example-project)。

HTTP メソッドと URL:

POST https://dlp.REGION.rep.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/contentPolicies

リクエストの本文(JSON):

{
  "contentPolicy": {
    "displayName": "displayName",
    "inspectConfig": {
      "infoTypes": [
        {
          "name": "CREDIT_CARD_NUMBER"
        }
      ],
      "ruleSet": [
        {
          "infoTypes": [
            {
              "name": "CREDIT_CARD_NUMBER"
            }
          ],
          "rules": [
            {
              "hotwordRule": {
                "hotwordRegex": {
                  "pattern": "credit\\scard"
                },
                "proximity": {
                  "windowBefore": 10,
                  "windowAfter": 10
                },
                "likelihoodAdjustment": {
                  "fixedLikelihood": "VERY_LIKELY"
                }
              }
            }
          ]
        }
      ]
    },
    "rules": [
      {
        "conditions": [
          {
            "infoTypeCondition": {
              "anyInfoType": {}
            }
          }
        ],
        "action": {
          "returnVerdict": "BLOCK"
        }
      }
    ],
    "unsupportedFileType": {
      "returnVerdict": "BLOCK"
    },
    "inputTooLarge": {
      "returnVerdict": "BLOCK"
    },
    "failedToScanSupportedFileType": {
      "returnVerdict": "BLOCK"
    },
    "defaultAction": {
      "returnVerdict": "ALLOW"
    }
  },
  "contentPolicyId": "block-credit-cards-policy"
}

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

{
  "name": "projects/example-project/locations/us-west2/contentPolicies/block-credit-cards-policy",
  "rules": [
    {
      "conditions": [
        {
          "infoTypeCondition": {
            "anyInfoType": {}
          }
        }
      ],
      "action": {
        "returnVerdict": "BLOCK"
      }
    }
  ],
  "inspectConfig": {
    "infoTypes": [
      {
        "name": "CREDIT_CARD_NUMBER"
      }
    ],
    "limits": {},
    "ruleSet": [
      {
        "infoTypes": [
          {
            "name": "CREDIT_CARD_NUMBER"
          }
        ],
        "rules": [
          {
            "hotwordRule": {
              "hotwordRegex": {
                "pattern": "credit\\scard"
              },
              "proximity": {
                "windowBefore": 10,
                "windowAfter": 10
              },
              "likelihoodAdjustment": {
                "fixedLikelihood": "VERY_LIKELY"
              }
            }
          }
        ]
      }
    ]
  },
  "unsupportedFileType": {
    "returnVerdict": "BLOCK"
  },
  "inputTooLarge": {
    "returnVerdict": "BLOCK"
  },
  "failedToScanSupportedFileType": {
    "returnVerdict": "BLOCK"
  },
  "defaultAction": {
    "returnVerdict": "ALLOW"
  }
}

メタデータ ラベルのスキャンを含む例

次の例では、Sensitive Data Protection に、クレジット カード番号とキー MSIP_Label_12345-12345-1234-12345_Enabled を持つメタデータ ラベルをスキャンするよう指示しています。Sensitive Data Protection は、検出された場合、BLOCK 判定を返します。

メタデータ ラベルのスキャンの詳細については、カスタム メタデータ ラベル検出器を作成するをご覧ください。

リクエストのデータを使用する前に、次のように置き換えます。

  • REGION: Sensitive Data Protection のリージョン エンドポイントが使用可能なリージョン(us-west2 など)。リージョンの完全なリストについては、Sensitive Data Protection のロケーションをご覧ください。
  • PROJECT_ID: 実際の Google Cloud プロジェクト ID。プロジェクト ID は英数字からなる文字列です(例: example-project)。

HTTP メソッドと URL:

POST https://dlp.REGION.rep.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/contentPolicies

リクエストの本文(JSON):

{
  "contentPolicy": {
    "displayName": "displayName",
    "inspectConfig": {
      "infoTypes": [
        {
          "name": "CREDIT_CARD_NUMBER"
        }
      ],
      "customInfoTypes": [
        {
          "infoType": {
            "name": "CUSTOM_MSIP1"
          },
          "likelihood": "VERY_LIKELY",
          "fileLabelInfoType": {
            "sensitivityLabel": {
              "guid": "12345678-1234-1234-1234-123456789012"
            }
          }
        }
      ],
      "minLikelihood": "POSSIBLE"
    },
    "rules": [
      {
        "conditions": [
          {
            "infoTypeCondition": {
              "anyInfoType": {}
            }
          }
        ],
        "action": {
          "returnVerdict": "BLOCK"
        }
      }
    ]
  },
  "contentPolicyId": "block-credit-cards-policy-metadata-scanning"
}

リクエストを送信するには、次のいずれかのオプションを展開します。

次のような JSON レスポンスが返されます。

{
  "name": "projects/example-project/locations/us-west1/contentPolicies/block-credit-cards-policy-metadata-scanning",
  "rules": [
    {
      "conditions": [
        {
          "infoTypeCondition": {
            "anyInfoType": {}
          }
        }
      ],
      "action": {
        "returnVerdict": "BLOCK"
      }
    }
  ],
  "inspectConfig": {
    "infoTypes": [
      {
        "name": "CREDIT_CARD_NUMBER"
      }
    ],
    "minLikelihood": "POSSIBLE",
    "limits": {},
    "customInfoTypes": [
      {
        "infoType": {
          "name": "CUSTOM_MSIP1"
        },
        "likelihood": "VERY_LIKELY",
        "fileLabelInfoType": {
          "sensitivityLabel": {
            "guid": "12345678-1234-1234-1234-123456789012"
          }
        }
      }
    ]
  }
}

次のステップ