关于 dpia-assessment
dpia-assessment 是用于 GDPR 第 35 条数据保护影响评估的 Skill,面向需要判断 DPIA 要求并记录风险的团队。它结合门槛检查、风险登记和 AI 双阶段评估指导;输出仅供信息参考,不构成法律意见。
主要功能
- 01检查第 35(3) 条触发条件和 9 项 EDPB 标准
- 02分析两项标准推定规则
- 03以 JSON 管理风险和缓解措施
- 04计算缓解后的剩余风险
- 05提供多司法辖区与 AI 评估指导
适用场景
- 01处理活动开始前判断是否需要 DPIA
- 02记录数据主体权利相关风险及缓解措施
- 03评估跨成员国处理活动的清单要求
- 04分别分析 AI 训练与推理阶段风险
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ borghei/ claude-skills --skill dpia-assessment安装后在 Claude Code 中输入/dpia-assessment确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/edpb_criteria.mdrisk_scoring_methodology.mdscripts/dpia_risk_register.pydpia_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 个法律精确要点。
| # | 要点 | 详情 |
|---|---|---|
| 1 | Art. 35(3) 绝对触发条件 | 三种强制触发条件要求必须进行 DPIA,无论其他分析结果如何:(a) 具有法律效力的自动化决策;(b) 大规模处理特殊类别数据/刑事数据;(c) 对公共区域进行系统性监控 |
| 2 | 双项标准推定 | 如果满足 9 项 EDPB 标准中的 2 项或以上,则推定必须进行 DPIA(WP 248 rev.01)。只有提供有记录的理由才能推翻该推定 |
| 3 | Art. 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 不满足该要求 |
| 8 | AI 双阶段分析 | EDPB Opinion 28/2024:AI 系统需要分别对训练阶段和推理/部署阶段进行风险分析 |
| 9 | Art. 36 的顺序要求 | 只有在完成 DPIA 且残余风险仍然较高后,才触发向监管机构事先咨询(Art. 36)。不能跳过 DPIA |
| 10 | 假名化的细微之处 | EDPB Guidelines 01/2025:假名化可以降低风险,但不能免除 DPIA 要求。相关数据仍属于个人数据 |
| 11 | 数据主体视角 | 必须从数据主体的角度评估所有风险(序言第 75 条),而非从控制者的业务角度评估 |
| 12 | AI 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 | 描述 | 权利类别 | L | S | 分数 | 等级 | 缓解措施 | 残余 L | 残余 S | 残余分数 | 残余等级 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 未经授权的画像分析 | 隐私权 | 4 | 3 | 12 | 高 | RBAC + 加密 | 2 | 2 | 4 | 低 |
| 2 | 歧视性结果 | 非歧视 | 3 | 4 | 12 | 高 | 偏见测试 + 人工审核 | 2 | 3 | 6 | 中 |
残余风险概览
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) |