RikkaHub API 密钥安全 · 本地存储直接转发
RikkaHub 对 API 密钥的承诺
RikkaHub 的核心理念之一是"你应该掌控自己的 AI 使用体验"——这包括对 API 密钥的掌控。
| 方面 | RikkaHub 的做法 |
|---|---|
| 存储位置 | Android 设备本地数据库 |
| 传输路径 | 直接从你的设备发到你配置的提供商 |
| 是否经过 RikkaHub 服务器 | 不经过 |
| 是否上传到云端 | 不(除非你主动备份) |
API 密钥的完整生命周期
输入时
- 你在"提供商设置"里粘贴 API 密钥
- RikkaHub 存储到设备本地数据库(Android Room)
- UI 上默认遮蔽(眼睛图标临时显示)
- RikkaHub 不发送、不上传、不做任何网络操作
使用时
- 你在对话里发消息
- RikkaHub 从本地数据库读取 API 密钥
- 直接拼接进 HTTP 请求头(
Authorization: Bearer xxx) - 请求发到你配置的 Base URL(某个 AI 提供商的 API 端点)
- 响应返回后,密钥从内存中清除(不持久化到临时文件)
备份时
手动导出 / WebDAV / S3 备份的 ZIP 文件会包含所有 API 密钥——因为备份是完整的数据库快照。这意味着:
- ✅ 迁移到新设备时 API 密钥会一起恢复
- ⚠️ 备份文件本身就是一个敏感文件——妥善保管
- ⚠️ 分享备份文件 = 泄露 API 密钥
跨应用导入时
从 Chatbox / Cherry Studio 导入只导入对话历史,不会导入 API 密钥。跨应用迁移密钥需要手动在 RikkaHub 里重新配置。
安全边界
RikkaHub 不会做的
- 不把你的 API 密钥上传到任何服务器
- 不记录你的密钥(除了本地数据库)
- 不把密钥转发给任何第三方(除了你自己的提供商)
- 不做任何密钥验证请求(不会主动 ping 提供商检查密钥有效性)
你需要自己注意的
| 风险 | 防护措施 |
|---|---|
| 备份文件泄露 | 备份 ZIP 里有所有密钥,妥善保管;不要上传到不可信的云 |
| 设备被盗 | 有锁屏密码 + 设备加密 → 即使被偷数据库也打不开 |
| Web 界面暴露 | 启用 JWT 认证(见 Web 界面章节) |
| API Key 被误用 | 提供商后台设置 API Key 权限、用量上限、轮换密钥 |
| 粘贴到不可信应用 | RikkaHub 会安全处理,但不要把密钥粘贴给任何你不信任的地方 |
密钥泄露后怎么办
如果某个密钥可能泄露
- 到对应提供商的控制台
- 立即撤销这个密钥
- 生成新密钥
- 回到 RikkaHub → 设置 → 提供商 → 更新 API Key 字段
如果备份文件可能泄露
- 撤销所有备份里包含的密钥
- 生成新密钥
- 更新 RikkaHub 里的所有提供商配置
- 新密钥重新做一份备份(旧备份永久删除)
如果 Web 界面被访问过
- 撤销所有提供商密钥
- 检查对话历史里有没有可疑操作(陌生消息生成、异常 Token 消耗)
- 重新配置所有提供商
- 更改 Web 界面访问密码
提供商后台的安全设置
建议在提供商后台做:
| 设置 | 说明 |
|---|---|
| API 密钥权限 | 只给必要的权限(如只允许 Chat Completions,不允许管理端点) |
| 用量上限 | 设置每日 / 每月 Token 上限,防止异常消耗 |
| IP 白名单 | 如果提供商支持,限制密钥只能从你的 IP 使用(但手机 IP 通常是动态的,可能不太适用) |
| 密钥轮换 | 定期生成新密钥、废弃旧密钥(RikkaHub 里更新就行) |
总结
RikkaHub 在 API 密钥安全上做的事情很简单:
- 本地存储
- 直接转发
- 不过中间服务器
剩下的安全是你的责任——妥善保管备份、启用 Web 密码、提供商后台设置用量上限。双方配合,密钥就安全。