mcpField
D
dpia-assessment

dpia-assessment

github.com/borghei安全1.0k59 次安装5 天前更新
代码仓库

关于 dpia-assessment

dpia-assessment 是用于 GDPR 第 35 条数据保护影响评估的 Skill,面向需要判断 DPIA 要求并记录风险的团队。它结合门槛检查、风险登记和 AI 双阶段评估指导;输出仅供信息参考,不构成法律意见。

主要功能

  1. 01检查第 35(3) 条触发条件和 9 项 EDPB 标准
  2. 02分析两项标准推定规则
  3. 03以 JSON 管理风险和缓解措施
  4. 04计算缓解后的剩余风险
  5. 05提供多司法辖区与 AI 评估指导

适用场景

  1. 01处理活动开始前判断是否需要 DPIA
  2. 02记录数据主体权利相关风险及缓解措施
  3. 03评估跨成员国处理活动的清单要求
  4. 04分别分析 AI 训练与推理阶段风险

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/borghei/claude-skills --skill dpia-assessment

安装后在 Claude Code 中输入/dpia-assessment确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
edpb_criteria.md
risk_scoring_methodology.md
scripts/
dpia_risk_register.py
dpia_threshold_checker.py

详细介绍

⚠️ 实验性功能 — 此技能仅用于教育和提供信息,不构成法律建议。使用所产生的一切责任由用户承担。请在依据任何输出采取行动前咨询合格的法律专业人士。

DPIA 评估

GDPR 第 35 条数据保护影响评估工具。评估是否需要进行 DPIA,管理风险登记册并跟踪缓解措施,同时生成符合监管机构预期的文档。


目录


先行澄清

评估前,请确认以下输入。如果有任何一项未知或含糊不清,请询问,不要自行假设:

  • 处理活动描述 — 目的、数据类型、自动化程度、规模 — 这些因素决定第 35(3) 条触发条件的匹配结果和 EDPB 标准评分(即整个评估结论)
  • 特殊类别数据及其规模 — 决定第 35(3)(b) 条触发条件、第 9 条累积适用要求,以及大规模处理的四因素测试
  • 司法管辖区 — 适用哪些国家黑名单(DE/FR/IE/BE/NL/IT/PL);以限制最严格者为准
  • 是否涉及 AI 系统 — 根据 EDPB Opinion 28/2024 触发双阶段(训练/推理)分析,并区分单独的 FRIA

停止规则:只询问对输出影响最大的 2-3 项。如果用户表示“直接起草”,则继续,并在评估开头列出假设。

工具

DPIA 门槛检查器

根据处理活动描述评估是否需要进行 DPIA。检查第 35(3) 条强制触发条件和 9 项 EDPB 标准。

# Check a processing activity (interactive prompts)
python scripts/dpia_threshold_checker.py --activity "AI-based credit scoring using financial and behavioral data of retail banking customers across EU"

# Check from JSON description
python scripts/dpia_threshold_checker.py --input processing.json

# JSON output
python scripts/dpia_threshold_checker.py --activity "Employee monitoring via CCTV in workplace" --json

# Generate blank input template
python scripts/dpia_threshold_checker.py --template > processing.json

检查内容:

  • 第 35(3)(a) 条:具有法律或重大影响的自动化决策
  • 第 35(3)(b) 条:大规模处理特殊类别数据(第 9 条)或刑事数据(第 10 条)
  • 第 35(3)(c) 条:大规模系统性监控公众可进入的区域
  • WP 248 rev.01 中的 9 项 EDPB 标准及两项标准推定规则

输出:

  • 结论:必须进行 / 建议进行 / 无需进行
  • 第 35(3) 条触发条件匹配结果
  • EDPB 标准评分及理由
  • 两项标准推定分析

DPIA 风险登记册

以 JSON 格式管理 DPIA 风险登记册。添加风险、应用缓解措施并计算剩余风险。

# Initialize a new risk register
python scripts/dpia_risk_register.py init --output dpia_risks.json

# Add a risk
python scripts/dpia_risk_register.py add --register dpia_risks.json \
  --description "Unauthorized access to profiling data" \
  --rights-category "right-to-privacy" \
  --likelihood 4 --severity 3

# Add mitigation to a risk
python scripts/dpia_risk_register.py mitigate --register dpia_risks.json \
  --risk-id 1 --measure "Implement role-based access control" \
  --likelihood-reduction 2 --severity-reduction 1

# View risk register table
python scripts/dpia_risk_register.py view --register dpia_risks.json

# Generate residual risk summary
python scripts/dpia_risk_register.py summary --register dpia_risks.json --json

# Check Art. 36 consultation threshold
python scripts/dpia_risk_register.py art36-check --register dpia_risks.json

**权利类别:**隐私权、免受歧视权、言论自由权、知情权、不受自动化决策约束的权利、人身安全权


参考指南

EDPB 标准

references/edpb_criteria.md

完整的 EDPB 9 项标准评估框架:

  • 每项标准的说明、指标和评分指南
  • 第 35(3) 条强制触发条件
  • 两项标准推定规则(WP 248 rev.01)
  • 多司法管辖区 DPIA 分析
  • 国家黑名单/白名单概览(DE、FR、IE、BE、NL、IT、PL)
风险评分方法

references/risk_scoring_methodology.md

从数据主体角度进行 DPIA 风险评分:

  • 可能性和严重程度量表(1-5)
  • 序言 75 中的权利类别
  • 风险等级阈值(低/中/高/极高)
  • 缓解措施有效性评分
  • 剩余风险计算
  • 第 36 条咨询触发条件
  • 风险目录:20 多项常见 DPIA 风险

工作流

工作流 1:完整 DPIA 评估
Step 1: Threshold check — determine if DPIA required
        → python scripts/dpia_threshold_checker.py --activity "description"

Step 2: If Required or Recommended, describe the processing
        → Document purpose, legal basis, data categories, recipients, retention

Step 3: Assess necessity and proportionality
        → Confirm lawful basis (Art. 6, cumulative with Art. 9 if special categories)
        → Verify purpose limitation, data minimization, storage limitation

Step 4: Identify risks from data subject perspective
        → python scripts/dpia_risk_register.py init --output dpia_risks.json
        → Add risks using references/risk_scoring_methodology.md catalog

Step 5: Apply mitigations and calculate residual risk
        → python scripts/dpia_risk_register.py mitigate --register dpia_risks.json ...

Step 6: Check Art. 36 consultation requirement
        → python scripts/dpia_risk_register.py art36-check --register dpia_risks.json

Step 7: Document and review
        → python scripts/dpia_risk_register.py summary --register dpia_risks.json
工作流 2:快速门槛评估
Step 1: Describe the processing activity
        → python scripts/dpia_threshold_checker.py --template > processing.json
        → Fill in processing details

Step 2: Run threshold check
        → python scripts/dpia_threshold_checker.py --input processing.json --json

Step 3: Review verdict and reasoning
        → Required: proceed to full DPIA (Workflow 1)
        → Recommended: proceed unless strong justification to skip (document)
        → Not Required: document the assessment and rationale
工作流 3:AI 系统 DPIA
Step 1: Classify AI system (EU AI Act risk level if applicable)
        → Map to DPIA triggers (automated decision-making, profiling, scoring)

Step 2: Run threshold check with AI-specific indicators
        → python scripts/dpia_threshold_checker.py --activity "AI system description"

Step 3: Dual-phase risk analysis (EDPB Opinion 28/2024)
        → Phase 1: Training data risks (collection, bias, consent)
        → Phase 2: Inference risks (decisions, profiling, transparency)

Step 4: Assess from data subject perspective
        → Add risks covering both training and inference phases
        → Include algorithmic bias, lack of transparency, unfair outcomes

Step 5: Apply mitigations specific to AI
        → Explainability measures, human oversight, bias testing
        → Document FRIA distinction per EU AI Act Art. 27 if applicable

法律精确要点

体现专家级 DPIA 工作水平的 12 个法律精确要点。

#要点详情
1Art. 35(3) 绝对触发条件三种强制触发条件要求必须进行 DPIA,无论其他分析结果如何:(a) 具有法律效力的自动化决策;(b) 大规模处理特殊类别数据/刑事数据;(c) 对公共区域进行系统性监控
2双项标准推定如果满足 9 项 EDPB 标准中的 2 项或以上,则推定必须进行 DPIA(WP 248 rev.01)。只有提供有记录的理由才能推翻该推定
3Art. 9 与 Art. 6 累积适用特殊类别数据处理必须同时具备 Art. 6 的合法依据和 Art. 9(2) 的例外情形。仅具备其中一项并不足够
4大规模处理四因素测试评估:(a) 数据主体数量;(b) 数据量;(c) 地理范围;(d) 持续时间/永久性。没有固定的数值门槛
5国家黑名单的补充作用监管机构公布的、要求进行 DPIA 的处理操作清单,是对 Art. 35(3) 和 EDPB 标准的补充(而非替代)
6多司法辖区核查如果处理活动跨越多个成员国,则应核查各监管机构的黑名单。适用限制最严格的清单
7处理前义务必须在处理开始前完成 DPIA(Art. 35(1))。事后进行的 DPIA 不满足该要求
8AI 双阶段分析EDPB Opinion 28/2024:AI 系统需要分别对训练阶段和推理/部署阶段进行风险分析
9Art. 36 的顺序要求只有在完成 DPIA 且残余风险仍然较高后,才触发向监管机构事先咨询(Art. 36)。不能跳过 DPIA
10假名化的细微之处EDPB Guidelines 01/2025:假名化可以降低风险,但不能免除 DPIA 要求。相关数据仍属于个人数据
11数据主体视角必须从数据主体的角度评估所有风险(序言第 75 条),而非从控制者的业务角度评估
12AI Act FRIA 的区别EU AI Act Art. 27 要求对高风险 AI 进行基本权利影响评估(FRIA)。FRIA 与 GDPR DPIA 相互独立,两者可能都需要进行

输出格式

门槛判定
VERDICT: DPIA REQUIRED
Reason: Art. 35(3)(a) trigger matched (automated decision-making with legal effect)
        + 4 of 9 EDPB criteria met (two-criterion presumption applies)
Matched triggers: automated_decision_making, evaluation_scoring, sensitive_data, large_scale
风险登记表
ID描述权利类别LS分数等级缓解措施残余 L残余 S残余分数残余等级
1未经授权的画像分析隐私权4312高RBAC + 加密224低
2歧视性结果非歧视3412高偏见测试 + 人工审核236中
残余风险概览
Total risks: 8
Mitigated: 6 (75%)
Residual risk distribution:
  Low:       3 (37.5%)
  Medium:    3 (37.5%)
  High:      2 (25.0%)
  Very High: 0 (0.0%)

Art. 36 consultation: NOT TRIGGERED (no Very High residual risks)

故障排除

问题可能原因解决方案
阈值检查器显示“无需进行”,但处理活动感觉有风险活动描述过于笼统或缺少关键细节提供更具体的描述,包括数据类型、规模、自动化程度和数据主体类别
触发双项标准推定,但控制者对此有异议控制者必须记录反驳该推定的理由记录尽管符合标准,仍无需进行 DPIA 的具体理由;监管机构可能会对此提出质疑
风险登记册显示缓解措施实施后的剩余风险仍为高缓解措施不足或评分不当审查缓解措施的有效性;考虑增加控制措施;如果剩余风险仍然较高,则必须进行第 36 条磋商
多司法管辖区检查得出相互冲突的结果不同监管机构设有不同的黑名单和阈值应用最严格的要求;记录每个司法管辖区的分析
AI 系统的 DPIA 未明确区分训练风险和推理风险训练阶段和推理阶段的风险特征不同按照 EDPB 意见 28/2024 分别分析;独立评估各阶段后再综合分析
第 36 条检查的阈值不明确剩余风险接近高风险和极高风险的界限记录边界情况的评估;考虑将自愿磋商作为良好实践

成功标准

  • 所有高风险处理活动均已评估 -- 在处理开始前完成阈值检查,并记录结论和理由
  • 风险登记册已完整记录缓解措施 -- 每项已识别的风险均记录了可能性、严重程度、权利类别以及至少一项缓解措施
  • 剩余风险可接受,或已启动第 36 条磋商 -- 不存在未处理的极高剩余风险
  • 文档符合监管机构的预期 -- 评估遵循第 35(7) 条的要求:系统性描述、必要性和比例性、风险、缓解措施
  • 正确应用 EDPB 标准 -- 正确评估双项标准推定并记录理由

范围与限制

范围内:

  • 根据第 35(3) 条触发条件和 EDPB 标准进行 DPIA 阈值评估
  • 风险登记册管理,包括缓解措施跟踪和剩余风险计算
  • 第 36 条事先磋商阈值评估
  • 多司法管辖区黑名单意识(DE、FR、IE、BE、NL、IT、PL)
  • AI 系统双阶段 DPIA 分析指南
  • 根据序言第 75 条从数据主体角度进行风险评估

范围外:

  • 关于合法依据选择(第 6 条)或第 9(2) 条例外适用性的法律建议
  • 向监管机构提交材料或与其沟通
  • 缓解措施的技术实施(加密、访问控制)
  • DPO 任命或磋商安排
  • 超出所列司法管辖区的国家黑名单完整覆盖
  • EU AI Act 符合性评估(参见 eu-ai-act-specialist)

反模式

  • 处理开始后才开展 DPIA——第 35(1) 条要求在处理开始前开展 DPIA;事后开展 DPIA 不符合相关法律义务,还会带来执法风险
  • 从控制者的角度评估风险——根据序言第 75 条,必须从数据主体的角度评估 DPIA 风险;业务影响与此分析无关;对公司影响轻微的数据泄露,对受影响的个人而言可能是灾难性的
  • 认为假名化可以免除 DPIA 要求——根据 GDPR(序言第 26 条),假名化数据仍属于个人数据;假名化是一种降低风险评分的缓解措施,而不是完全跳过 DPIA 的依据
  • 残余风险较高时跳过第 36 条咨询——如果采取缓解措施后残余风险仍为极高,则必须事先咨询监管机构,不能自行选择是否咨询
  • 混淆 DPIA 与 FRIA——《欧盟 AI 法案》第 27 条规定的基本权利影响评估(FRIA)是 GDPR DPIA 之外的一项独立义务;完成其中一项并不代表满足另一项;处理个人数据的 AI 系统可能需要同时开展两项评估

工具参考

dpia_threshold_checker.py

根据第 35(3) 条的触发条件和 EDPB 标准,评估是否需要开展 DPIA。

标志必填描述
--activity <text>是(除非使用 --input 或 --template)处理活动描述
--input <file>是(除非使用 --activity)JSON 处理描述的路径
--template否生成空白输入模板
--json否以 JSON 格式输出
dpia_risk_register.py

管理 DPIA 风险登记表,包括缓解措施跟踪和残余风险计算。

子命令描述
init创建新的空白风险登记表(必填 --output)
add添加风险(必填 --register、--description、--rights-category、--likelihood、--severity)
mitigate添加缓解措施(必填 --register、--risk-id、--measure、--likelihood-reduction、--severity-reduction)
view显示风险登记表(必填 --register)
summary生成含风险分布的摘要(必填 --register,--json 可选)
art36-check检查第 36 条的咨询要求(必填 --register)

评论

支持 Markdown