功能与交付边界
纯前端商业版提供的是可运行、可扩展的中后台前端项目,不是浏览器内置的完整业务后端。项目交付前应明确哪些能力已经由前端完成,哪些页面只是交互和数据结构参考,哪些能力必须由客户后端建设。
三类能力
前端已经完成
这些能力可以直接作为生产前端基础使用:
- 页面布局、导航菜单、工作标签页和响应式适配。
- 亮色、暗色、主题颜色、布局模式和用户界面偏好。
- 搜索、表格、分页、弹窗、表单和常用业务组件。
- Axios 请求封装、Bearer Token、统一响应和 401 处理。
- 本地或远程菜单、动态路由、按钮展示权限。
- 国际化、错误页、版本更新提示和生产构建。
- 动态 HTML 净化、存储命名空间和基础安全检查。
可直接评审,但数据是预置的
这些模块已经具备页面和交互,可用于评审与二次开发:
- 用户、角色、部门、岗位、菜单、字典和参数页面。
- 内容、通知、文件、工作流、调度、监控和审计页面。
- 仪表盘、数据大屏、图表和组件示例。
- 注册、个人资料、密码和会话管理。
其查询数据来自 src/mock,写操作不会持久化。
必须由后端完成
| 领域 | 后端责任 |
|---|---|
| 身份认证 | 账号校验、Token 签发、失效、限流、风控和审计 |
| 服务端鉴权 | 接口权限、资源权限、数据范围和租户隔离 |
| 业务持久化 | 数据库、事务、唯一约束、并发和备份 |
| 文件能力 | 上传、对象存储、下载鉴权、病毒扫描和生命周期 |
| 消息通知 | 消息存储、已读同步、WebSocket/SSE 和重试 |
| 工作流 | 流程定义持久化、实例执行、任务分配和事务 |
| 任务调度 | 调度器、执行器、日志、重试和并发控制 |
| 监控审计 | 指标采集、日志采集、告警、留存和防篡改 |
| AI 能力 | 服务端模型代理、密钥保护、配额和内容安全 |
| 多用户协作 | 一致性、冲突处理、锁和实时同步 |
认证边界
项目已经提供认证前端链路,但后端必须实现:
text
POST /api/v1/auth/signin
POST /api/v1/auth/logout
GET /api/v1/user/info当前前端没有 Refresh Token、请求签名、验证码或 RSA 密码协议。这不是安全能力缺失的伪装,而是避免强迫客户复制一套与自己后端不兼容的协议。客户应根据风险等级设计:
- HTTPS。
- Token 有效期与撤销。
- 登录失败限流。
- 多因素认证。
- 异常登录检测。
- 敏感操作二次确认。
权限边界
前端权限可以:
- 隐藏无权限菜单。
- 阻止通过正常路由访问未授权页面。
- 隐藏或禁用按钮。
- 提供更清晰的用户体验。
前端权限不能:
- 阻止用户手工调用 API。
- 保护数据库中的某一行数据。
- 实现租户隔离。
- 保证导出、下载和批量操作安全。
服务端必须基于当前身份、资源归属、角色、权限和数据范围重新判断。
本地数据边界
预置数据只用于:
- 页面运行。
- 交互评审。
- 字段讨论。
- 前端开发和自动化截图。
- 接口尚未完成时的并行协作。
不用于:
- 保存客户真实业务数据。
- 充当离线数据库。
- 模拟服务端权限。
- 在生产环境伪造成功操作。
- 保存账号密码、证件号、订单或审计日志。
浏览器安全边界
可以放在前端
- 公开 API 地址。
- 公开站点名称和品牌资源。
- 主题和布局偏好。
- 非敏感的产品配置。
不能放在前端
- 数据库连接信息。
- 对象存储长期密钥。
- AI 模型密钥。
- 支付私钥。
- 服务端签名密钥。
- 能绕过服务端鉴权的固定 Token。
所有 VITE_ 环境变量都会打包进浏览器,不具备保密能力。
动态内容与存储
- 业务页面禁止直接使用
v-html,统一通过ArtSafeHtml净化。 - 搜索历史默认关闭,只有明确不包含手机号、证件号、邮箱、账号和订单号等敏感信息时才启用。
- 搜索历史按用户隔离,登出或切换账号时会清理对应状态。
- 不允许调用
localStorage.clear(),避免删除同域其他应用数据。 VITE_STORAGE_NAMESPACE应在客户项目初始化时改成唯一值。
pnpm security:check 会检查部分高风险写法,但它不是完整的安全测试或渗透测试。
项目立项时的能力清单
建议把页面分成四组:
| 分组 | 处理方式 |
|---|---|
| 直接保留 | 前端能力已经满足,只需换品牌和接口 |
| 接口迁移 | 页面保留,按业务域实现后端 |
| 深度改造 | 保留通用组件,重做业务流程和字段 |
| 删除 | 项目不需要,连同路由、语言包和数据一起清理 |
不要因为演示项目包含某个页面,就默认客户项目必须保留该模块。
生产验收清单
认证与权限
- 登录、退出、Token 过期和账号禁用行为正确。
- 所有业务接口执行服务端鉴权。
- 使用 URL 直达、手工请求和无权限账号验证越权场景。
数据与操作
- 生产页面不再对关键业务使用预置数据。
- 新增、编辑、删除和批量操作真实持久化。
- 并发、重复提交、唯一约束和事务失败有明确处理。
文件与任务
- 文件上传、下载和预览经过服务端权限校验。
- 调度、工作流和异步任务在服务端执行并记录日志。
安全与交付
- 生产环境启用 HTTPS。
- 构建产物中没有密钥、测试 Token 和非必要开发地址。
pnpm release:check通过。- 已按授权和客户交付要求关闭供应商品牌入口。
- 已完成备份、监控、日志、告警和回滚方案。
完成边界确认后,可以根据业务模块地图制定后端建设与页面迁移计划。
