数据与安全边界
执行边界
| 措施 | 说明 |
|---|---|
| 参数化 SQL | 物理 SQL 全部参数化,不做字符串拼接 |
| AST 白名单 | 只允许白名单内的语句形态通过 |
| 只读事务 | 查询在只读事务中执行 |
| 执行限制 | 结果行数上限与执行超时 |
结果不回传模型
关键边界
查询结果直接返回调用方,不会再发给模型生成总结。
这意味着业务数据不会因为「生成一段解读」而离开你的环境。
结果解读功能默认关闭;开启后也只允许复述结果里字面出现过的数字,不做任何模型计算。
建模期的数据接触
建模时可以对低基数维度采样真实取值,用于值字典和别名建议。
- 采样是只读的
- 可通过配置关闭
- 高基数列不适合建值字典,也不会被采样
面向业务用户的信息边界
普通业务答案不暴露:
- 内部 Scope
- Dataset
- 语义 ID
- 物理 SQL
KNOWFLOW_OSS_ALLOW_DEBUG_SQL 控制授权诊断是否返回物理 SQL,与普通回答无关。
诊断导出脱敏
诊断导出会脱敏:
- 数据库密码
- API key
- 连接串凭据
- 确认 token
配置与文件权限
- 独立版配置文件权限为
0600 .env、local.env和data/均被 Git 与 Docker 构建上下文排除
生产环境建议
部署方仍需负责的部分
系统内建的只读 Guard 是应用层防线,不能替代基础设施层的控制。生产环境仍应:
- 使用专用只读数据库账号
- 在服务外配置网络隔离
- 启用 TLS(反向代理终止 HTTPS)
- 配置正式身份认证——
KNOWFLOW_OSS_ACCESS_PASSWORD是单用户共享口令,不是多用户认证或 RBAC
需要按人分配数据范围(多用户 RBAC、行级与列级权限)请使用商业版。
数据不出域
智能问数与企业知识库一样支持完全私有化部署:
- 业务数据留在你自己的数据库
- catalog 库运行在你自己的环境
- 模型端点可指向内网自托管模型(OpenAI-compatible 即可)