組み込みの機密情報の種類をカスタマイズする

コンテンツ内の機密情報を探すときには、ルールと呼ばれるものの中にその情報を記述する必要があります。 Microsoft Purview データ損失防止 (DLP) には、最も一般的な機密情報の種類に関する規則が含まれています。 これらのルールはすぐに使用できます。 それらを使用するには、ポリシーに含める必要があります。 これらの組み込みルールは、organization固有のニーズに合わせて調整できます。 これを行うには、カスタムの機密情報の種類を作成します。 このトピックでは、既存のルール コレクションを含む XML ファイルをカスタマイズして、潜在的なクレジットカード情報の広い範囲を検出する方法について説明します。

この例は、これ以外の組み込みの機密情報の種類に適用することもできます。 既定の機密情報の種類と XML 定義の一覧については、「 機密情報の種類のエンティティ定義」を参照してください。

ヒント

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

現在のルールの XML ファイルをエクスポートする

XML をエクスポートするには、セキュリティ & コンプライアンス PowerShell に接続する が必要です。

  1. PowerShell で、次のように入力して、organizationのルールを画面に表示します。 まだ独自のルールを作成していない場合は、"Microsoft Rule Package" というラベルの付いた既定の組み込みルールだけが表示されます。

    Get-DlpSensitiveInformationTypeRulePackage
    
  2. 次のように入力して、組織のルールを変数に格納します。 変数に何かを格納すると、後ほどリモート PowerShell コマンドで使用するフォーマットの中で簡単に利用できます。

    $ruleCollections = Get-DlpSensitiveInformationTypeRulePackage
    
  3. 以下のように入力して、すべてのデータを含むフォーマットされた XML ファイルを作成します。

    [System.IO.File]::WriteAllBytes('C:\custompath\exportedRules.xml', $ruleCollections.SerializedClassificationRuleCollection)
    

    重要

    ルール パックが実際に格納されている場所を指定してください。 C:\custompath\はプレースホルダーです。

変更する必要のあるルールを XML の中から見つける

上記のコマンドレットは、Microsoft が提供する既定の規則を含むルール コレクション全体をエクスポートしました。 次に、変更するクレジット カード番号ルールを具体的に探す必要があります。

  1. 前のセクションでエクスポートした XML ファイルをテキスト エディターで開きます。

  2. タグまで下に <Rules> スクロールします。これは、DLP ルールを含むセクションの先頭です。 この XML ファイルにはルール コレクション全体の情報が含まれているため、ルールを取得するために過去にスクロールする必要があるその他の情報が上部に含まれています。

  3. クレジット カード番号ルールの定義を見つけるには、 Func_credit_card を探します。 XML では、ルール名にスペースを含めることはできません。そのため、スペースは通常アンダースコアに置き換えられ、ルール名は省略されることがあります。 その例として、 SSN と省略される米国社会保障番号ルールがあります。 クレジット カード番号ルールの XML は、次のコード サンプルのようになります。

    <Entity id="50842eb7-edc8-4019-85dd-5a5c1f2bb085"
           patternsProximity="300" recommendedConfidence="85">
          <Pattern confidenceLevel="85">
           <IdMatch idRef="Func_credit_card" />
            <Any minMatches="1">
              <Match idRef="Keyword_cc_verification" />
              <Match idRef="Keyword_cc_name" />
              <Match idRef="Func_expiration_date" />
            </Any>
          </Pattern>
        </Entity>
    

XML にクレジット カード番号ルール定義が配置されたので、ニーズに合わせてルールの XML をカスタマイズできます。 XML 定義の更新については、このトピックの最後にある 用語用語集 を参照してください。

XML を変更し、新しい機密情報の種類を作成する

最初に、既定のルールを直接変更できないため、新しい機密情報の種類を作成する必要があります。 カスタムの機密情報の種類を使用してさまざまな操作を行うことができます。詳細については、「セキュリティ & コンプライアンス PowerShell でカスタムの機密情報の種類を作成する」を参照してください。 この例では、シンプルに保ち、裏付けとなる証拠を削除し、クレジット カード番号ルールにキーワードを追加します。

すべての XML ルール定義は、次の一般的なテンプレートに基づいて構築されます。 テンプレートにクレジット カード番号定義 XML をコピーして貼り付け、いくつかの値を変更する必要があります (「」に注意してください)。次の例のプレースホルダー) を選択し、変更した XML をポリシーで使用できる新しいルールとしてアップロードします。

<?xml version="1.0" encoding="utf-16"?>
<RulePackage xmlns="https://schemas.microsoft.com/office/2011/mce">
  <RulePack id=". . .">
    <Version major="1" minor="0" build="0" revision="0" />
    <Publisher id=". . ." />
    <Details defaultLangCode=". . .">
      <LocalizedDetails langcode=" . . . ">
         <PublisherName>. . .</PublisherName>
         <Name>. . .</Name>
         <Description>. . .</Description>
      </LocalizedDetails>
    </Details>
  </RulePack>

 <Rules>
   <!-- Paste the Credit Card Number rule definition here.-->
      <LocalizedStrings>
         <Resource idRef=". . .">
           <Name default="true" langcode=" . . . ">. . .</Name>
           <Description default="true" langcode=". . ."> . . .</Description>
         </Resource>
      </LocalizedStrings>
   </Rules>
</RulePackage>

これで、次の XML のようになります。 ルール パッケージとルールは一意の GUID によって識別されるため、ルール パッケージ用とクレジット カード番号ルールの GUID を置き換える GUID の 2 つを生成する必要があります。 次のコード サンプルのエンティティ ID の GUID は、組み込みのルール定義の GUID であり、新しいものに置き換える必要があります。 GUID を生成する方法は複数ありますが、PowerShell で「[guid]::NewGuid()」と入力して簡単に作成できます。

<?xml version="1.0" encoding="utf-16"?>
<RulePackage xmlns="https://schemas.microsoft.com/office/2011/mce">
  <RulePack id="8aac8390-e99f-4487-8d16-7f0cdee8defc">
    <Version major="1" minor="0" build="0" revision="0" />
    <Publisher id="8d34806e-cd65-4178-ba0e-5d7d712e5b66" />
    <Details defaultLangCode="en">
      <LocalizedDetails langcode="en">
        <PublisherName>Contoso Ltd.</PublisherName>
        <Name>Financial Information</Name>
        <Description>Modified versions of the Microsoft rule package</Description>
      </LocalizedDetails>
    </Details>
  </RulePack>

 <Rules>
    <Entity id="db80b3da-0056-436e-b0ca-1f4cf7080d1f"
       patternsProximity="300" recommendedConfidence="85">
      <Pattern confidenceLevel="85">
        <IdMatch idRef="Func_credit_card" />
        <Any minMatches="1">
          <Match idRef="Keyword_cc_verification" />
          <Match idRef="Keyword_cc_name" />
          <Match idRef="Func_expiration_date" />
        </Any>
      </Pattern>
    </Entity>
      <LocalizedStrings>
         <Resource idRef="db80b3da-0056-436e-b0ca-1f4cf7080d1f">
<!-- This is the GUID for the preceding Credit Card Number entity because the following text is for that Entity. -->
           <Name default="true" langcode="en-us">Modified Credit Card Number</Name>
           <Description default="true" langcode="en-us">Credit Card Number that looks for additional keywords, and another version of Credit Card Number that doesn't require keywords (but has a lower confidence level)</Description>
         </Resource>
      </LocalizedStrings>
   </Rules>
</RulePackage>

機密情報の種類から補強証拠の要件を削除する

これで、Microsoft Purview コンプライアンス ポータルにアップロードできる新しい機密情報の種類が作成されました。 次の手順では、ルールをより具体的にします。 チェックサムを渡すが、キーワードなどの追加 (裏付け) 証拠を必要としない 16 桁の数値のみを検索するようにルールを変更します。 これを行うには、XML のうち補強証拠を探している部分を削除する必要があります。 補強証拠は、誤検知の削減に役立ちます。 この場合、通常、クレジット カード番号の近くに特定のキーワードまたは有効期限があります。 その証拠を削除する場合は、confidenceLevel (この例では 85) を下げることで、クレジット カード番号が見つかったかどうかの信頼性を調整する必要もあります。

<Entity id="db80b3da-0056-436e-b0ca-1f4cf7080d1f" patternsProximity="300"
      <Pattern confidenceLevel="85">
        <IdMatch idRef="Func_credit_card" />
      </Pattern>
    </Entity>

組織に固有のキーワードを探す

補強証拠が必要であるものの、異なるキーワードまたは追加のキーワードを指定し、その証拠を探す場所を変更する必要がある場合について考えてみましょう。 を調整 patternsProximity して、16 桁の数値の周りの裏付けとなる証拠のウィンドウを展開または縮小できます。 独自のキーワードを追加するには、キーワード (keyword)リストを定義し、ルール内で参照する必要があります。 次の XML は、"company カード" と "Contoso カード" というキーワードを追加します。これにより、クレジット カード番号の 150 文字以内の語句を含むメッセージは、クレジット カード番号として識別されます。

<Rules>
<! -- Modify the patternsProximity to be "150" rather than "300." -->
    <Entity id="db80b3da-0056-436e-b0ca-1f4cf7080d1f" patternsProximity="150" recommendedConfidence="85">
      <Pattern confidenceLevel="85">
        <IdMatch idRef="Func_credit_card" />
        <Any minMatches="1">
          <Match idRef="Keyword_cc_verification" />
          <Match idRef="Keyword_cc_name" />
<!-- Add the following XML, which references the keywords at the end of the XML sample. -->
          <Match idRef="My_Additional_Keywords" />
          <Match idRef="Func_expiration_date" />
        </Any>
      </Pattern>
    </Entity>
<!-- Add the following XML, and update the information inside the <Term> tags with the keywords that you want to detect. -->
    <Keyword id="My_Additional_Keywords">
      <Group matchStyle="word">
        <Term caseSensitive="false">company card</Term>
        <Term caseSensitive="false">Contoso card</Term>
      </Group>
    </Keyword>

ルールをアップロードする

ルールをアップロードするには、次の手順を実行する必要があります。

  1. ルールを Unicode エンコードの .xml ファイルとして保存します。 これとは違うエンコードでファイルを保存すると、ルールが機能しないことに注意してください。

  2. セキュリティ/コンプライアンス PowerShell に接続します

  3. PowerShell で次のように入力します。

    New-DlpSensitiveInformationTypeRulePackage -FileData ([System.IO.File]::ReadAllBytes('C:\custompath\MyNewRulePack.xml'))
    

    重要

    ルール パックが実際に格納されている場所を指定してください。 C:\custompath\はプレースホルダーです。

  4. 確認のために「Y」と入力し、ENTER キーを押します。

  5. 次のように入力して、新しいルールの表示名とアップロードされたことを確認します。

    Get-DlpSensitiveInformationType
    

機密情報の検出に新しいルールを使用するようにするには、ルールを DLP ポリシーに追加する必要があります。 ポリシーにルールを追加する方法については、「 データ損失防止ポリシーの作成と展開」を参照してください。

用語集

このトピックの手順に登場した用語の定義は次のとおりです。



用語 定義
エンティティ エンティティは、クレジット カード番号などの機密情報の種類と呼ばれます。 各エンティティには、その ID として一意の GUID があります。 GUID をコピーして XML 内で検索すると、XML ルール定義と XML ルールをローカライズしたすべての翻訳版が見つかります。 また、翻訳版の GUID を検索して定義を見つけ、その GUID を検索することもできます。
関数 XML ファイルは、 を参照 Func_credit_cardします。これは、コンパイル済みコードの関数です。 関数は、複雑な正規表現を実行し、チェックサムが組み込みのルールと一致することを確認するために使用されます。 これはコード内で発生するため、一部の変数は XML ファイルに表示されません。
IdMatch 一致が照合されるパターンの ID です (たとえば、クレジット カード番号)。
キーワード リスト XML ファイルでは、 と keyword_cc_nameも参照keyword_cc_verificationされます。これは、エンティティの 内でpatternsProximity一致させるキーワードの一覧です。 現在、これらは XML には表示されません。
パターン パターンには、機密性の高い型が探しているものの一覧が含まれています。 これには、キーワード、正規表現、および内部関数 (チェックサムの検査などのタスクを実行する) が含まれます。 機密情報の種類には、一意の信頼度レベルを持つ複数のパターンを含めることができます。 これは、補強証拠が見つかる場合に高い信頼レベルを返し、補強証拠が少ししか、あるいはまったく見つからない場合に低い信頼レベルを返す、という機密情報の種類を作成する場合に役立ちます。
パターンの confidenceLevel DLP エンジンが一致を検索した内容の信頼性のレベルです。 信頼性のレベルは、パターンの要件が満たされた場合のパターンへの一致に関連付けられます。 これは、Exchange メール フロー ルール (トランスポート ルールとも呼ばれます) を使用する場合に考慮する必要がある信頼度測定です。
patternsProximity クレジットカード番号パターンのように見える場合は、patternsProximityその数値の周りの距離で、裏付けとなる証拠を探します。
recommendedConfidence このルールに対して推奨される信頼レベルです。 推奨される信頼度レベルは、エンティティとアフィニティに適用されます。 エンティティの場合、この数値はパターンの に confidenceLevel 対して評価されません。 この数値は、必要な場合に信頼レベルを選択するために役立つ提案にすぎません。 アフィニティの場合、パターンの は confidenceLevel 、メール フロー ルール アクションを recommendedConfidence 呼び出す数よりも大きくする必要があります。 recommendedConfidenceは、アクションを呼び出すメール フロー ルールで使用される既定の信頼レベルです。 必要に応じて、代わりに、パターンの信頼レベルに基づいて、呼び出されるメール フロー ルールを手動で変更できます。

詳細情報