HTTPSを使うだけでは、APIがGDPRに適合することにはなりません。適用範囲、処理目的、適法な根拠を確認し、データとアクセスを必要な範囲に限定する必要があります。
適用範囲と適法な根拠
第3条は、EU域内の拠点の活動に関連する処理のほか、一定の条件下で域内の人への商品・サービスの提供や行動監視を対象とします。国籍や欧州居住だけで適用を説明することはできません。同意は第6条の根拠の一つにすぎず、第9条は特別な種類の個人データに追加条件を定めています。
技術対策と説明責任を組み合わせる
利用者の認証は、すべての記録へのアクセス権を意味しません。オブジェクトと操作ごとに権限を確認し、返す項目を最小化して通信を保護します。ログに秘密情報や不要な個人データを残さないようにします。管理者・処理者の役割、保存期間、本人の権利、国際移転を整理します。高いリスクが生じる可能性が高い処理では、第35条に基づく影響評価が必要です。
最新動向:交渉方針と適用法を区別する
EU理事会は2026年10月21日、データ保護規則を含むDigital Omnibusに関する交渉方針を発表しました。交渉権限の承認は最終的な法案採択ではありません。この発表だけで現行の義務が提案中の変更に置き換わることはありません。
侵害への備え
- 処理の文書と対策の実施証拠を更新する。
- 管理者は侵害を認識後、不当な遅滞なく、可能なら72時間以内に監督機関へ通知します。ただし、権利・自由へのリスクが生じる可能性が低い場合を除きます(第33条)。
- 処理者は管理者に不当な遅滞なく通知します。ログも保護し、保存期間を限定します。
出典と適用範囲
- EUR-Lex · GDPR / RGPD · 2016/679 · Art. 3, 5, 6, 9, 25, 28, 32, 33, 35, 44–49
- CNIL · API · 2023
- OWASP · API1:2023 · Broken Object Level Authorization
- Council of the EU · Digital Omnibus · 21 October 2026
- CNIL · Art. 33
編集確認日:2026年10月31日。
フィールドごとにデータ公開を制限する
データ保護ポリシーでは、システムから外部に送信される可能性のあるフィールドを特定する必要があります。GraphQLでは、1つの操作で複数の型のフィールドを組み合わせることができます。各リゾルバは、意図された目的と権限を強制する必要があります。
- 機密性の高いフィールドと、それらを必要とするロールを一覧化する
- 認証されていないアカウントでリストとネストされたオブジェクトをテストする
- ログに保持する引数と結果を削減する。
一次資料:OWASP — GraphQL Cheat Sheet. 関連する方法:実践ガイドを読む.
ZIPとTAR:保存先と資源の範囲内で展開する
展開したファイルを公開する前にパス、リンク、展開量を検証します。
- 最小権限の新しい非公開フォルダーに展開します。絶対パス、親への移動、不要なリンクや特殊ファイルを拒否します。実際に解決した保存先と名前衝突を、大文字小文字も含む対象システムの規則で確認します。文字列の前方一致だけでは隔離を証明できません。
- 書き込んだバイト数、項目数、深さ、時間、プロセス資源に個別・合計制限を設けます。圧縮サイズや申告サイズだけに頼りません。不要な入れ子を拒否し、許可時は全階層で予算を共有します。ライブラリーとフィルターを更新します。
- ../、絶対パス、リンク、重複、予算超過を試します。途中停止で公開されず既存ファイルも置換されないことを確認します。型と内容を検証後に公開し、削除時は隔離フォルダーの保存先を確認します。
再現できる受け入れ事例
架空の例です。顧客や実際の観測結果を示すデータではありません。
事例の入力を見る
{
"compressed_mb": 2,
"expanded_mb": 600,
"aggregate_budget_mb": 100,
"first_files_valid": true,
"expected": "stop_on_actual_overrun_and_do_not_promote"
}期待される判断
架空例:2 MBの圧縮データが600 MBに展開され、予算は100 MBです。実際の書き込み量超過で停止し、初期ファイルが正常でも公開しません。
Python — tarfile extraction filters and further verification
小さなアーカイブやフィルターは安全を保証しますか?
いいえ。大きく展開する場合があります。資源制限、パス規則、出力ファイル確認を加えます。
一次資料:Python — tarfile extraction filters and further verification. 関連する方法:実践ガイドを読む.
