数据库与密钥
Crest 数据库连接、初始密码、AES Key、国密模式和敏感配置管理说明。
数据库和密钥决定了 Crest 的长期可维护性。测试环境可以使用安装包内置数据库,正式环境建议使用企业统一维护的 MySQL,并将数据库账号、密码、AES Key、AES IV 和国密模式下的 SM4 Key 纳入密钥管理流程。
这类配置不适合频繁变更。数据库连接、管理员密码和加密密钥一旦进入生产环境,就会影响历史数据、数据源密码、SSO Secret、备份恢复和升级迁移。上线前要设计好,变更时要有维护窗口和回滚方案。
哪些配置属于敏感配置
| 配置 | 作用 | 管理要求 |
|---|---|---|
| MySQL 地址 | Crest 元数据存储位置 | 不应写入公开文档、截图或工单正文 |
| MySQL 用户名和密码 | 连接数据库 | 使用独立账号,最小权限 |
| 管理员初始密码 | 首次登录系统 | 首次登录后立即修改 |
| 加密模式 | 控制系统使用默认加密链路还是国密链路 | 上线前确定,避免上线后频繁切换 |
| AES Key / IV | 加密系统敏感数据 | 上线后不要随意更换 |
| SM4 Key | 国密 sm-suite 模式下保护敏感配置 | 与数据库备份、配置备份一起保存 |
| SSO Client Secret | 连接身份提供方 | 只允许管理员和运维人员查看 |
外部 MySQL 建议
正式环境建议数据库满足以下条件:
| 项目 | 建议值 |
|---|---|
| MySQL 版本 | 8.0 系列 |
| 字符集 | utf8mb4 |
| 排序规则 | 与企业数据库规范一致,优先支持中文和 Emoji |
| 时区 | 与业务系统一致 |
| 备份 | 至少每日全量备份,关键环境增加增量备份 |
| 连接数 | 根据并发查询、导出任务和同步任务预留 |
数据库账号不要复用 root。建议为 Crest 单独创建账号,只授予 Crest 数据库的读写权限。
CREATE DATABASE crest DEFAULT CHARACTER SET utf8mb4;
CREATE USER 'crest'@'%' IDENTIFIED BY 'replace-with-strong-password';
GRANT ALL PRIVILEGES ON crest.* TO 'crest'@'%';
FLUSH PRIVILEGES;如果企业数据库账号需要按最小权限拆分,应由 DBA 根据 Crest 的实际迁移和读写需求确认授权范围。不应将 DBA 高权限账号配置到应用中,也不应在公开截图中暴露数据库主机名和账号。
修改数据库连接
停止业务写入
在维护窗口操作,提前通知用户暂停数据源维护、数据集同步、导出和大屏编辑。
备份旧数据库
导出完整数据库,并记录当前 Crest 版本号、配置文件和容器镜像。
修改连接配置
在部署目录或 Kubernetes Secret 中修改数据库地址、端口、库名、账号和密码。
启动服务
启动 Crest,观察日志中数据库迁移、连接池初始化和启动完成信息。
做业务验证
登录、打开工作台、查看数据源、预览数据集、打开仪表盘、提交导出任务。
加密模式与密钥
Crest 提供 standard 和 sm-suite 两种加密模式。standard 是默认模式;需要 SM2、SM3、SM4 的项目,可以在部署时设置 CREST_CRYPTO_MODE=sm-suite。
| 配置 | 说明 |
|---|---|
CREST_CRYPTO_MODE | standard 或 sm-suite |
CREST_AES_KEY | 32 位 AES Key |
CREST_AES_IV | 16 位 AES IV |
CREST_SM4_KEY | sm-suite 模式使用的 16 位 SM4 Key |
sm-suite 模式下,登录传输使用 SM2,密码使用 SM3 迭代哈希,敏感配置使用带随机 IV 和 HMAC-SM3 完整性校验的 SM4 密文保存。业务用户不需要改变操作习惯,仍然按原流程使用数据源、数据集、仪表盘、大屏、分享和导出。
不要随意更换加密密钥
上线后更换 AES Key、AES IV 或 SM4 Key,可能导致历史敏感数据无法正常解密。确需变更时,应先在备份环境验证完整迁移流程。
建议做法:
- 使用足够随机的 AES Key、AES IV 和 SM4 Key。
- 不把 Key、IV、SM4 Key 写进公开文档、聊天记录或普通工单。
- 密钥变更必须有审批、备份、验证和回滚记录。
- Kubernetes 环境使用 Secret 管理,不写入 ConfigMap。
管理员密码
首次登录后应进入“修改密码”页面更新管理员密码。

修改密码页面是管理员交付流程中的必做步骤。安装完成后,如果继续使用初始密码,后续难以判断账号是否被多人使用过。建议初始密码只交给第一位平台负责人,由负责人登录后立即修改。
密码管理建议:
- 管理员账号不要多人共用。
- 初始密码只用于首次登录。
- 离职、转岗或权限调整后及时禁用账号或回收角色。
- 对外暴露环境必须配合 HTTPS 使用。
变更后检查
| 检查项 | 正常表现 |
|---|---|
| 服务启动 | 日志无数据库连接失败、迁移失败、权限不足 |
| 登录 | 管理员和普通用户都能登录 |
| 数据源 | 已有数据源可以查看和测试连接 |
| 数据集 | 可以预览数据和保存字段配置 |
| 仪表盘 | 图表查询正常,无大量空白组件 |
| 导出 | 导出任务可以生成并下载 |
密钥保管建议
| 项目 | 建议 |
|---|---|
| 保存位置 | 使用企业密码库、密钥管理系统或受控运维台账 |
| 可见范围 | 限制在平台管理员和运维负责人 |
| 传递方式 | 不通过普通聊天群、截图或公开 issue 传递 |
| 备份关系 | 密钥应和数据库备份、配置备份一起保存 |
| 变更审批 | 变更前确认影响范围、验证方案和回滚方案 |