カスタム メタデータ ラベル検出器を作成する

このドキュメントでは、コンテンツ内の特定のメタデータ ラベルを検出するように Sensitive Data Protection を構成する方法について説明します。

このドキュメントでは、メタデータ ラベルは、サポートされているファイルに埋め込まれたファイルラベル、または検査リクエストでクライアント アプリケーションによって提供されるメタデータを指します。 Sensitive Data Protection は、メタデータ条件に一致するコンテンツを検出すると、検出結果を生成します。

メタデータ ラベルをスキャンするには、カスタム メタデータ ラベル infoType を作成します。次に、その infoType を検索するように検査または検出スキャンを構成します。

特典とユースケース

この機能を使用すると、コンテンツ検査とポリシー適用に既存の分類タクソノミーを使用できます。ドキュメントにメタデータ ラベルを適用するカスタム分類システムまたはサードパーティ分類システムを使用している場合は、検査または検出オペレーション中にこれらのメタデータ ラベルを検出するように Sensitive Data Protection を構成できます。

使用例には、次のようなものがあります。

  • 特定のメタデータを含む Google ドライブ のラベル または Microsoft 秘密度 ラベルの有無についてファイルをスキャンします。
  • メタデータ ラベルの検出と標準の infoType 検出を組み合わせて、多層アプローチを実現します。
  • メタデータがファイルに埋め込まれていない場合でも、クライアント アプリケーションがコンテンツとともに渡すメタデータをスキャンします。このドキュメントでは、このタイプのメタデータをクライアント提供メタデータと呼びます。
  • 特定のメタデータ ラベルに基づいて Model Armor を使用してドキュメントをサニタイズします。Model Armor(または Gemini Enterprise などの Model Armor を使用するサービス)でこの機能を使用するには、このカスタム メタデータ ラベル検出器を参照する高度な Sensitive Data Protection 構成を Model Armor で作成する必要があります。

サポートされているメタデータ形式

この機能では、次のタイプのメタデータを検出できます。

  • Google ドライブのラベル
  • 次のファイル形式の Microsoft 秘密度ラベル:

    • DOCX
    • PDF
    • PPTX
    • XLSX
  • クライアント提供メタデータ

サポートされていない構成

カスタム メタデータ ラベル検出器は、次のものではサポートされていません。

メタデータ ラベル検出器を作成する

メタデータ ラベル検出器を作成するには、 CustomInfoType オブジェクト内に InspectConfig を定義します。スキャンするメタデータの種類に応じて、次のいずれかを定義します。

ファイルラベルをスキャンするメタデータ ラベル検出器を作成する

Google ドライブのラベルまたは Microsoft 秘密度ラベルをスキャンするには、 CustomInfoType を持つ FileLabelInfoType を定義します。

{
  "inspectConfig": {
    "customInfoTypes": [
      {
        "infoType": {
          "name": "CUSTOM_METADATA_LABEL_NAME"
        },
        "likelihood": "LIKELIHOOD",
        "sensitivityScore": {
          "score": "SENSITIVITY_SCORE"
        },
        "fileLabelInfoType": {
          "googleDriveLabel": {
            "labelId": "LABEL_ID",
            "labelFieldsToMatch": [
              {
                "id": "FIELD_ID",
                "value": "FIELD_VALUE"
              }
            ]
          },
          "sensitivityLabel": {
            "guid": "GUID"
          }
        }
      }
    ]
  }
}

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

  • CUSTOM_METADATA_LABEL_NAME: カスタム infoType 検出機能に割り当てる名前。
  • LIKELIHOOD: 省略可。このカスタム infoType に一致するすべての検出結果に割り当てる Likelihood 値。このフィールドを省略した場合、デフォルトの可能性レベルは VERY_LIKELY です。
  • SENSITIVITY_SCORE: 省略可。このカスタム infoType に一致するすべての検出結果に割り当てる SensitivityScore 。このフィールドを省略した場合、デフォルトの機密性スコアは HIGH です。

    機密性スコアはデータ プロファイルで使用されます。データのプロファイリング時に、Sensitive Data Protection は、infoType の機密性スコアを使用して 機密性レベルを計算します

  • LABEL_ID: 省略可。一致させる Google ドライブ ラベル の ID。LABEL_ID のみを指定した場合、検出機能は、フィールド値に関係なく、その Google ドライブのラベルが適用されているすべてのファイルに一致します。ラベル内の特定のフィールド値に一致させるには、labelFieldsToMatch オブジェクトを含めます。

  • FIELD_ID: labelFieldsToMatch オブジェクトを指定する場合は必須。一致させる Google ドライブのラベル フィールドの ID。

  • FIELD_VALUE: labelFieldsToMatch オブジェクトを指定する場合は必須。一致させる Google ドライブのラベル フィールドの値。

  • GUID: 省略可。一致させる Microsoft 秘密度 ラベルの GUID。

Google ドライブのラベルの検出機能の例

この inspectConfig の例では、CUSTOM_GOOGLE_DRIVE_LABEL_CONFIDENTIAL という名前のカスタム infoType を定義します。このカスタム infoType は、次のものを持つ Google ドライブのラベルを検出します。

  • ラベル ID mydrive-label-id
  • そのラベル内に、ID が sensitivity-field-id で値が confidential のフィールド。

labelFieldsToMatch でフィールド ID と値を指定しない場合、このカスタム infoType は、ラベル フィールドの有無に関係なく、mydrive-label-id ラベルを持つファイルを検出します。

{
  "inspectConfig": {
    "customInfoTypes": [
      {
        "infoType": {
          "name": "CUSTOM_GOOGLE_DRIVE_LABEL_CONFIDENTIAL"
        },
        "likelihood": "VERY_LIKELY",
        "fileLabelInfoType": {
          "googleDriveLabel": {
            "labelId": "mydrive-label-id",
            "labelFieldsToMatch": [
              {
                "id": "sensitivity-field-id",
                "value": "confidential"
              }
            ]
          }
        }
      }
    ],
    "minLikelihood": "POSSIBLE"
  }
}

検査ジョブでこの構成を使用すると、一致するものが検出された場合、Sensitive Data Protection は CUSTOM_GOOGLE_DRIVE_LABEL_CONFIDENTIAL 検出結果を生成します。

Microsoft 秘密度ラベルの検出器の例

この inspectConfig の例では、CUSTOM_SENSITIVITY_LABEL_CONFIDENTIAL という名前のカスタム infoType を定義します。このカスタム infoType は、GUID 12345678-9012-3456-7890-123456789012 を含む Microsoft 秘密度ラベルを検出します。

{
  "inspectConfig": {
    "customInfoTypes": [
      {
        "infoType": {
          "name": "CUSTOM_SENSITIVITY_LABEL_CONFIDENTIAL"
        },
        "likelihood": "VERY_LIKELY",
        "fileLabelInfoType": {
          "sensitivityLabel": {
            "guid": "12345678-9012-3456-7890-123456789012"
          }
        }
      }
    ],
    "minLikelihood": "POSSIBLE"
  }
}

検査ジョブでこの構成を使用すると、一致するものが検出された場合、Sensitive Data Protection は CUSTOM_SENSITIVITY_LABEL_CONFIDENTIAL 検出結果を生成します。

カスタム Key-Value ペアをスキャンするメタデータ ラベル検出器を作成する

正規表現を使用して、クライアント提供メタデータのカスタム Key-Value ペアをスキャンする手順は次のとおりです。

  1. CustomInfoType を持つ MetadataKeyValueExpression を定義します。

    {
      "inspectConfig": {
        "customInfoTypes": [
          {
            "infoType": {
              "name": "CUSTOM_METADATA_LABEL_NAME"
            },
            "likelihood": "LIKELIHOOD",
            "sensitivityScore": {
              "score": "SENSITIVITY_SCORE"
            },
            "metadataKeyValueExpression": {
              "keyRegex": "KEY_REGULAR_EXPRESSION",
              "valueRegex": "VALUE_REGULAR_EXPRESSION"
            }
          }
        ]
      }
    }
    

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

    • CUSTOM_METADATA_LABEL_NAME: カスタム infoType 検出機能に割り当てる名前。
    • LIKELIHOOD: 省略可。このカスタム infoType に一致するすべての検出結果に割り当てる Likelihood 値。このフィールドを省略した場合、デフォルトの可能性レベルは VERY_LIKELY です。
    • SENSITIVITY_SCORE: 省略可。このカスタム infoType に一致するすべての検出結果に割り当てる SensitivityScore 。このフィールドを省略した場合、デフォルトの機密性スコアは HIGH です。

      機密性スコアはデータ プロファイルで使用されます。データのプロファイリング時に、Sensitive Data Protection は、infoType の機密性スコアを使用して 機密性レベルを計算します

    • KEY_REGULAR_EXPRESSION: メタデータ ラベルのキーで検索する正規表現。

    • VALUE_REGULAR_EXPRESSION: メタデータ ラベルの値で検索する正規表現。

  2. content.inspect リクエストで、 ContentMetadataContentItem フィールドにクライアント提供メタデータを指定します。

クライアント提供メタデータをスキャンするリクエストの例

次の例は、PDF ファイルとクライアント提供メタデータの両方を含む content.inspect リクエストを示しています。このリクエストでは、CUSTOM_METADATA_CLASSIFICATION という名前のカスタム infoType を使用して、「機密」または「社内使用」とマークされたファイルをスキャンします。

{
  "inspectConfig": {
    "customInfoTypes": [
      {
        "infoType": {
          "name": "CUSTOM_METADATA_CLASSIFICATION"
        },
        "likelihood": "VERY_LIKELY",
        "metadataKeyValueExpression": {
          "keyRegex": "classification",
          "valueRegex": "Confidential|Internal Use"
        }
      }
    ]
  },
  "item": {
    "byteItem": {
      "type": "PDF",
      "data": "BASE64_ENCODED_PDF"
    },
    "contentMetadata": {
      "properties": [
        {
          "key": "classification",
          "value": "Confidential"
        }
      ]
    }
  }
}

BASE64_ENCODED_PDF は、スキャンする base64 エンコードされたファイルに置き換えます。

Sensitive Data Protection は、コンテンツ内で一致するものが検出されると、検出結果を生成します。検出結果の MetadataTypeMetadataLocation)は、一致がファイルに埋め込まれているか( (CONTENT_METADATA))、クライアントによって提供されているか(CLIENT_PROVIDED_METADATA)に応じて設定されます。

次のステップ

  • Model Armor で 高度な Sensitive Data Protection 構成を作成する。