Skip to content

Latest commit

 

History

History
44 lines (32 loc) · 2.27 KB

privacy-model.md

File metadata and controls

44 lines (32 loc) · 2.27 KB

隐私模型

数据等级

等级 示例 默认处理
Public 公开文章 URL、公开 GitHub 仓库元数据 可按功能读取
Derived 计数、健康等级、脱敏指标 可最小化发送给 AI
Sensitive 日志、SMART 原文、仓库文件内容 浏览器内处理,不持久化
Secret Token、Cookie、私钥、密码 拒绝处理并提示移除

数据最小化

  • 在采集前限制文件、行数、时间窗和大小;
  • 在网络请求前先映射到允许字段,再脱敏;
  • 未知字段默认丢弃,不透传;
  • URL 仅保存 Lab ID 和无敏感的 UI 状态;
  • Local Storage 默认不保存用户输入;
  • 剪贴板、下载和分享必须由用户主动触发;
  • Analytics 和错误追踪禁止携带输入与输出正文。

P0-007 脱敏边界

公共实现位于 @margrop-labs/redaction,无网络、存储或日志副作用。所有需要跨越浏览器本地边界的数据必须遵循:

  1. 使用操作专属的允许字段策略读取不可信对象,未知字段默认丢弃;
  2. 校验允许字段的类型、长度、数量和数值范围;
  3. 对自由文本中的 IP、域名、邮箱、序列号和 WWN 使用不可逆占位符;
  4. Authorization、Token 和 Cookie 默认拒绝,只报告类型和策略路径;
  5. 仅把净化后的新对象传入 URL、日志、Analytics、AI 请求或导出。

URL、日志和 Analytics 不应包含自由文本,即使文本已经脱敏。它们只允许稳定的 Lab ID、事件名、错误码、状态码、耗时和数值计数。AI 请求与用户主动触发的导出可以包含操作必需的已脱敏文本。

脱敏报告只包含敏感类型和命中数量,不包含原值、位置、长度、哈希或部分字符。“没有检测到”不是安全证明;业务 Schema、字段允许列表、Secret 禁止字段和服务端密钥隔离仍然是主防线。

页面披露

每个 Lab 页面明确显示:

  • 本地处理什么;
  • 会向服务端发送什么;
  • 是否调用 AI;
  • 是否存储;
  • 如何清除当前会话。