このトピックでは、新しい検査テンプレートの作成方法を詳しく説明します。Google Cloud コンソールを使用して新しい検査テンプレートを作成する方法のチュートリアルについては、クイックスタート: Sensitive Data Protection 検査テンプレートの作成をご覧ください。
テンプレートについて
テンプレートを使用して、Sensitive Data Protection で使用する構成情報を作成し、保持できます。テンプレートは、検査の目的や匿名化の方法などの構成情報をリクエストの実装から分離するのに役立ちます。テンプレートを使用することで構成を再利用でき、ユーザー間、データセット間での一貫性が保たれます。また、テンプレートを更新するたびに、そのテンプレートを使用するすべてのジョブトリガーが更新されます。
Sensitive Data Protection は、このトピックで説明する検査テンプレートと、Sensitive Data Protection 匿名化テンプレートの作成で説明されている匿名化テンプレートをサポートしています。
Sensitive Data Protection のテンプレートのコンセプトについては、テンプレートをご覧ください。
検査テンプレートで指定できる情報の種類(infoTypes)の詳細については、infoType 検出器リファレンスをご覧ください。
新しい検査テンプレートの作成
コンソール
Google Cloud コンソールで、[テンプレートの作成] ページに移動します。
[テンプレートの作成 ページには次のセクションがあります。
テンプレートの定義
[テンプレートの定義] で、検査テンプレートの識別子を入力します。この ID を使って、ジョブの実行時やジョブトリガーの作成時などにテンプレートを参照します。文字、数字、ハイフンを使用できます。必要に応じて、よりわかりやすい表示名と説明を入力して、テンプレートの内容を覚えやすくすることもできます。
[リソース ロケーション] フィールドで、検査するデータが保存されているリージョンを選択します。作成した検査テンプレートもこのリージョンに保存されます。新しい検査テンプレートを任意のリージョンで使用するには、[グローバル(任意のリージョン)] を選択します。
検出を構成する
次に、Sensitive Data Protection によるコンテンツ内の検出を構成するには、infoType などのオプションを選択します。
infoType 検出器は、特定の型の機密データを検出します。たとえば、Sensitive Data Protection の US_SOCIAL_SECURITY_NUMBER infoType 検出機能では、米国社会保障番号が検出されます。組み込みの infoType 検出機能に加えて、独自のカスタム infoType 検出機能を作成できます。
[InfoTypes] セクションで、スキャンするデータ型に対応する infoType 検出器を選択します。このセクションは空白のままにしないことをおすすめします。空白のままにすると、Sensitive Data Protection がデフォルトの infoType セットでデータをスキャンします。これには、不要な infoType が含まれる場合があります。それぞれの検出器の詳細については、InfoType 検出器リファレンスをご覧ください。
このセクションで説明されている組み込みとカスタムの infoType を管理する方法について詳しくは、 Google Cloud コンソールを使用して infoType を管理するをご覧ください。
検査ルールセット
検査ルールセットを使用すると、コンテキスト ルールを使用して組み込み infoType 検出器とカスタム infoType 検出機能の両方をカスタマイズできます。検査ルールの種類は次のとおりです。
- 排他ルール。誤った検出結果や不要な検出結果を除外できます。
- 起動ワードルール。追加の検出結果を検出するのに役立ちます。
- 調整ルール。検出結果が表示されるコンテキストに基づいて、検出結果の可能性を調整します。
新しいルールセットを追加するには、まず [InfoTypes] セクションで 1 つ以上の組み込みまたはカスタム infoType 検出機能を指定します。ルールセットが変更するすべての infoType 検出器(ターゲット infoType)または評価に使用する infoType 検出器(コンテキスト infoType)を選択します。次に、以下の操作を行います。
- [ルールセットを追加] をクリックします。
- [対象の infoType を選択] フィールドで、ルールが満たされた場合にルールセットが変更する infoType を選択します。
- [ルールを追加] をクリックして、[起動ワードルール]、[排他ルール]、[調整ルール] などのオプションを含むメニューを開きます。
起動ワードルールを作成するには、[起動ワードルール] を選択します。次に、以下の操作を行います。
- [起動ワード] フィールドに、Sensitive Data Protection が検索する正規表現を入力します。
- [ホットワードの近接性] メニューで、入力したホットワードが、選択した infoType の前または後のどちらで見つかるかを選択します。
- [infoType からのホットワードの距離] に、ホットワードと選択した infoType の間の文字数(概数)を入力します。
- [信頼度レベルの調整] で、一致に固定の可能性レベルを割り当てるか、デフォルトの可能性レベルを一定量増減するかを選択します。
除外ルールを作成するには、[除外ルール] と、作成する除外ルールの種類([正規表現] など)を選択します。次に、以下の操作を行います。
- 選択した排他ルールタイプに応じて、ルールを適用するために検出する必要がある正規表現、フレーズ、ホットワード、またはコンテキスト infoType を入力します。
- 選択した排他ルールタイプに応じて、一致タイプまたはイメージ コンテインメント タイプを設定します。
- テキストベースの排他ルールを選択した場合は、次のいずれかのマッチタイプを選択します。
- 完全一致: 検出結果が、指定したテキストまたはコンテキスト infoType と完全に一致する必要があります。
- 部分一致: 検出結果の部分文字列が、指定したテキストまたはコンテキスト infoType と一致する必要があります。
- 逆一致: 検出結果が、指定したテキストまたはコンテキスト infoType と一致しない必要があります。
- 画像ベースの排他ルールを選択した場合は、ターゲット infoType とコンテキスト infoType の間に必要な空間関係を選択します。たとえば、[囲む] を選択した場合、ルールを適用するには、コンテキスト検出結果がターゲット検出結果を囲む必要があります。
調整ルールを作成するには、[調整ルール] と調整ルールのタイプ([画像検出結果による調整] など)を選択します。次に、以下の操作を行います。
- [コンテキスト infoType] フィールドで、ターゲット検出結果のコンテキストを提供する infoType 検出器を選択します。Sensitive Data Protection は、コンテキスト infoType を使用して、ターゲット infoType を調整する必要があるかどうかを評価します。
- [最小尤度] フィールドで、コンテキスト infoType が持つ可能性があり、調整ルールをトリガーする最小の尤度レベルを選択します。検出されたコンテキスト検出結果の可能性の値がこの値より小さい場合、Sensitive Data Protection はターゲット検出結果の可能性を調整しません。
- 画像検出結果の場合は、[画像包含タイプ] フィールドで、ターゲットとコンテキストの infoType 間に必要な空間関係を選択します。たとえば、[Encloses] を選択した場合、ルールを適用するには、コンテキスト検出結果がターゲット検出結果を囲む必要があります。
- [可能性] フィールドで、ターゲットの検出結果に割り当てる新しい可能性レベルを選択します。
ルールセットを追加して、スキャン結果をさらに絞り込むことができます。
信頼度のしきい値
Sensitive Data Protection で機密データの一致候補が検出されるたびに、可能性の値が「かなり低い」から「かなり高い」までの尺度で割り当てられます。ここで可能性の値を設定すると、Sensitive Data Protection は、その可能性の値以上のデータの一致のみを検出するように指示されます。
「可能性あり」はデフォルト値で、ほとんどの用途に十分対応できます。検出される一致が常に、あまりに広範に及ぶ場合は、スライダーを右に動かしてください。一致が少なすぎる場合は、スライダーを左に動かしてください。
設定が完了したら、[作成] をクリックしてテンプレートを作成します。テンプレートの要約情報のページが表示されます。
Sensitive Data Protection のメインページに戻るには、 Google Cloud コンソールの [戻る] 矢印をクリックします。
C#
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Go
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Java
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Node.js
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
PHP
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Python
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
REST
検査テンプレートは、再利用可能な検査構成といくつかのメタデータで構成されます。API の観点では、InspectTemplate オブジェクトは事実上、InspectConfig オブジェクトにいくつかのメタデータ(表示名や説明など)のフィールドを追加したものです。したがって、新しい検査テンプレートを作成するための基本的な手順は次のとおりです。
- 最初に
InspectConfigオブジェクトを作成します。 projects.inspectTemplatesまたはorganizations.inspectTemplatesリソースのcreateメソッドを呼び出すか POST し、そのリクエストに表示名、説明、作成したInspectConfigオブジェクトを入れたInspectTemplateオブジェクトを含めます。
返された InspectTemplate はすぐに使用できます。その name を使用して、他の呼び出しやジョブでこのテンプレートを参照できます。既存のテンプレートを一覧表示するには、*.inspectTemplates.list メソッドを呼び出します。特定のテンプレートを表示するには、*.inspectTemplates.get メソッドを呼び出します。作成できるテンプレート数の上限は 1,000 個です。
Sensitive Data Protection を使用して、機密コンテンツに関してテキスト、画像、構造化コンテンツを過去に検査したことがある場合、InspectConfig オブジェクトはすでに作成されています。もう 1 つの手順を行うだけで、これを InspectTemplate オブジェクトに変換できます。
次の JSON は、projects.inspectTemplates.create メソッドに送信できるものの例です。この JSON は、指定された表示名と説明を含む新しいテンプレートを作成し、infoType PHONE_NUMBER と US_TOLLFREE_PHONE_NUMBER に対する一致をスキャンします。検出結果には、可能性が POSSIBLE 以上の最大 100 件の一致が含まれ、それぞれにコンテキストのスニペットが含まれます。検査テンプレートで指定できる情報の種類(infoTypes)の詳細については、infoType 検出機能リファレンスをご覧ください。
JSON 入力:
POST https://dlp.googleapis.com/v2/projects/[PROJECT_ID]/inspectTemplates?key={YOUR_API_KEY}
{
"inspectTemplate":{
"displayName":"Phone number inspection",
"description":"Scans for phone numbers",
"inspectConfig":{
"infoTypes":[
{
"name":"PHONE_NUMBER"
},
{
"name":"US_TOLLFREE_PHONE_NUMBER"
}
],
"minLikelihood":"POSSIBLE",
"limits":{
"maxFindingsPerRequest":100
},
"includeQuote":true
}
}
}
JSON 出力:
レスポンスの JSON は次のようになります。
{
"name":"projects/[PROJECT_ID]/inspectTemplates/[JOB_ID]",
"displayName":"Phone number inspection",
"description":"Scans for phone numbers",
"createTime":"2018-11-30T07:26:28.164136Z",
"updateTime":"2018-11-30T07:26:28.164136Z",
"inspectConfig":{
"infoTypes":[
{
"name":"PHONE_NUMBER"
},
{
"name":"US_TOLLFREE_PHONE_NUMBER"
}
],
"minLikelihood":"POSSIBLE",
"limits":{
"maxFindingsPerRequest":100
},
"includeQuote":true
}
}
以下に埋め込まれている API Explorer を使用すれば、これをすぐに試すことができます。JSON を使用して DLP API にリクエストを送信する方法については、JSON クイックスタートをご覧ください。
検査テンプレートの使用
新しい検査テンプレートを作成したら、それを新しい検査ジョブまたはジョブトリガーの作成時に使用できます。そのテンプレートを更新するたびに、そのテンプレートを使用するすべてのジョブトリガーで更新されます。コードサンプルなどの詳細については、以下をご覧ください。
コンソール
新しいテンプレートの使用を開始するには、クイックスタート: Sensitive Data Protection の検査テンプレートの作成に記載されている手順に従います。
- [検出の構成] の [テンプレート] セクションで、[テンプレート名] フィールドをクリックし、作成したテンプレートを選択します。
コンテンツのスキャン方法の詳細については、Sensitive Data Protection の検査ジョブの作成とスケジューリングの「検出の構成」セクションをご覧ください。
REST
次のような inspectTemplateName が使用可能であればどこでも、テンプレートの作成時に指定したテンプレート ID を使用できます。
projects.content.inspect: テンプレートを構成として使用して、コンテンツ内の潜在的な機密データを匿名化します。projects.content.deidentify: テンプレートを構成として使用して、コンテンツ内の機密データを検出して匿名化します。このメソッドでは、検査テンプレートと匿名化テンプレートの両方を使用することに注意してください。InspectJobConfigオブジェクト内のprojects.dlpJobs.create: 構成としてテンプレートを含む検査ジョブを作成します。
検査テンプレートの一覧表示
現在のプロジェクトまたは組織で作成されたすべての検査テンプレートを一覧表示する手順は次のとおりです。
コンソール
Google Cloud コンソールで、Sensitive Data Protection の [構成] ページに移動します。
検査テンプレートを含むプロジェクトを選択します。
[テンプレート] タブをクリックします。
現在のプロジェクトにあるすべての検査テンプレートが一覧表示されます。
C#
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Go
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Java
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Node.js
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
PHP
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Python
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
REST
*.*.list メソッドのいずれかを使用します。
検査テンプレートを global リージョンにコピーする
Google Cloud コンソールで、Sensitive Data Protection の [構成] ページに移動します。
ツールバーでプロジェクト セレクタをクリックし、使用する検査テンプレートを含むプロジェクトを選択します。
[テンプレート] タブをクリックし、[検査] サブタブをクリックします。
使用するテンプレートの ID をクリックします。
[検査テンプレートの詳細] ページで、[コピー] をクリックします。
[テンプレートの作成] ページの [リソース ロケーション] リストで、[グローバル(任意のリージョン)] を選択します。
[作成] をクリックします。
テンプレートが global リージョンにコピーされます。
検査テンプレートを別のプロジェクトにコピーする
Google Cloud コンソールで、Sensitive Data Protection の [構成] ページに移動します。
ツールバーでプロジェクト セレクタをクリックし、使用する検査テンプレートを含むプロジェクトを選択します。
[テンプレート] タブをクリックし、[検査] サブタブをクリックします。
使用するテンプレートの ID をクリックします。
[検査テンプレートの詳細] ページで、[コピー] をクリックします。
検査テンプレートのコピー先となるプロジェクトを選択します。
選択したプロジェクトで [テンプレートの作成] ページが再読み込みされます。
[作成] をクリックします。
選択したプロジェクトでテンプレートが作成されます。
検査テンプレートの削除
検査テンプレートを削除する手順は次のとおりです。
コンソール
Google Cloud コンソールで、Sensitive Data Protection の [構成] ページに移動します。
削除する検査テンプレートが含まれているプロジェクトを選択します。
[テンプレート] タブをクリックします。現在のプロジェクトにあるすべてのテンプレートが一覧表示されます。
削除するテンプレートの [操作] 列で、[その他の操作] メニュー(縦に並んだ 3 つの点) をクリックし、[削除] をクリックします。
または、テンプレートの一覧から削除対象のテンプレートの名前をクリックし、テンプレートの詳細ページで [削除] をクリックします。
C#
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Go
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Java
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Node.js
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
PHP
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Python
Sensitive Data Protection 用のクライアント ライブラリをインストールして使用する方法については、Sensitive Data Protection のクライアント ライブラリをご覧ください。
Sensitive Data Protection の認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
REST
*.*.delete メソッドのいずれかを使用します。
各 *.*.delete メソッドには、削除するテンプレートのリソース名を含めます。
次のステップ
- infoType 検出器リファレンスを確認します。