データ分類と最小化
データを責任を持って取り扱います。
「データ分類と最小化」はCoddyKit上の無料Cyber Security Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCyber Security Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cyber Security Academyコースには全4レッスンが含まれています。
データを分類する理由
分類していないものを保護することはできません。データ分類では、機密度のレベルを割り当て、リスクに応じて管理策を適用します。データの機密性が高いほど、より強力な保護策が必要です。
分類は、アクセス制御、暗号化の要件、保持期間、侵害対応の優先度を決める基準になります。
分類レベル
一般的な方式では、4つのレベルを使用します。
- 公開:開示されても害がないデータ
- 社内:通常の業務データ
- 機密:顧客データ、契約書
- 制限付き:特別カテゴリーデータ、秘密情報、認証情報
各レベルには、必要な管理策が対応付けられます。ラベルは、スタッフが実際に正しく適用できる程度に単純にしてください。
データの検出
分類するには、まずデータを見つける必要があります。個人データは、ログ、バックアップ、スプレッドシート、サポートチケット、放置されたデータベース(シャドーデータ)などに潜んでいます。
データ検出ツールは、国民ID番号、カード番号、メールアドレスなどのパターンを求めて保存先をスキャンし、インベントリを作成します。
# Simple regex sweep for emails and card-like numbers in a codebase/logs
grep -rEn '[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}' ./logs
grep -rEn '\b(?:[0-9]{4}[ -]?){4}\b' ./logsデータマッピング
データマップは、個人データのライフサイクルを追跡します。つまり、どこから入り、どこに保存され、誰がアクセスでき、どこへ流れ、どこから出ていくかを示します。
- 収集ポイント(フォーム、API、SDK)
- ストレージシステム
- サードパーティの処理者
- 削除エンドポイント
個人のデータが存在するすべての場所を把握していなければ、消去請求に応じることはできません。
データ最小化の原則
データ最小化とは、特定の明示された目的に必要なデータだけを収集し、保持することです。
- いつか役立つかもしれないという理由だけで、フィールドを収集しないでください
- IDで十分な場合に、ペイロード全体をログに記録しないでください
- 目的を過ぎたデータを保持しないでください
データが少なければ、侵害時の影響、コンプライアンスの負担、ストレージコストを減らせます。
実務での最小化
具体的なエンジニアリング上の対策は次のとおりです。
- 比較だけが必要な場合は、元の値ではなくハッシュを保存する
- ログの値を切り詰めるかマスクする(末尾4桁のみ表示する)
- ユーザーごとのイベントを保存するのではなく、分析データを集計する
- 永続化しない一時的な処理を使用する
# Mask a card number in application logs, keep only last 4
# 4242 4242 4242 4242 -> **** **** **** 4242
sed -E 's/[0-9]{4}([ -]?[0-9]{4}){2}([ -]?)([0-9]{4})/**** **** **** \3/g'保持と削除
保存期間の制限により、保持期間を定め、期限が来たら実際に削除する必要があります。無期限の保持は利便性ではなく、違反です。
- カテゴリごとに保持スケジュールを設定する
- 削除ジョブを自動化する
- プライマリデータベースだけでなく、バックアップとログも対象にする
# Automated retention: purge support tickets closed over 24 months ago
DELETE FROM support_tickets
WHERE status = 'closed'
AND closed_at < NOW() - INTERVAL '24 months';アクセス制御と最小権限
分類は、分類に応じてアクセスを制御して初めて保護につながります。最小権限を適用し、人やサービスには、その作業に必要な最小限のアクセス権だけを付与してください。
- 分類レベルに紐づけたロールベースのアクセス制御
- 機密性の高いクエリに対するジャストインタイムアクセス
- 定期的なアクセスレビューと、役割変更時の権限取り消し
制限付きデータにアクセスできるIDは、可能な限り少なくしてください。
分類に応じた暗号化
分類レベルが高いほど、より強力な保護が必要です。
- 機密データと制限付きデータに対する保存時の暗号化
- あらゆる場所での転送中の暗号化(TLS)
- 最も機密性の高いフィールドに対するフィールドレベル暗号化またはトークン化
暗号化によって侵害通知義務も軽減できます。適切に暗号化されたデータは、報告対象となる漏えいに該当しない場合があります。
パイプラインへの組み込み
分類と最小化は、定期監査ではなく、開発パイプラインのデフォルト設定として組み込むと効果を発揮します。
- スキーマやデータカタログで、フィールドに機密度をタグ付けする
- コードレビューで新しいPIIフィールドをリントする
- 集中ロガーを使って、制限付きフィールドのログ記録をブロックする
- 設計段階でデータ収集をレビューする(Privacy by Design)
バックアップとシャドーコピー
最小化と削除は、プライマリストアだけでなく、その先まで適用する必要があります。個人データは、チームが忘れがちな次の場所にも残ります。
- データベースのバックアップとスナップショット
- ログ集約と分析パイプライン
- キャッシュされたエクスポートとスプレッドシート
- 本番データを投入したレプリカと開発・テスト環境
昨夜のバックアップやテストデータベースにデータが残っていれば、消去請求に対応したことにはなりません。
理解度チェック
データ最小化について理解度を確認しましょう。
まとめ
責任あるデータの取り扱いを学びました。
- 管理策に反映するため、データを機密度のレベルに分類する
- 個人データがどこに存在し、どのように流れるかを検出してマッピングする
- 最小化する。必要なデータだけを収集し、ログに記録し、保持する
- 分類に応じて保持・削除、最小権限、暗号化を徹底する
- すべてをパイプラインのデフォルト設定として組み込む
次は、問題が起きたときの対応、つまり侵害通知とDPIAについて学びます。
よくある質問
「データ分類と最小化」レッスンは無料ですか?
はい。「データ分類と最小化」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cyber Security Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cyber Security Academyコースには全4レッスンが含まれています。
「データ分類と最小化」で何を学びますか?
データを責任を持って取り扱います。 ブラウザで直接実行するハンズオンコードでCyber Security Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Cyber Security Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのCyber Security Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。
「データ分類と最小化」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このCyber Security Academyレッスンでコードを書いて実行できますか?
はい。すべてのCyber Security Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。