LoginSignup
1
0

More than 3 years have passed since last update.

Cloud DLPメモ

Posted at

Cloud DLPは、2つの機能があります。
機密データの「検査(Inspection)」と検出した機密データの「変換」が可能です。変換は「削除/置換」と「匿名化」の2種類に分類できます。

検査については、機密データを検出するためにInfo Typeと呼ばれる検出ルールが組み込みで準備されています。
また、組み込みのInfo Typeに加えてカスタムのInfo Typeを作成することが可能です。

使い方

検査の方法は、データを指定してAPIをCallするか、データが保持しているストレージに対してのDLPのスキャンを実施し機密データの検出が可能です。
削除や匿名化は、APIをCallすることで実施可能です。

Info Type

2020/6現在、139個準備されています。
image.png

組み込みのInfo Typeの例としては、電話番号、Emailアドレスなど基本的な情報に加えて日本のパスポート番号やマイナンバーカード番号など各国に特化したルールも準備されています。
image.png

また、任意の単語を検出から除外することも可能です。

>除外ルールを使用すると、組み込みまたはカスタム infoType 検出器にルールを追加することで、返される結果の数を減らせます。

マニュアルにある以下の除外ルールの例は、「example@example.com」との一致を避けることが出来ます。

...
    "inspectConfig":{
      "ruleSet":[
        {
          "infoTypes":[
            {
              "name":"EMAIL_ADDRESS"
            }
          ],
          "rules":[
            {
              "exclusionRule":{
                "dictionary":{
                  "wordList":{
                    "words":[
                      "example@example.com"
                    ]
                  }
                },
                "matchingType": "MATCHING_TYPE_FULL_MATCH"
              }
            }
          ]
        }
      ]
    }
...

カスタムInfo Type

組み込みInfo Typeで要件が満たせない場合は、カスタムInfo Typeを作成することができます。カスタムInfo Typeは以下の4種類です。

Regular expression
List of words or phrases
Small custom dictionary
Large custom dictionary

Regular expressionは正規表現で検出するパターンを定義できます。
それ以外はカスタムの辞書登録で、それぞれ指定できる辞書のサイズや格納先のストレージが異なります。

image.png

ストレージに対してスキャンを実施し機密データの検出

ストレージに対してのスキャンは、GCS/Datastore/BigQueryに対して行うことができます。
データの総量が巨大な場合にすべてのデータを検出対象にすることは現実的ではないこともありますので、一部データをサンプリングしてスキャンすることができます。サンプリングは総データ量のうち何割をスキャン対象にするかを指定します。

検出の正確性についても設定可能です。

image.png

検出した機密データの変換

検出した機密データを変換することが可能です。変換は「削除/置換」と「匿名化」の2種類に分類できます。
変換方法については以下のマニュアルに記載があります。
https://cloud.google.com/dlp/docs/transformations-reference

変換方法一覧

削除
置換
Info Typeでの置換
マスキング
暗号ベースのトークン化(仮名化)変換 - 暗号ハッシュ
暗号ベースのトークン化(仮名化)変換 - フォーマット保持暗号化
固定サイズのバケット化
カスタマイズ可能なバケット化
日付シフト
時間データの抽出

それぞれの方法について整理すると以下のようになります。
image.png

ここからいくつかの変換方法について見ていきたいと思います。
まずは、「削除(RedactConfig)」です。以下の例では、Emailアドレスである「aabernathy@example.com」を削除しています。こちらのJSONをBodyとして「https://dlp.googleapis.com/v2/projects/[PROJECT ID]/content:deidentify」にPOSTすることより、「"value": "My name is Alicia Abernathy, and my email address is ."」という形でレスポンスを受け取れます。

{
  "item":{
    "value":"My name is Alicia Abernathy, and my email address is aabernathy@example.com."
  },
  "deidentifyConfig":{
    "infoTypeTransformations":{
      "transformations":[
        {
          "infoTypes":[
            {
              "name":"EMAIL_ADDRESS"
            }
          ],
          "primitiveTransformation":{
            "redactConfig":{

            }
          }
        }
      ]
    }
  },
  "inspectConfig":{
    "infoTypes":[
      {
        "name":"EMAIL_ADDRESS"
      }
    ]
  }
}

以下の例は、「置換(ReplaceValueConfig)」の例です。「aabernathy@example.com」を「[email-address]」に置換します。
https://cloud.google.com/dlp/docs/redacting-sensitive-data

{
  "item":{
    "value":"My name is Alicia Abernathy, and my email address is aabernathy@example.com."
  },
  "deidentifyConfig":{
    "infoTypeTransformations":{
      "transformations":[
        {
          "infoTypes":[
            {
              "name":"EMAIL_ADDRESS"
            }
          ],
          "primitiveTransformation":{
            "replaceConfig":{
              "newValue":{
                "stringValue":"[email-address]"
              }
            }
          }
        }
      ]
    }
  },
  "inspectConfig":{
    "infoTypes":[
      {
        "name":"EMAIL_ADDRESS"
      }
    ]
  }
}

また、上記のテキストに加えてイメージの置換も可能です。
https://cloud.google.com/dlp/docs/redacting-sensitive-data-images
上記、マニュアルに記載がありますが以下のようなイメージで置換できます。
image.png

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0