《通用数据保护条例》(GDPR) 是欧盟的数据保护法律，自 2018 年 5 月起生效。它规范组织如何收集、处理和存储欧盟境内个人的个人数据。

全文: [条例 (EU) 2016/679](https://gdpr-info.eu/)

## 条款映射

下表将 GDPR 的具体条款映射到 Rediacc 的技术能力。

| 条款 | 要求 | Rediacc 功能 |
|------|------|-------------|
| [第 5 条](https://gdpr-info.eu/art-5-gdpr/)，原则 | 数据最小化、完整性、保密性 | CoW 克隆（`cp --reflink=always`）在同一机器上复制数据，无需网络传输。LUKS2 AES-256 加密所有静态数据。 |
| [第 17 条](https://gdpr-info.eu/art-17-gdpr/)，删除权 | 应请求删除个人数据 | `rdc repo destroy` 以加密方式擦除 LUKS 卷。删除 Fork 会完全移除克隆副本。 |
| [第 25 条](https://gdpr-info.eu/art-25-gdpr/)，设计即保护 | 默认隐私 | 加密是强制性的，不是可选的。每个仓库获得隔离的 Docker daemon 和专用网络。仓库之间无数据共享。配置存储使用零知识加密：配置在上传前在客户端使用 AES-256-GCM 加密，因此服务器无法读取任何明文数据。 |
| [第 28 条](https://gdpr-info.eu/art-28-gdpr/)，处理者 | 第三方数据处理义务 | 自托管：Rediacc 在您的基础设施上运行。Fork、克隆或备份操作期间没有数据离开您的机器。没有 SaaS 组件处理个人数据。 |
| [第 30 条](https://gdpr-info.eu/art-30-gdpr/)，处理记录 | 维护处理活动记录 | 审计日志跟踪 40 多种账户级事件类型：身份验证、API 令牌、配置存储操作和许可。通过 `rdc audit` CLI 或管理面板导出。 |
| [第 32 条](https://gdpr-info.eu/art-32-gdpr/)，处理安全 | 适当的技术措施 | LUKS2 AES-256 静态加密，通过 iptables 和独立 Docker daemon 实现网络隔离，每个仓库的环回 IP 子网（/26）。配置存储使用三层加密：时间窗口 SDK 密钥、分割密钥 CEK 派生（passkey + 服务器密钥）和组织口令加密。 |
| [第 33 条](https://gdpr-info.eu/art-33-gdpr/)，泄露通知 | 72 小时通知并附取证线索 | 审计日志提供所有操作的取证线索。自托管架构将影响范围限制在单个仓库。 |

## 数据驻留

CoW 克隆永远不会离开源机器。`rdc repo fork` 命令使用 reflink 创建文件系统级副本。不通过网络传输数据。

对于跨机器操作，`rdc repo backup push/pull` 通过 SSH 传输数据。备份目标接收的 LUKS 加密卷在没有操作员凭据的情况下无法读取。

## 环境克隆和数据脱敏

为开发或测试克隆生产环境时，Rediaccfile 的 `up()` 生命周期钩子在创建 Fork 后运行清理脚本：从数据库中去除 PII，将真实邮箱替换为测试地址，移除 API 令牌和会话数据，匿名化日志文件。开发环境获得不含生产身份的生产结构，满足数据最小化原则（[第 5(1)(c) 条](https://gdpr-info.eu/art-5-gdpr/)）。

## 零知识配置存储

可选的配置存储允许跨设备同步 CLI 配置。其设计使服务器对配置内容零知识：

- **客户端加密**：配置在上传前使用 AES-256-GCM 加密。加密密钥（CEK）从 passkey PRF 秘密和服务器持有的秘密使用 HKDF 和域分离派生。任何一方都无法单独派生密钥。
- **服务器只能看到不透明的 blob**：SSH 密钥、凭据、IP 地址、网络拓扑。这些对服务器均不可见。只有元数据（配置 ID、版本、时间戳）以明文存储。
- **通过 X25519 的成员访问**：添加团队成员时，CEK 使用其 X25519 公钥加密并通过服务器中继。服务器永远不会以明文看到 CEK。
- **即时撤销**：移除成员会删除其包装的 CEK 并撤销其令牌。未来的配置使用被移除成员无法访问的新 SDK 纪元。
- **轮换令牌**：CLI 身份验证使用一次性轮换令牌（3 个请求的宽限窗口），首次使用时绑定 IP，24 小时自动过期。

即使服务器被完全入侵也无法暴露配置内容。服务器永远没有密钥。

详情请参阅[配置存储](/zh/docs/config-storage)。

## 数据控制者和处理者

由于 Rediacc 是自托管软件，您的组织同时是数据控制者和数据处理者。Rediacc（公司）不访问、处理或存储您的数据。自托管产品无需与 Rediacc 签订数据处理协议，因为没有个人数据流向 Rediacc 的基础设施。

配置存储是唯一接触 Rediacc 服务器的组件（用于同步），但其零知识设计意味着服务器只存储无法解密的加密 blob。