テンプレートを使用して、Cloud Data Loss Prevention で使用する構成情報を作成し、維持できます。テンプレートは、検査の目的や匿名化の方法などの構成をリクエストの実装から分離するのに役立ちます。テンプレートは、構成を再利用する強固な方法を提供し、ユーザー間およびデータセット間に一貫性をもたらします。
Cloud DLP では、次の 2 種類のテンプレートがサポートされています。
- 匿名化テンプレート: 匿名化ジョブの構成情報(infoType の変換とレコード(構造化データセット)の変換の両方を含む)を保存するためのテンプレート。
- 検査テンプレート: 検査スキャンジョブの構成情報(使用する定義済み検出器またはカスタム検出器を含む)を維持するためのテンプレート。検査テンプレートの詳細については、Cloud DLP 検査テンプレートの作成をご覧ください。
Cloud DLP におけるテンプレートのコンセプトについては、テンプレートをご覧ください。
この後は、Cloud DLP で使用する匿名化テンプレートの作成方法について説明します。
匿名化テンプレートを作成する
Console
Google Cloud コンソールで、[テンプレートの作成] ページに移動します。
以降のセクションでは、[テンプレートの作成] ページの入力方法について説明します。
テンプレートの定義
[テンプレートの定義] セクションで、次のフィールドに入力します。
- [テンプレートの種類] で [匿名化(機密データの削除)] を選択します。
[データ変換のタイプ] で、適用する変換のタイプを選択します。
PrimitiveTransformation を適用します。Cloud DLP は、特定の infoType として識別された値にのみ各変換を適用します。この変換タイプは、非構造化テキストに活用できます。
Record:Cloud DLP では、変換を適用するときにデータの構造化形式を考慮します。この変換タイプは、表形式のデータに活用できます。
Image:Cloud DLP は、画像内で検出されたすべてのテキストを秘匿化するか、特定の infoType に一致するテキストのみを秘匿化します。
[テンプレート ID] に、テンプレートの一意の識別子を入力します。
[表示名] にテンプレートの名前を入力します。
[説明] にテンプレートの説明を入力します。
[リソース ロケーション] で、[グローバル] または匿名化するデータのロケーションを選択します。
[続行] をクリックします。
匿名化の構成
[匿名化の構成] に表示されるフィールドの選択は、選択したデータ変換タイプに基づきます。
infoType
データ変換タイプとして [InfoType] を選択した場合は、次のようにします。
[変換] フィールドで、検出結果に適用する変換方法を選択します。
選択した内容に応じて、追加のフィールドが表示されます。必要に応じてフィールドに入力します。詳細については、変換のリファレンスをご覧ください。
[変換する infoType] セクションで、検査構成で定義されている検出されたすべての infoType に変換を適用するかどうかを指定します。
[infoType の指定] を選択した場合は、変換方法を適用する infoType を選択します。
変換ルールの適用対象外である infoType の変換ルールを追加する場合は、[変換ルールを追加] をクリックします。次に、必要に応じてフィールドに入力します。変換するすべての infoType の変換ルールの構成が完了するまで、このステップを繰り返します。
[作成] をクリックします。
記録
データ変換タイプとして [レコード] を選択した場合は、次のようにします。
- [変換するフィールドまたは列] に、変換するデータを含むテーブル列の名前を入力します。[
ENTER
] をクリックします。変換するデータを含む列ごとに、このステップを繰り返します。 変換タイプを指定します。
infoType に基づく一致。Cloud DLP は、各セルを非構造化テキストとして扱い、セル内で検出した infoType にのみ変換を適用します。Cloud DLP は、infoType の前後のデータを変換しません。
このオプションを選択した場合は、次の手順を行います。
- [Add transformation] をクリックします。[変換] フィールドで、検出結果に適用する変換方法を選択します。
検査構成で定義されている検出されたすべての infoType に変換を適用するかどうかを指定します。
[infoType の指定] を選択した場合は、変換ルールを適用する infoType を選択します。
特定の infoType に特定の変換ルールを割り当てる場合は、必要に応じて変換を追加できます。
プリミティブ フィールド変換。Cloud DLP は常に、選択した変換方法に従ってセル全体を変換します。このオプションは、列内のセルが infoType を検出しているかどうかに関係なく、データの列全体を変換する場合に活用できます。
このオプションを選択した場合は、[変換] フィールドで、指定した列に適用する変換方法を選択します。
どちらの場合も、選択した変換方法に応じてより多くのフィールドが表示されます。必要に応じてフィールドに入力します。詳細については、変換のリファレンスをご覧ください。
[作成] をクリックします。
画像
データ変換タイプとして [イメージ] を選択した場合は、次のようにします。
省略可: 秘匿化されたテキストに対応するボックスの色を変更するには、[秘匿化の色] フィールドで黒色のボックスをクリックし、別の色を選択します。
[変換する infoType] セクションで、秘匿化する要素(検出されたすべてのテキスト、検査構成で定義されているすべての infoType、または特定の infoType のみ)を指定します。
[infoType の指定] を選択した場合は、変換ルールを適用する infoType を選択します。
変換ルールの適用対象外である infoType の変換ルールを追加する場合は、[変換ルールを追加] をクリックします。次に、必要に応じてフィールドに入力します。変換するすべての infoType の変換ルールの構成が完了するまで、このステップを繰り返します。
[CREATE] をクリックします。
プロトコル
匿名化テンプレートは、再利用可能な匿名化の構成といくつかのメタデータだけで構成されます。API の観点では、DeidentifyTemplate
オブジェクトは事実上、DeidentifyConfig
オブジェクトにいくつかのメタデータ(表示名や説明など)のフィールドを追加したものです。したがって、新しい匿名化テンプレートを作成するための基本的な手順は次のとおりです。
DeidentifyConfig
オブジェクトから始めます。projects.deidentifyTemplates
リソースのcreate
メソッドを呼び出すか POST し、そのリクエストに表示名、説明、そのDeidentifyConfig
オブジェクトを含むDeidentifyTemplate
オブジェクトを含めます。
返された DeidentifyTemplate
はすぐに使用できます。その name
を使用して、他の呼び出しやジョブでこのテンプレートを参照できます。既存のテンプレートを一覧表示するには、*.deidentifyTemplates.list
メソッドを呼び出します。特定のテンプレートを表示するには、*.deidentifyTemplates.get
メソッドを呼び出します。作成できるテンプレート数の上限は 1,000 個です。
Cloud DLP を使用して、テキスト、画像、構造化コンテンツから機密データを匿名化した経験がある場合は、DeidentifyConfig
オブジェクトがすでに作成されています。もう 1 つの手順を行うだけで、これを DeidentifyTemplate
オブジェクトに変換できます。
REST の例
次の JSON は、projects.deidentifyTemplates.create
メソッドに送信できるものの例です。この JSON は、指定された表示名と説明を含む新しいテンプレートを作成し、infoType EMAIL_ADDRESS
と GENERIC_ID
に対する一致をスキャンします。これらの infoType に一致するコンテンツが見つかると、最初の 3 文字がアスタリスク(*
)文字でマスクされます。
HTTP メソッドと URL
POST https://dlp.googleapis.com/v2/projects/PROJECT_ID/deidentifyTemplates
PROJECT_ID
の部分は、プロジェクト ID で置き換えます。
JSON 入力
{
"deidentifyTemplate":{
"displayName":"Email and id masker",
"description":"De-identifies emails and ids with a series of asterisks.",
"deidentifyConfig":{
"infoTypeTransformations":{
"transformations":[
{
"infoTypes":[
{
"name":"GENERIC_ID"
}
],
"primitiveTransformation":{
"replaceWithInfoTypeConfig":{
}
}
},
{
"infoTypes":[
{
"name":"EMAIL_ADDRESS"
}
],
"primitiveTransformation":{
"characterMaskConfig":{
"charactersToIgnore":[
{
"charactersToSkip":"@"
}
],
"maskingCharacter":"*"
}
}
}
]
}
}
}
}
JSON 出力
{ "name":"projects/PROJECT_ID/deidentifyTemplates/JOB-ID", "displayName":"Email and id masker", "description":"De-identifies emails and ids with a series of asterisks.", "createTime":"2018-11-30T07:17:59.536022Z", "updateTime":"2018-11-30T07:17:59.536022Z", "deidentifyConfig":{ "infoTypeTransformations":{ "transformations":[ { "infoTypes":[ { "name":"GENERIC_ID" } ], "primitiveTransformation":{ "replaceWithInfoTypeConfig":{ } } }, { "infoTypes":[ { "name":"EMAIL_ADDRESS" } ], "primitiveTransformation":{ "characterMaskConfig":{ "maskingCharacter":"*", "charactersToIgnore":[ { "charactersToSkip":"@" } ] } } } ] } } }
以下に埋め込まれている API Explorer を使用すれば、これをすぐに試すことができます。JSON を使用して DLP API にリクエストを送信する方法については、JSON クイックスタートをご覧ください。
匿名化テンプレートの使用
新しいテンプレートを作成したら、次のように deidentifyTemplateName
を使用できる場所ならどこでもその name
識別子を使用できます。
projects.content.deidentify
: テンプレートを構成として使用して、コンテンツ内の潜在的な機密データを匿名化します。この方法では、検査テンプレートまたは匿名化テンプレートのどちらかを使用できます。
匿名化テンプレートの一覧表示
作成されたすべての匿名化テンプレートを一覧表示するには、次のどちらかの *.*.list
メソッドを使用します。
コードの例
次に、Cloud DLP を使用して検査テンプレートを一覧表示する方法を示すサンプルコードをいくつかの言語で示します。このプロセスは、匿名化テンプレートを一覧表示する場合と同じです。
Java
Cloud DLP 用のクライアント ライブラリをインストールして使用する方法については、Cloud DLP クライアント ライブラリをご覧ください。
Cloud DLP に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Node.js
Cloud DLP 用のクライアント ライブラリをインストールして使用する方法については、Cloud DLP クライアント ライブラリをご覧ください。
Cloud DLP に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Python
Cloud DLP 用のクライアント ライブラリをインストールして使用する方法については、Cloud DLP クライアント ライブラリをご覧ください。
Cloud DLP に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Go
Cloud DLP 用のクライアント ライブラリをインストールして使用する方法については、Cloud DLP クライアント ライブラリをご覧ください。
Cloud DLP に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
PHP
Cloud DLP 用のクライアント ライブラリをインストールして使用する方法については、Cloud DLP クライアント ライブラリをご覧ください。
Cloud DLP に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
C#
Cloud DLP 用のクライアント ライブラリをインストールして使用する方法については、Cloud DLP クライアント ライブラリをご覧ください。
Cloud DLP に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
匿名化テンプレートの削除
特定の匿名化テンプレートを削除するには、次のどちらかの *.*.delete
メソッドを使用します。
各 *.*.delete
メソッドには、削除するテンプレートのリソース名を含めます。
コードの例
次に、Cloud DLP を使用して検査テンプレートを削除する方法を示すサンプルコードをいくつかの言語で示します。このプロセスは、匿名化テンプレートを一覧表示する場合と同じです。
Java
Cloud DLP 用のクライアント ライブラリをインストールして使用する方法については、Cloud DLP クライアント ライブラリをご覧ください。
Cloud DLP に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Node.js
Cloud DLP 用のクライアント ライブラリをインストールして使用する方法については、Cloud DLP クライアント ライブラリをご覧ください。
Cloud DLP に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Python
Cloud DLP 用のクライアント ライブラリをインストールして使用する方法については、Cloud DLP クライアント ライブラリをご覧ください。
Cloud DLP に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
Go
Cloud DLP 用のクライアント ライブラリをインストールして使用する方法については、Cloud DLP クライアント ライブラリをご覧ください。
Cloud DLP に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
PHP
Cloud DLP 用のクライアント ライブラリをインストールして使用する方法については、Cloud DLP クライアント ライブラリをご覧ください。
Cloud DLP に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。
C#
Cloud DLP 用のクライアント ライブラリをインストールして使用する方法については、Cloud DLP クライアント ライブラリをご覧ください。
Cloud DLP に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証の設定をご覧ください。