退会者のデータを残す必要があるかどうかは、業務部門や法務などと連携して判断しなければなりません。開発者が設計で担えるのは、保存目的に応じてデータを絞り、アクセス範囲や保存期間を制御し、不要になったデータを確実に利用できない状態にすることです。
業務部門からデータの保存を求められたら、まず何のために、どの項目を、いつまで使うのかを確認します。その上で、目的ごとに残すデータの項目と形式を決めます。例えば、次のような設計が考えられます。
ここで注意したいのは、ハッシュ化やIDの置き換えだけで、必ずしも個人を識別できなくなるわけではないことです。元の情報と照合できる仕組みが残っていれば、引き続き個人情報として管理すべき場合があります。
目的を説明できない項目は残さないことを基本にします。保存する項目と期間を要件として明文化しておけば、後から追加の要望が出たときにも、目的に照らして判断できます。
残すと決めたデータは、現役会員のデータと論理的・権限的に分離します。別のテーブルやデータベースに移すだけでなく、参照できるアプリケーションや担当者、認証経路なども見直します。同じ認証情報や過剰な権限で双方にアクセスできるなら、テーブルを分けても十分な防御にはなりません。
退会者のデータ専用の暗号鍵を使う方法も考えられます。保存期限がそろうデータ群ごとに鍵を分ければ、期限を迎えたデータ群の鍵だけを破棄する設計にできます。ただし、鍵を破棄すれば必ずデータを消去できるわけではありません。鍵の複製や復旧手段、暗号化されていないデータが残っていないかどうかを確認する必要があります。
さらに会員テーブル以外の複製先も管理対象にします。メール配信や顧客管理のSaaSでは、退会時にAPIを呼び出してデータを削除します。分析基盤に取り込んだデータについても、氏名や連絡先などの不要な項目を除外し、保存期限に応じて削除する仕組みを設けます。
退会をイベントとして発行し、各システムがそのイベントを受け取って削除や更新を実行する設計にすれば、複製先が増えた場合にも処理を統一しやすくなります。ただしイベント処理の失敗や連携先の停止によって削除が漏れる可能性もあるため、処理結果を記録し、失敗を検知して再実行できるようにすることが重要です。
委託先に渡したデータについても、契約上の削除方法や時期、削除完了の確認方法を決めておきましょう。
退会者のデータにも、保存目的に応じた期限を設定します。退会日時だけで一律に削除するのではなく、法令上の保存義務や返金対応などの必要性を踏まえ、項目ごとに期限を管理します。
期限が来たら削除や鍵の破棄を実行するバッチ処理を設計に含め、処理が失敗した場合には検知できるようにします。バックアップについても保持期間と削除のタイミングを定義し、復元後に削除済みデータが再び有効にならない仕組みを用意します。
同時に、現役会員と退会者のデータを状態ごとに集計し、保有件数を把握できるようにします。例えば現役会員が70万人、退会者のデータが30万人分あれば、合計100万人分のデータを保有していることになります。これは漏えい時の法的な通知対象者数と必ずしも一致するわけではありませんが、影響を受け得るデータの規模を把握する目安になります。
件数や保存期限をダッシュボードで可視化すれば、開発者だけでなく、保存を求めた業務部門や経営層も、どれだけのデータを抱えているのかを確認できます。保存期限の延長を求められた場合も、目的と必要な項目を再確認した上で更新します。延長が自動的に繰り返される仕組みにはしないことが重要です。
まずは現在保有している退会者のデータについて、保存目的や保存項目、保存期限の3つを一覧にするところから始めてみてはいかがでしょうか。
退会者のデータを残すと決まっても、開発者ができる対策は多くあります。目的に必要のない項目を減らし、現役会員のデータと分離し、複製先まで含めて保存期限を管理します。こうした設計は、暗号化やアクセス制御と同じく、漏えい時の影響を小さくするための対策になります。
押さえておきたいのは、何のために残すのかを決めること、現役会員のデータと分離して複製先まで管理すること、保存期限と保有件数を可視化することの3点です。
「退会者のデータは残しておいて」と頼まれたとき、開発者が最初に確認すべきなのは、保存方法だけではありません。「何のために、どの項目を、いつまで残しますか」。その問いから、データを残す責任と、不要になったときに削除する仕組みの両方を設計に組み込んでいきましょう。
連続不正アクセスの実態判明 Androidアプリを解析してAPIに侵入か
ソースネクストで2251万件超の情報流出 ユーザーパスワードも漏えい
タイムズ不正アクセス被害 裏で動いていた“20年前のシステム”とは?
国内Web侵害119件、“情報漏えいドミノ”の背後でいま何が起きているかCopyright © ITmedia, Inc. All Rights Reserved.