使用HTTPS并不等于API符合GDPR。应先确定适用范围、处理目的和合法依据,再把数据与访问权限限制在必要范围内。
地域范围与合法依据
第3条涉及在欧盟机构活动背景下开展的处理,以及符合特定条件的、向欧盟境内人员提供商品或服务或监测其行为的处理。仅用国籍或欧洲居住身份无法概括该范围。同意只是第6条规定的合法依据之一;第9条对特殊类别个人数据另有条件。
技术控制与可证明的责任
调用者通过身份验证,并不意味着可以读取所有记录。应按对象和操作检查权限,减少返回字段并保护传输。不要在日志中写入秘密或不必要的个人数据。明确控制者与处理者、保存期限、个人权利和国际传输。处理很可能带来高风险时,第35条要求开展数据保护影响评估。
最新动态:区分谈判授权与现行法律
欧盟理事会于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 中,一个操作可以组合来自多个类型的字段;每个解析器都必须强制执行预期用途和权限。
- 清点敏感字段及其需要的角色。
- 使用未经授权的帐户测试列表和嵌套对象。
- 减少日志中保留的参数和结果。
一手资料: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. 相关方法:阅读实用指南.
