mcpField
A
applying-privacy-design-patterns

applying-privacy-design-patterns

github.com/mukul975セキュリティ32345 回インストール32 週間前に更新
リポジトリ

applying-privacy-design-patterns について

個人データを扱うシステムの設計チーム向けに、Hoepmanの8つのプライバシー設計戦略を解説します。データ指向とプロセス指向のパターンをGDPRの原則に結び付け、選定方法も示します。

主な機能

  1. 01最小化・隠蔽・分離・抽象化を解説
  2. 02通知・制御・強制・実証を解説
  3. 03サブパターンと実装方法を列挙
  4. 04パターン選定手順を提示
  5. 05戦略とGDPR条項を対応付け

活用シーン

  1. 01GDPR原則に沿ったデータ処理設計
  2. 02プライバシー設計パターンの選定と組み合わせ
  3. 03システム設計における個人データ保護の評価

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/mukul975/privacy-data-protection-skills --skill applying-privacy-design-patterns

インストール後、Claude Code で/applying-privacy-design-patternsを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

assets/
template.md
references/
standards.md
workflows.md
scripts/
process.py

詳細

プライバシー設計パターンの適用

概要

プライバシー設計パターンは、システム設計においてデータ保護の原則を実装するための、再利用可能なアーキテクチャ上の解決策です。Jaap-Henk Hoepman のフレームワーク(2014 年、「Privacy Design Strategies: The Eight Strategies for GDPR Compliance」で拡張)では、8 つのプライバシー設計戦略を 2 つのカテゴリーに分類しています。データ指向の戦略(最小化、隠蔽、分離、抽象化)は個人データそのものの処理に焦点を当て、プロセス指向の戦略(通知、制御、強制、実証)はデータ処理を取り巻く組織的なプロセスに焦点を当てます。

これらのパターンは GDPR 第 25 条第 1 項のデータ保護・デザインを直接実装し、第 5 条に基づく特定の GDPR 原則に対応しています。

8 つのプライバシー設計パターン

データ指向の戦略
1. 最小化

原則: 個人データの処理を可能な限り制限します。

GDPR との対応: 第 5 条第 1 項(c)のデータ最小化、第 25 条第 2 項のデフォルト設定。

サブパターン:

サブパターン説明実装
収集前に選択収集インターフェースを設計する前に、必要なデータを特定しますAPI の許可リスト、フォームフィールドの監査
除外収集対象から不要なデータ要素を除外します必須でないフィールドを拒否するスキーマ検証
削除収集後、可能な限り早く識別情報を削除します取り込み境界での仮名化
破棄目的が達成されたら、速やかにデータを削除しますTTL に基づく自動削除

Prism Data Systems AG の実装: Prism Data Systems AG の顧客オンボーディング API は、厳格な許可リストに照らして受信リクエストを検証します。/api/v2/register エンドポイントが受け付けるのは、email、display_name、country_code のみです。date_of_birth フィールドは年齢確認時にのみ収集され、24 時間以内にブール値の is_age_verified に変換され、生の日付データは破棄されます。

2. 隠蔽

原則: 個人データを保護するか、データの関連付けや観察ができないようにします。

GDPR との対応: 第 5 条第 1 項(f)の完全性と機密性、第 32 条第 1 項(a)の暗号化と仮名化。

サブパターン:

サブパターン説明実装
暗号化保存中および転送中のデータに暗号化保護を適用しますAES-256-GCM によるフィールドレベルの暗号化、TLS 1.3
ハッシュ化識別子を不可逆なダイジェストに置き換えますログの匿名化に SHA-256 を使用
混合特定の個人を識別できないよう、複数のデータ主体のデータを組み合わせますk-匿名性、差分プライバシーのノイズ
難読化正確な推論を防ぐためにノイズや摂動を加えます差分プライバシー、データマスキング
分離データと本人との関連付けを断ちます鍵ストレージを分離した仮名化

Prism Data Systems AG の実装: 個人を特定できるすべてのフィールドは、AWS KMS で管理されるフィールドごとの AES-256-GCM データ暗号化キー(DEK)で暗号化されます。分析パイプラインに取り込まれる顧客識別子は、分析インフラストラクチャから物理的に分離されたハードウェアセキュリティモジュールに保存される鍵を使用し、HMAC-SHA256 によって仮名化されます。

3. 分離

原則: 個人データを分散して処理し、相関を防ぎます。

GDPR との対応: 第 5 条第 1 項(b)の目的制限、第 25 条第 1 項の設計によるデータ保護。

サブパターン:

サブパターン説明実装
分離異なるカテゴリのデータを別々のシステムで処理します目的別に分割したデータベース、マイクロサービスの分離
分散単一の場所からすべてのデータにアクセスできないよう、複数の場所にデータを分散しますフェデレーテッドラーニング、SMPC、シャーディング

Prism Data Systems AG の実装: Prism Data Systems AG は、目的別に分割した PostgreSQL データベースを運用しています。認証データベースには認証情報に関連するデータのみを保存し、請求データベースには財務データのみを保存し、分析データウェアハウスには仮名化されたイベントデータのみを保存します。どのデータベースにも、顧客の完全なプロフィールは含まれていません。目的をまたいだ結合には、第 6 条第 4 項に基づく明示的な適合性評価が必要です。

4. 抽象化

原則: 個人データの詳細さを可能な限り制限します。

GDPR との対応: 第 5 条第 1 項(c)のデータ最小化、前文 26 の匿名化。

サブパターン:

サブパターン説明実装
要約詳細なデータを集計した要約に置き換えますグループの最小サイズを 11 とする集計レポート
グループ化値をより広いカテゴリに一般化します正確な年齢の代わりに年齢範囲、郵便番号の代わりに地域
摂動正確な値にランダム性を加えます差分プライバシー、ランダムな丸め

Prism Data Systems AG の実装: 顧客の年齢は、正確な生年月日ではなく、5 年刻みの範囲(例:「25-29」)として保存されます。地理データは、完全な郵便番号から州レベルに一般化されます。分析ダッシュボードでは、セルごとに最低 11 件のレコードを適用し、これより少ないグループは非表示にして「< 11」と表示します。

プロセス指向の戦略
5. 通知

原則: データ主体に、個人データの処理について通知します。

GDPR との対応: 第 12 条から第 14 条の透明性に関する義務。

サブパターン:

サブパターン説明実装
提供プライバシー情報を積極的に提供します階層型プライバシー通知、適時通知
通知処理に関するイベントをデータ主体に知らせます新しいデータアクセスに関するメール通知、データ侵害通知
説明処理ロジックについて、意味のある説明を提供します説明可能な AI の出力、処理目的の説明

Prism Data Systems AG の実装: データ収集を行うすべての時点で、階層型プライバシー通知を提示します。第 1 層は平易な言葉による要約(Flesch-Kincaid グレード 8)です。第 2 層では、第 13 条に定める情報の全容を提示します。新機能で追加のデータが必要になる際には、「一括エクスポートを有効にするには、Prism Data Systems AG が API の利用履歴を処理する必要があります。」という適時通知が表示されます。

6. CONTROL

原則: データ主体が、自身の個人データの処理を管理できるようにします。

GDPR との対応: 第15~22条のデータ主体の権利、第7条3項の同意の撤回。

サブパターン:

サブパターン説明実装
Consent処理目的ごとに同意を取得し、管理する初期状態でチェックされていない、詳細な同意 UI
Chooseデータ主体が処理オプションを選択できるようにするプライバシー設定センター
Updateデータ主体が自身のデータを訂正できるようにするセルフサービスでのプロフィール編集
Retractデータ主体が同意を撤回したり、消去を請求したりできるようにするワンクリックでの同意撤回、消去請求ワークフロー

Prism Data Systems AG の実装: account.prism-data.ch/privacy にあるプライバシー設定センターでは、データ主体が詳細な管理機能を利用できます。目的ごとの同意切り替え、データのダウンロード(ポータビリティ)、訂正インターフェース、ワンクリックでの消去請求が可能です。同意の撤回は24時間以内に有効となり、後続の処理の停止を引き起こします。

7. ENFORCE

原則: 個人データをプライバシーに配慮した方法で処理することを約束し、それを徹底します。

GDPR との対応: 第24条の管理者の責任、第25条1項の設計によるデータ保護、第28条の処理者との契約。

サブパターン:

サブパターン説明実装
Createプライバシーポリシーと基準を定義し、公開するGDPR ポリシーフレームワーク、データ分類基準
Maintainプライバシーポリシーを定期的に更新し、徹底する四半期ごとのポリシーレビュー、自動コンプライアンスチェック
Upholdプライバシールールを技術的に徹底する目的ベースのアクセス制御(OPA)、自動保持

Prism Data Systems AG の実装: プライバシーポリシーは、データアクセス要求をすべて目的レジストリと照合して評価する Open Policy Agent(OPA)ルールによって、技術的に徹底されています。CI/CD パイプラインにはプライバシーゲートが組み込まれており、データ最小化評価に不合格となったサービスのデプロイをブロックします。処理者との契約には標準契約条項が含まれており、半年ごとに見直されます。

8. DEMONSTRATE

原則: プライバシーポリシーおよび適用される規制への準拠を証明します。

GDPR との対応: 第5条2項の説明責任、第30条の処理記録、第35条の DPIA。

サブパターン:

サブパターン説明実装
Record処理活動の包括的な記録を維持する第30条に基づく記録、同意ログ、DPIA リポジトリ
Auditプライバシー監査を定期的に実施する四半期ごとの内部監査、年次の外部監査
Report規制当局および経営陣向けのコンプライアンスレポートを作成するDPO の四半期レポート、取締役会向けプライバシーレポート

Prism Data Systems AG の実装: すべてのデータアクセスイベントは、タイムスタンプ、要求者の識別情報、目的の宣言、アクセスしたデータカテゴリ、承認判断を含む、変更不可能な監査証跡に記録されます。第30条に基づく記録は常に更新される文書として管理され、処理に変更があった場合は5営業日以内に更新されます。すべての高リスク処理について DPIA を実施し、毎年見直します。

パターン選択の方法

ステップ 1:処理を GDPR の原則に対応付ける

各処理活動について、最も関連性の高い GDPR の原則を特定します。

GDPR の原則主なパターン支援パターン
データ最小化(第5条1項(c))MINIMIZEABSTRACT, HIDE
目的の制限(第5条1項(b))SEPARATEENFORCE
保存期間の制限(第5条1項(e))MINIMIZE(Destroy)ENFORCE
完全性と機密性(第5条1項(f))HIDEENFORCE
透明性(第5条1項(a))INFORMDEMONSTRATE
適法性(第5条1項(a))CONTROLENFORCE
正確性(第5条1項(d))CONTROL(Update)INFORM
説明責任(第5条2項)DEMONSTRATEENFORCE
ステップ 2:パターンの適用可能性を評価する

特定の処理活動について、各パターンの適用可能性を 1~5 で評価します。

ステップ 3:選択して組み合わせる

最も高いスコアのパターンを選択します。ほとんどの処理活動では、異なるアーキテクチャ層に適用する 3~5 個のパターンを組み合わせる必要があります。

主要な規制関連資料

  • GDPR 第 5 条 — 個人データの処理に関する原則
  • GDPR 第 25 条(1) — 設計によるデータ保護
  • GDPR 第 25 条(2) — デフォルトによるデータ保護
  • 第 25 条「設計およびデフォルトによるデータ保護」に関する EDPB ガイドライン 4/2019
  • Hoepman, J.-H.(2014)「プライバシー設計戦略」IFIP SEC。「GDPR 準拠のためのプライバシー設計戦略:8 つの戦略」(2022)で発展。

コメント