キーワード ディクショナリの作成

注:  最新のヘルプ コンテンツをできるだけ早く、お客様がお使いの言語で提供したいと考えております。 このページは、自動翻訳によって翻訳されているため、文章校正のエラーや不正確な情報が含まれている可能性があります。私たちの目的は、このコンテンツがお客様の役に立つようにすることです。お客様にとって役立つ情報であったかどうかを、このページの下部でお知らせください。 簡単に参照できるように、こちらに 英語の記事 があります。

Office 365 のデータ損失防止 (DLP) ポリシーでは、機密情報の識別、監視、保護を行うことができます。機密情報の識別には、特に汎用コンテンツ (医療関連の通信など) または不適切な言語や露骨な表現を識別するときに、キーワードを検索する必要がある場合があります。機密情報の種類でキーワード リストを作成することができますが、キーワード リストにはサイズの制限があり、リストの作成や編集を行うには、XML を変更する必要があります。キーワード ディクショナリでは、簡単なキーワードの管理を、ディクショナリごとに最大 100,000 語をサポートする大きなスケールで提供します。

キーワード ディクショナリを作成する基本的な手順

ディクショナリのキーワードは、一般的にはファイル (.csv または .txt リストなど)、コマンドレットに直接入力するリスト、または既存のディクショナリなど、さまざまなソースから作成することができます。キーワード ディクショナリを作成する場合、次の同じ基本手順に従います。

  1. セキュリティ/コンプライアンス センターの PowerShell に接続する - このトピックを参照してください。

  2. 意図したソースからキーワードを定義または読み込む - キーワード ディクショナリを作成するコマンドレットは、キーワードのコンマ区切りのリストを受け入れるため、この手順はキーワードの作成元によって少し異なります。

  3. キーワードをエンコードする - 読み込まれると、キーワードはインポートされる前にバイト配列に変換されます。

  4. ディクショナリを作成する- 名前と説明を選択し、ディクショナリを作成します。

ファイルからキーワード ディクショナリを作成する

大きな辞書を作成する、必要なときに多くの場合は、ファイルまたはその他のソースからエクスポートされたリストのキーワードを使用するにはこの例では、画面の [外部のメールで不適切な言語のリストを含むキーワード辞書を作成します。最初のセキュリティとコンプライアンス センター PowerShell に接続する必要があります。

  1. テキスト ファイルにキーワードをコピーし、それぞれのキーワードが個別の行であることを確認します。

  2. Unicode エンコードを使って、テキスト ファイルを保存します。メモ帳で >名前を付けて保存>エンコード> Unicodeします。

  3. 変数にこのコマンドレットを実行して、ファイルを参照してください。

    $fileData = Get-Content <filename> -Encoding Byte -ReadCount 0
  4. 辞書を作成するには、このコマンドレットを実行します。

    New-DlpKeywordDictionary -Name <name> -Description <description> -FileData $fileData

既存のキーワード ディクショナリを変更する

キーワード ディクショナリのいずれかでキーワードを変更したり、組み込みのディクショナリのいずれかを変更したりする必要がある場合があります。この例では、PowerShell で用語を変更し、ローカルのエディターで用語を変更できる場所に用語を保存し、その場で前の用語を更新します。最初に、ディクショナリ オブジェクトを取得します。

$dict = Get-DlpKeywordDictionary -Name "Diseases"

$dic を印刷すると、さまざまな変数が表示されます。キーワード自体はバックエンドのオブジェクトに保存されますが、$dict.KeywordDictionary にはその文字列表現が含まれ、ディクショナリを変更するために使用します。ディクショナリを変更する前に、.split(‘,’) メソッドを使用して、用語の文字列を配列に戻す必要があります。使用するキーワードだけを残し、.trim() メソッドでキーワード間の不要なスペースを取り除きます。

$terms = $dict.KeywordDictionary.split(',').trim()

ディクショナリから一部の用語を削除します。例のディクショナリには少ししかキーワードがないため、ディクショナリのエクスポートとメモ帳での編集に簡単にスキップできますが、一般にディクショナリには大量のテキストが含まれるため、PowerShell で簡単に編集できる方法を最初に説明します。

最後の手順で、キーワードを配列に保存しました。配列から項目を削除する方法はいくつかありますが、簡単な方法として、ディクショナリから削除する用語の配列を作成して、ディクショナリの用語のみを、削除する用語のリストに含まれていない配列にコピーします。

コマンド $terms を実行して、現在の用語のリストを表示します。コマンドの出力は次のようになります。

aarskog's syndrome
abandonment
abasia
abderhalden-kaufmann-lignac
abdominalgia
abduction contracture
abetalipoproteinemia
abiotrophy
ablatio
ablation
ablepharia
abocclusion
abolition
aborter
abortion
abortus
aboulomania
abrami's disease

このコマンドを実行して、削除する用語を指定します。

$termsToRemove = @('abandonment', 'ablatio')

このコマンドを実行して、実際にリストから用語を削除します。

$updatedTerms = $terms | Where-Object{ $_ -notin $termsToRemove }

コマンド $updatedTerms を実行して、更新された用語のリストを表示します。コマンドの出力は次のようになります (指定された用語が削除されています)。

aarskog's syndrome
abasia
abderhalden-kaufmann-lignac
abdominalgia
abduction contracture
abetalipo proteinemia
abiotrophy
ablation
ablepharia
abocclusion
abolition
aborter
abortion
abortus
aboulomania
abrami's disease

ローカルにディクショナリを保存し、さらにいくつかの用語を追加します。PowerShell でここから用語を追加できますが、Unicode エンコードで保存され、BOM を含んでいることを確認するには、引き続きファイルをローカルにエクスポートする必要があります。

次を実行して、ローカルにディクショナリを保存します。

Set-Content $updatedTerms -Path "C:\myPath\terms.txt"

単純にファイルを開き、追加の用語を追加して、Unicode エンコード (UTF-16) で保存します。更新された用語をアップロードして、ディクショナリをその場で更新します。

PS> Set-DlpKeywordDictionary -Identity "Diseases" -FileData (Get-Content -Path "C:myPath\terms.txt" -Encoding Byte -ReadCount 0)

ディクショナリはその場で更新されます。Identity フィールドは、ディクショナリの名前を受け取ることに注意してください。また、set- コマンドレットを使用してディクショナリの名前も変更するには、上述の内容に新しいディクショナリ名と共に -Name パラメーターを追加する必要があるだけです。

カスタムの機密情報の種類と DLP ポリシーでキーワード ディクショナリを使用する

キーワード ディクショナリは、カスタムの機密情報の種類に一致する要件の一部として、または機密情報の種類自体として使用できます。どちらも、カスタムの機密情報の種類を作成する必要があります。リンク先の記事の手順に従って、機密情報の種類を作成します。XML がある場合は、それを使用するディクショナリの GUID 識別子が必要になります。

<Entity id="9e5382d0-1b6a-42fd-820e-44e0d3b15b6e" patternsProximity="300" recommendedConfidence="75">
	<Pattern confidenceLevel="75">
		<IdMatch idRef=". . ."/>
	</Pattern>
</Entity>

ディクショナリの ID を取得するには、このコマンドを実行して、Identity プロパティの値をコピーします。

Get-DlpKeywordDictionary -Name "Diseases"

コマンドの出力は次のようになります。

RunspaceId        : 138e55e7-ea1e-4f7a-b824-79f2c4252255
Identity          : 8d2d44b0-91f4-41f2-94e0-21c1c5b5fc9f
Name              : Diseases
Description       : Names of diseases and injuries from ICD-10-CM lexicon
KeywordDictionary : aarskog's syndrome, abandonment, abasia, abderhalden-kaufmann-lignac, abdominalgia, abduction contracture, abetalipo
                    proteinemia, abiotrophy, ablatio, ablation, ablepharia, abocclusion, abolition, aborter, abortion, abortus, aboulomania,
                    abrami's disease, abramo
IsValid           : True
ObjectState       : Unchanged

カスタムの機密情報の種類の XML に ID を貼り付けて、アップロードします。ディクショナリが機密情報の種類のリストに表示され、一致する必要があるキーワード数を指定して、ポリシーで直接ディクショナリを使用できます。

<Entity id="d333c6c2-5f4c-4131-9433-db3ef72a89e8" patternsProximity="300" recommendedConfidence="85">
      <Pattern confidenceLevel="85">
        <IdMatch idRef="8d2d44b0-91f4-41f2-94e0-21c1c5b5fc9f" />
      </Pattern>
    </Entity>
    <LocalizedStrings>
      <Resource idRef="d333c6c2-5f4c-4131-9433-db3ef72a89e8">
        <Name default="true" langcode="en-us">Diseases</Name>
        <Description default="true" langcode="en-us">Detects various diseases</Description>
      </Resource>
    </LocalizedStrings>
Office のスキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×