次の方法で共有


機密情報の種類 REGEX バリデーターとその他のチェック

重要

Microsoft カスタマー サービス/サポートでは、カスタム分類または正規表現パターンの作成をサポートしていません。 サポート エンジニアは、機能をテストするためのサンプル正規表現パターンを提供したり、予期したとおりにトリガーされない既存の正規表現パターンのトラブルシューティングを支援するなど、この機能に対する限定的なサポートを提供できます。 ただし、サポート エンジニアは、カスタム コンテンツ マッチング開発が要件または義務を満たしていることを保証することはできません。

ヒント

E5 のお客様でない場合は、90 日間の Microsoft Purview ソリューション試用版を使用して、Purview の追加機能が組織のデータ セキュリティとコンプライアンスのニーズの管理にどのように役立つかを確認してください。 Microsoft Purview トライアル ハブ で今すぐ開始してください。 サインアップと試用期間の詳細については、こちらをご覧ください。

機密情報の種類の正規表現検証コントロール

チェックサム バリデーター

正規表現の数字に対してチェックサムを実行するには、 チェックサム 検証ツールを使用します。 たとえば、最後の桁が mod 9 計算を使用して検証されたチェックサム桁である 8 桁のライセンス番号の SIT を作成する必要がある場合は、次のようにチェックサム アルゴリズムを設定します。

Sum = digit 1 * Weight 1 + digit 2 * weight 2 + digit 3 * weight 3 + digit 4 * weight 4 + digit 5 * weight 5 + digit 6 * weight 6 + digit 7 * weight 7 + digit 8 * weight 8
Mod value = Sum % 9
If Mod value == digit 8
    Account number is valid
If Mod value != digit 8
    Account number is invalid
  1. 次の正規表現を使用して、プライマリ要素を定義します。

    \d{8}
    
  2. チェックサム 検証コントロールを追加します。

  3. コンマで区切られた重み値、チェック桁の位置、mod 値を追加します。 剰余演算の詳細については、「 剰余演算」を参照してください。

    注:

    チェック桁がチェックサム計算の一部でない場合は、チェック桁の重みとして 0 を使用します。 たとえば、前のケースでは、チェック桁がチェック桁の計算に使用されない場合、重み 8 は 0 に等しくなります。

    構成されたチェックサム 検証コントロールのスクリーンショット。

パラメーター

  • 重み: 正規表現の位置 1 から最後の位置までの各桁を乗算する必要がある一連の数値を定義します。 これにより、合計積が計算されます。 重み付け位置は数字の順序のみを参照します。ダッシュのような非デジタル文字は考慮されません。
  • Mod: 前の操作の結果に対して剰余演算を実行します。
  • ModCoefficient: 剰余結果に対して加算または減算を実行します。
  • CheckDigit:計算された数値を比較するチェック桁の位置を定義します。

高度なチェックサム 検証ツール

PositionBasedUpdate、UseAscii、MultiDigitResult、CheckDigitValue などのパラメーターを使用することで、スクリプトを必要とせずに高度なチェックサムを使用できます。

  • 計算前の桁置換: チェックサム計算の前に、位置または値に基づいて数字を置き換えるルールを定義します。

  • 文字から ASCII への変換: 非デジタル文字を無視される代わりに ASCII 値に変換できるようになりました。これにより、英数字入力のチェックサム サポートが有効になります。

  • 複数桁の結果の 1 桁の削減: 中間の結果は、数字 (12 → 1 +2 = 3) を合計することで 1 桁に縮小できるようになりました。これにより、よりコンパクトで一貫性のある出力が可能になります。

  • Two-Digit 結果の後処理: 除算や剰余などの数学的演算を 2 桁の結果に適用して、最終的な値を導き出します。

  • 特定のチェックディジット値の除外:許可されていないチェック桁の値の一覧を定義します。 計算結果が一致する場合、システムは入力を変更し、チェックサム ロジックを再実行します。

  • 最後のチェック桁の置換:計算後、特定のチェック桁の値を代替値に置き換えることができます。

高度なチェックサム バリデーター パラメーター

  • UseAscii: アルファベットを ascii 値に置き換える
  • PositionBasedUpdate: チェックサムの事前計算。 属性 match-position-replacewith に基づいて数字を更新します。
  • CheckDigitValue: チェックサム計算の後。 計算されたチェックサムが繰り返しリストの一部である場合は、それに対して定義された操作を実行します。
  • ltiDigitResult:** Post/Intermediate チェックサム計算。 Post/intermediate の計算結果が複数の数字の場合は、1 桁になるまで定義された操作を実行します。

たとえば、以下の XML では、重み、mod、checkdigit、ascii というパラメーターを渡しています。

<Validators id="Validator_test_id_card_number">
<Validator type="Checksum">
<Param name="Weights">1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1</Param>
<Param name="Mod">9</Param>
<Param name="CheckDigit">7</Param>
<Param name="UseAscii">1</Param>
</Validator>
</Validators>
制限事項
  • UI サポート 高度なチェックサム ロジックを使用した SID の作成または編集は、UX では使用できません。
  • 英数字の SID では、重みが定義されていない場合、文字はスキップされます。

日付検証コントロール

正規表現に埋め込まれた日付値が、作成する新しいパターンの一部である場合は、 日付検証ツール を使用して、その日付値が条件を満たしているかどうかをテストできます。 たとえば、9 桁の従業員 ID 番号の SIT を作成します。 最初の 6 桁は DDMMYY 形式の採用日であり、最後の 3 桁はランダムに生成された数値です。 最初の 6 桁が正しい形式であることを検証するには、次の手順に従います。

  1. 次の正規表現を使用して、プライマリ要素を定義します。

    \d{9}
    
  2. 日付検証コントロールを追加します。

  3. 日付形式と開始オフセットを選択します。 日付文字列は最初の 6 桁であるため、オフセットは 0

    構成された日付検証コントロールのスクリーンショット。

バリデーターとしての機能プロセッサ

最も一般的に使用される一部の SID には、関数プロセッサをバリデーターとして使用できます。 関数プロセッサを使用すると、SIT で必要な追加のチェックに確実に合格するようにしながら、独自の正規表現を定義できます。 たとえば、Func_India_Aadharでは、定義したカスタム正規表現が、インドの Aadhar カードに必要な検証ロジックを確実に渡します。 バリデーターとして使用できる DLP 関数の詳細については、「 機密情報の種類の関数」を参照してください。

Luhn チェック 検証コントロール

Luhn アルゴリズムを渡す必要がある正規表現を含むカスタム機密情報の種類がある場合は、Luhn チェック 検証コントロールを使用できます。

機密情報の種類の追加チェック

利用可能な追加のチェックの定義と例を次に示します。

特定の一致を除外する: このチェックを使用すると、編集中のパターンの一致を検出するときに除外するキーワードを定義できます。 たとえば、有効な数値と一致しないので、'4111111111111111' などのテスト用クレジット カード番号を除外することができます。

文字で始まる または始まらない: このチェック ボックスを使用すると、一致する項目で始まる必要がある文字または一致する項目で始まってはならない文字を定義できます。 たとえば、41、42、または 43 で始まるクレジット カード番号のみを検出する場合のようにパターンで 検出する場合は、[ 最初は ] を選び、一覧に 41、42、43 をコンマで区切って追加します。

文字で終わるまたは終わらない:このチェックボックスを使用すると、一致する項目が終わる必要がある文字または一致する項目が終わってはならない文字を定義できます。 たとえば、従業員 ID 番号を 0 または 1 で終えることができない場合 は、[で終わらない ] を選択し、コンマで区切られた 0 と 1 をリストに追加します。

重複する文字を除外: このチェック ボックスをオンにした場合、すべての桁が同一の一致を無視できます。 たとえば、6 桁の従業員 ID 番号にすべての数字を同じにできない場合は、[ 重複する文字を除外する ] を選択して、従業員 ID の有効な一致の一覧から111111、222222、333333、444444、555555、666666、777777、888888、999999、00000 を除外できます。

プレフィックスを含める、または除外する: このチェックでは、一致するエンティティの直前に存在する必要があるキーワードまたは存在してはいけないキーワードを定義できます。 選択内容に応じて、ここに含めるプレフィックスの前にエンティティが含まれている場合、エンティティは一致するか一致しません。 たとえば、プレフィックス GUID除外した場合、GUID が先行するエンティティは一致しません。

サフィックスを含める、または除外する: このチェックでは、一致するエンティティの直後に存在する必要があるキーワードまたは存在してはいけないキーワードを定義できます。 選択内容に応じて、エンティティの後にここに含めるサフィックスが続く場合、エンティティは一致するか一致しません。 たとえば、サフィックス GUID除外する場合、その後に:GUIDが続くテキストは一致しません。