一致の可能性のカスタマイズ

ホットワード ルールを使用すると、組み込みとカスタムの infoType 検出器を強力なコンテキスト ルールで拡張できます。また、ホットワード ルールによって既存の infoType 検出器に正規表現と近接範囲の検出器を追加でき、さらに一致の可能性の値を適切に調整できます。

ホットワード ルールの詳細

infoType 検出器にはホットワード ルールを 1 つ以上含めることができます。あるいは、まったく含めなくてもかまいません。それぞれのホットワード ルール(HotwordRule オブジェクト)は検査ルール(InspectionRule オブジェクト)の中で定義します。それぞれの検査ルールは InspectConfig オブジェクトの中に指定します。

ホットワード ルールは、[HOTWORDRULE_OBJECT] によって、辞書のカスタム infoType の作成正規表現のカスタム infoType の作成の JSON の例で示されている場所に指定します。"detectionRules" 配列内に JSON オブジェクトとして指定された単一のホットワード ルールは、次のようになります。

"detectionRules":[
  {
    "hotwordRule":{
      "hotwordRegex":{
        "pattern":"[REGEX_PATTERN]"
      },
      "proximity":{
        "windowAfter":"[NUM_CHARS_TO_CONSIDER_AFTER_FINDING]",
        "windowBefore":"[NUM_CHARS_TO_CONSIDER_BEFORE_FINDING]"
      }
      "likelihoodAdjustment":{
        "fixedLikelihood":"[LIKELIHOOD_VALUE]"
             -- OR --
        "relativeLikelihood":"[LIKELIHOOD_ADJUSTMENT]"
      },
    }
  },
  ...
]

各ホットワード ルールには次の 3 つのコンポーネントがあります。

  • "hotwordRegex": 何をホットワードとして限定するかを定義する正規表現パターン(Regex オブジェクト)。
  • "proximity": 結果の近接範囲。この範囲内にホットワード全体が入っている必要があります。このフィールドには、次の 2 つの値で構成される Proximity オブジェクトが含まれています。

    • "windowBefore": 結果の前の、考慮対象となる文字数。
    • "windowAfter": 結果の後の、考慮対象となる文字数。
  • "likelihoodAdjustment": 結果の一致の可能性の調整。このフィールドには、次の 2 つの値のいずれかに設定できる LikelihoodAdjustment オブジェクトが含まれています。

    • "fixedLikelihood": 結果を設定する固定された Likelihood 値。
    • "relativeLikelihood": 結果の一致の可能性をどのレベルまで上げるか、または下げるかを示す数値。たとえば、検出ルールを適用しない状態で結果が POSSIBLE になる場合に、relativeLikelihood の値が 1 であればその結果は LIKELY に格上げされ、-1 であれば UNLIKELY に格下げされます。一致の可能性は VERY_UNLIKELY を下回ることも VERY_LIKELY を超えることもないため、基本の可能性が VERY_LIKELY のときに調整値 1 を適用し、次に調整値 -1 を適用すると、最終的な可能性は LIKELY になります。

ホットワードの例: カルテ番号を照合する

###-#-##### 形式のカルテ番号のようなカスタム infoType を検出する必要があり、この番号の後ではなく前にホットワード「MRN」があるときに、Cloud DLP の結果の一致の可能性を引き上げたいとします。次のようになります。

  • 123-4-56789 は POSSIBLE として一致します。
  • MRN 123-4-56789 は VERY_LIKELY として一致します。

次の JSON の例は、正規表現 infoType 検出器の作成で説明されている定義に加えて、ホットワード ルールが指定されたカスタム正規表現を示しています。

JSON 入力:

POST https://dlp.googleapis.com/v2/projects/[PROJECT_ID]/content:inspect?key={YOUR_API_KEY}

{
  "item":{
    "value":"Patient's MRN 444-5-22222"
  },
  "inspectConfig":{
    "customInfoTypes":[
      {
        "infoType":{
          "name":"C_MRN"
        },
        "regex":{
          "pattern":"[0-9]{3}-[0-9]{1}-[0-9]{5}"
        },
        "likelihood":"POSSIBLE",
        "detectionRules":[
          {
            "hotwordRule":{
              "hotwordRegex":{
                "pattern":"\b(?i)mrn(?-i)|\b(?i)Medical(?-i)"
              },
              "likelihoodAdjustment":{
                "fixedLikelihood":"VERY_LIKELY"
              },
              "proximity":{
                "windowBefore":10
              }
            }
          }
        ]
      }
    ]
  }
}

JSON 出力:

{
  "result":{
    "findings":[
      {
        "infoType":{
          "name":"C_MRN"
        },
        "likelihood":"VERY_LIKELY",
        "location":{
          "byteRange":{
            "start":"14",
            "end":"25"
          },
          "codepointRange":{
            "start":"14",
            "end":"25"
          }
        },
        "createTime":"2018-11-13T18:50:44.337Z"
      }
    ]
  }
}

この出力は、指定された「C_MRN」という名前を持つカスタム infoType 検出器とカスタム正規表現を使用して、Cloud DLP でカルテ番号が正しく識別されたことを示しています。さらに、検出ルールのコンテキスト照合によって、構成された VERY_LIKELY という確実性が MRN に割り当てられています。

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Data Loss Prevention のドキュメント