跳转到内容

GDPR / CCPA 合规清单

只要你的 Agent 触达欧盟(GDPR)/ 加州(CCPA)/ 巴西(LGPD)用户,这 22 项就是合规底线。Hashee 平台已经替你做了一半(盲管道 + 关系撤销事件 + grant ledger);剩下你 Agent 侧必须自己做。


A. 数据流图(5 项)

  • A1. 画出你 Agent 处理的全部数据类型(明文消息 / 用户档案 / embedding / 业务衍生数据 / 第三方 API 调用产生的数据)
  • A2. 标出每类数据的存储位置(你 PG / Redis / Stripe / 第三方 API)
  • A3. 标出每类数据的保留期(永久 / 30 天 / 跟随关系生命周期)
  • A4. 标出法律基础(用户同意 / 合同必需 / 合法利益)
  • A5. 在 privacy policy 公开发布(链接放在 Agent profile 描述里)

B. 用户 4 项核心权利实现(6 项)

权利实现状态
- [ ] B1. Right of Access用户能要求”导出我所有数据” → 业务侧提供 export 工具(24h 完成)
- [ ] B2. Right to Erasure (Right to be Forgotten)relation.revoked event handler 删除该用户全部数据
- [ ] B3. Right to Rectification用户能改 profile / 偏好(不限于”我们存了什么”)
- [ ] B4. Right to Data Portability导出可机读格式(JSON + Markdown 推荐)
- [ ] B5. Right to Restrict Processing用户能”暂停处理”(撤销 grant 即可)
- [ ] B6. Right to Object用户能反对自动化决策 / profiling — 简单解决:不做这类

C. 子处理方披露(3 项)

  • C1. 列出你 Agent 用的全部第三方服务(LLM provider / DB host / embedding service / Stripe / 监控等)
  • C2. 验证每个子处理方自身合规(OpenAI / Anthropic / Stripe 都有 DPA — 签)
  • C3. 在 privacy policy 公开列出子处理方 + 跨境传输信息

D. 跨境传输(2 项)

  • D1. 如服务欧盟用户,标准合同条款 (SCC) 签好(OpenAI / Anthropic 默认提供模板)
  • D2. 如服务中国大陆用户:评估 PIPL 合规(Hashee 平台不服务中国大陆)

E. 安全措施(4 项)

  • E1. 端到端加密:靠 Hashee 平台(你 Agent 不需做) + 你自己后端 PG/Redis 加密 at rest
  • E2. 私钥不在 git / 不在明文配置
  • E3. 访问控制:业务 PG 只有 Agent 进程能访问;不公开
  • E4. 渗透测试 / 安全审计(年度)

F. 事件响应 (Incident Response)(2 项)

  • F1. 数据泄露 72h 内通知监管 + 用户(GDPR Article 33-34)
  • F2. 写下 incident runbook:发现 → 评估 → 通知 → 修复 → 复盘

G. Hashee 已经替你做的(不要重复)

谁做
消息明文加密(端到端)Hashee 平台(盲管道)
子处理方披露(Hashee 自己用的)Hashee 平台(见 信任中心
Grant access audit logHashee 平台(append-only)
Agent 治理(违规暂停)Hashee 平台
用户主动撤销关系 → 事件通知Hashee 平台(你只需 handle event)

数据流图模板

把下面填进你的 privacy policy / DPIA:

用户 (Hashee app)
│ [E2EE: 消息明文不出客户端]
Hashee 后端 (Singapore + global edge)
│ [盲管道,只看密文]
你的 Agent 进程
│ [解密后明文 → 业务处理]
├─ 暂存内存(处理后丢弃)
├─ 写 Postgres (Neon, us-east-1) — 保留: 与 H2A 关系同
├─ 写向量 DB (pgvector, 同 PG)
├─ 调 OpenAI API (us-east) — 数据被 OpenAI 暂存 30 天用于滥用检测
├─ 调 Stripe API (global) — 计费数据法定保留
└─ 关系撤销 → 上述全部 user 数据 DELETE

Export 工具示例

// 业务侧暴露一个端点(HTTPS + auth)
app.get("/export/:userId", async (req, res) => {
// 验证调用者就是 userId 本人(用 Hashee 平台的 OAuth-like flow)
if (!await verifyUserAuth(req, req.params.userId)) {
return res.status(403).send("forbidden");
}
const userId = req.params.userId;
const data = {
profile: await db.query("SELECT * FROM user_profiles WHERE user_id = $1", [userId]),
messages: await db.query("SELECT * FROM conv_messages WHERE user_id = $1 ORDER BY ts", [userId]),
chunks: await db.query("SELECT * FROM doc_chunks WHERE user_id = $1", [userId]),
subscriptions: await db.query("SELECT * FROM user_subscriptions WHERE hashee_user_id = $1", [userId]),
audit_log: await db.query("SELECT * FROM audit_log WHERE user_id = $1", [userId]),
exported_at: new Date().toISOString(),
};
res.json(data);
});

提供 24h 有效的签名下载链接,邮件给用户。

Erasure 工具示例

// 见 [Examples — handle-revoke](/zh-cn/examples/handle-revoke)
// 业务侧在 relation.revoked event 自动执行

合规审计 trail

业务侧维护”对每个 user 做过什么”的审计:

CREATE TABLE compliance_audit (
id SERIAL PRIMARY KEY,
user_id TEXT NOT NULL,
action TEXT NOT NULL, -- 'data_exported' / 'data_deleted' / 'consent_changed'
ts TIMESTAMPTZ DEFAULT NOW(),
details JSONB
);

GDPR 监管来查时,这是你的证据。

Q&A

Q:Hashee 平台是子处理方吗? 是。把 Hashee 列入你 privacy policy 子处理方表:Hashee Pte. Ltd.(新加坡) — 消息传输 + 加密 routing

Q:我能存用户消息明文做训练数据吗? 默认不行。必须明确征得用户同意(artifact form 让 user opt-in), 且关系撤销时也必须删除。

Q:第三方 LLM provider 看到我转发的明文怎么办? 披露在 privacy policy + 用户能选择”不要让 Agent 调外部 LLM”(如果你提供 本地 LLM fallback)。

Q:CCPA 卖数据条款? Hashee 平台不卖数据;你 Agent 也不应该卖。在 privacy policy 明示: “We do not sell your personal information.”

相关页面