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