【データマスキング】

データマスキング とは?

💡 大事な情報を「モザイク処理」する技術
📌 このページのポイント
データマスキングの比較(Before / After) ⚠ マスキング前(本番) 氏名 メール カード番号 田中太郎 tanaka@mail.com 4512-3456-7890 佐藤花子 sato@mail.com 4512-9876-5432 マスキング処理 ✓ マスキング後(開発環境) 氏名 メール カード番号 山田一郎 user01@dummy.com ****-****-7890 鈴木次郎 user02@dummy.com ****-****-5432 静的マスキング コピー時に一括置換 開発・テスト環境向け 元データに戻せない(不可逆) 動的マスキング クエリ時にリアルタイム置換 権限で表示を切り替え 元データはそのまま保持 GDPR・個人情報保護法への対応
データマスキングのBefore/Afterと2つの方式
ひよこ ひよこ

データマスキングって、暗号化とは違うの?

ペンギン先生 ペンギン先生

いい質問だね。暗号化は鍵があれば元に戻せるけど、マスキングは元に戻せないのが基本だよ。たとえば「田中太郎」を「山田花子」に置き換えたら、もう元の名前には戻らない。不可逆なところがポイントなんだ。

ひよこ ひよこ

どんなデータをマスキングするの?

ペンギン先生 ペンギン先生

氏名、メールアドレス、電話番号、クレジットカード番号、マイナンバーなんかが代表的だよ。たとえばカード番号なら「4512-****-****-3456」みたいに一部だけ見せて残りを隠す。これで支払い履歴の分析はできるけど、悪用はできなくなるんだ。

ひよこ ひよこ

どういう場面で使うの?

ペンギン先生 ペンギン先生

一番多いのは、本番のデータを開発・テスト環境にコピーするときだよ。リアルなデータ構造でテストしたいけど、開発者に個人情報を見せるわけにはいかないよね。マスキングすれば安全にテストデータとして使えるんだ。

ひよこ ひよこ

静的マスキングと動的マスキングがあるって聞いたけど、何が違うの?

ペンギン先生 ペンギン先生

静的マスキングは、データベースをコピーするときに一括で置換する方法。コピー先のデータは最初から隠された状態になるよ。動的マスキングは、データ自体はそのままで、クエリの結果を返すときにリアルタイムで隠す方法。権限のあるユーザーには本物を見せて、ない人にはマスク済みを見せるといった使い分けができるんだ。

ひよこ ひよこ

適当にランダムな値を入れればいいの?

ペンギン先生 ペンギン先生

それだと困ることがあるんだ。たとえばメールアドレスのフォーマットが壊れるとアプリが動かなくなるよね。だからマスキングツールは「形式を保ったまま中身だけ変える」機能を持っているんだ。郵便番号なら7桁の数字のまま、メールなら@付きの文字列のまま置換するよ。

ひよこ ひよこ

GDPRとかの法律にも関係あるの?

ペンギン先生 ペンギン先生

大いに関係あるよ。GDPRや日本の個人情報保護法では、個人データの適切な管理が義務付けられている。マスキングは「最小権限の原則」を実現する手段として監査でも評価されるし、データ漏洩が起きてもマスキング済みなら被害を最小限にできるんだ。

ひよこ ひよこ

データマスキングのツールにはどんなものがあるの?

ペンギン先生 ペンギン先生

Oracle Data Masking、IBM InfoSphere Optim、Delphixなんかが有名だね。クラウドだとAWS DMS、Azure SQL Databaseの動的データマスキング機能もあるよ。最近はオープンソースのツールも増えていて、PostgreSQLならpg_anonymizerなどが使えるんだ。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「データマスキング」って出てきたら「機密データを隠して安全に使えるようにする技術」と思えればだいたいOK!
📖 おまけ:英語の意味
「Data Masking」 = データの仮面・遮蔽
💬 Masking は「仮面をかぶせる」という意味。データに仮面をかぶせて本当の姿を隠すイメージだよ
← 用語集にもどる