密钥保密要求
接入 Room 时,你需要重点保护应用密钥和短效连接凭证,避免它们出现在设备固件、客户端源码、日志或工单截图中。
需要保护的凭证
| 凭证 | 是什么 | 可以出现在哪里 | 不应出现在哪里 |
|---|---|---|---|
app_secret | 应用级服务端密钥,用于调用 Token 服务。 | 业务服务端。 | 设备固件、客户端源码、前端页面、公开仓库、日志。 |
token | 短效 TiRTC-X 入房凭证。 | 设备端临时持有。 | 长期缓存、完整日志、群聊、工单截图。 |
peer_id | TiRTC 连接目标标识。 | 设备端临时持有。 | 未脱敏日志或公开文档示例。 |
不要这样做
- 把
app_secret写进设备固件或示例工程。 - 让设备端自行调用
POST /v1/token/room。 - 在日志中打印完整
Authorization、token或peer_id。 - 长期缓存 token,或在多次入房中复用过期凭证。
推荐做法
- 业务服务端统一申请凭证,并通过安全通道下发给设备。
- token 使用后尽快释放,过期或失败时重新申请。
- 日志只记录必要定位信息,例如
room_id、device_id、session_id和错误码。 - 对外沟通问题时先脱敏,只保留足够定位的 ID 和时间范围。
如果密钥已经泄露
- 立即停止使用泄露密钥。
- 确认泄露范围,包括仓库、日志、聊天记录和截图。
- 申请或轮换新的应用密钥。
- 清理历史副本,并排查是否存在异常 token 签发或入房行为。