Hub 团队权限与角色 —— Owner / Member / Read-only / Create Vaults
组织级 vs 保险库级
Hub 的权限有两层:
- 组织级(Organization):谁能创建新保险库、谁能管理 Hub 用户、谁能访问 Emergency Access
- 保险库级(Vault):谁是这个保险库的 Owner、谁能读写、谁只读
组织级角色
| 角色 | 权限 | 谁来承担 |
|---|---|---|
| Hub Admin | 管理整个 Hub 实例、所有保险库、所有用户、Emergency Access | 技术负责人 / IT |
| Create Vaults 权限 | 能创建新的 Hub 保险库 | Hub Admin 可以给普通用户授予这个权限 |
| 普通用户 | 不能创建保险库、只能被 Hub Admin 加进现有保险库 | 团队成员 |
Hub 2.0 新增的 Create Vaults 独立权限很重要——之前是所有 Hub 用户默认能建保险库,现在管理员可以精细控制:"只有我和财务主管能建新保险库,其他人只能用已有的"。
保险库级角色
每个 Hub 保险库可以有多个成员,每个成员有独立的保险库级角色:
| 角色 | 读 | 写 | 管理其他成员 | 紧急访问 |
|---|---|---|---|---|
| Owner(保险库所有者) | ✅ | ✅ | ✅(能加/踢成员、改角色) | ✅ |
| Member(成员) | ✅ | ✅ | ❌ | ❌ |
| Read-only(只读) | ✅ | ❌ | ❌ | ❌ |
一个保险库可以有多个 Owner(比如两个同事共享管理),所有 Owner 权限平等。Member 和 Read-only 可以混合——比如财务文档保险库:
- CFO = Owner(管权限 + 读写)
- 财务主管 = Member(能写能读)
- 老板 = Read-only(只能看)
- 审计助理 = Read-only(只能看)
添加成员的流程
Owner 登录 Hub 网页控制台 → 进入保险库详情 → Add User → 搜索成员(Hub 实例里的已注册用户)→ 选角色 → 确认。
- 成员不需要知道保险库密码或 Recovery Key
- 成员被添加后,Hub 会为这个成员生成独立的 ECDH-ES JWE 密文
- 成员在自己的设备上用 Cryptomator → Hub 账号登录 → 解锁保险库 → 自动得到 512 bit 主密钥
- 全程零密码交互
紧急存取(Emergency Access)
Hub 2.0 最值得提的新功能。场景:
- 员工离职但没交保险库的访问权(之前的个人版必须交密码)
- Hub 服务端挂了(但你还是需要数据)
- Hub 管理员被车撞了(Emergency Access 需要 Owner 或 Hub Admin 的 Recovery Key 来执行)
Emergency Access 分两种:
Online Recovery(在线恢复)
Hub 服务端正常运行时,Owner 或 Hub Admin 可以:
- 用自己的 Recovery Key 触发 Emergency Access
- Hub 用 Recovery Key 恢复主密钥
- Hub 给指定的新用户(或自己)生成新的 JWE 访问权
- 原离职员工的访问权可以被吊销
Offline Recovery(离线恢复)
Hub 服务端挂了时,仍然能拿到数据:
- 用 Owner 的 Recovery Key
- 生成一个新的个人密码保险库密码
- Hub 管理员在 Hub 服务端执行恢复脚本 → 写回
masterkey.cryptomator - 保险库暂时变回个人密码保险库
- 用新密码在任何 Cryptomator 客户端解锁 → 拿到数据
这是真正的"兜底"——Hub 再挂也不影响你拿到自己的加密数据。
SSO / LDAP 集成
Hub 支持把你的组织 SSO / LDAP 身份源(Active Directory、Okta、Auth0、GitHub 等)接入 Hub。这样团队成员用自己已有的公司账号就能登录 Hub,不需要额外注册。
这对于组织级采购的 Hub 特别有用——AD 里加/删人时,Hub 的用户列表自动同步。
Hub 和个人版的最大区别:信任边界
个人版 Cryptomator 的信任模型:
你只需要相信 AES、scrypt、AES Key Wrap 这些成熟的加密原语 + 你自己的密码。没有任何第三方能看到你的数据。
Hub 的信任模型:
你除了相信以上加密原语,还需要相信 Hub 服务端的完整性——Hub 服务端确实不存储明文主密钥(ECDH-ES JWE 里只有密文),Hub 管理员也看不到主密钥。但如果 Hub 服务端被入侵,攻击者有可能从 Hub 服务端盗走所有 JWE 密文 + 某个成员的私钥 → 解包主密钥。
这不是说 Hub 不安全——只是信任边界比个人版宽了一点。Hub 自部署版能最大程度消除这个顾虑(Hub 服务端在你自己的服务器上)。