Skip to content

开源发布清单

1. 法律与知识产权

  • 确认公司、客户和所有贡献者已授权开源。
  • 仓库已使用 MIT License;确认该许可证符合你的商业目标。
  • 审计全部直接与传递依赖许可证,特别关注 CDN tarball、字体、图标、图片和演示数据。
  • 删除未获授权的品牌、Logo、截图、客户字段和受版权保护的素材。
  • 在 README 明确项目名称、定位、License、文档地址和免责声明。

MIT 允许商业使用、修改、分发与私有使用,但分发时需保留版权与许可证声明;它不提供担保。

2. 秘密与隐私

  • 检查完整 Git 历史,而不只是当前文件;泄露过的密钥必须立即轮换。
  • 删除真实 API 地址、账号、Token、Cookie、私钥、数据库信息、内部域名和监控地址。
  • 清理演示 JSON 中的姓名、手机号、邮箱、地址、订单等个人或业务数据。
  • 使用 .env.example 提供占位配置,不提交本地生产配置。
  • 检查构建产物、source map、IDE 配置、日志、截图和压缩包。

推荐使用 Gitleaks 或 TruffleHog 扫描完整历史,并对结果人工复核。

3. 仓库卫生

  • 不提交 node_modules/dist/、IDE 用户配置和本地缓存。
  • 确认 .gitignore 覆盖本地环境文件、日志和测试产物。
  • 使用 npm ci 在干净目录验证可复现安装。
  • 审核 package-lock.json 中的下载域名与完整性信息。
  • 删除无用 /test 路由、调试代码、console 中的敏感信息和临时接口。
  • 修正 queryRoleIdsApi 指向菜单接口的问题。

4. 安全基线

  • 后端强制鉴权和按钮/资源权限,前端权限不作为安全边界。
  • 生产接口使用正确 HTTP 方法、CSRF/CORS 策略和参数校验。
  • 富文本净化,上传文件限制,外链和 iframe 使用允许列表。
  • 第三方服务设置 withToken: false
  • 评估 localStorage Token 风险;高安全场景采用 HttpOnly Cookie。
  • 运行 npm audit,但也要人工评估可利用性和升级影响。

5. 开源协作文件

建议仓库根目录包含:

  • README.md 与可选 README.en.md
  • LICENSE
  • CONTRIBUTING.md
  • SECURITY.md
  • CODE_OF_CONDUCT.md
  • Issue 与 Pull Request 模板
  • CHANGELOG.md
  • CI 工作流与 Dependabot/Renovate 配置

6. 发布流程

  1. 在私有镜像或临时分支完成清理和历史扫描。
  2. 从全新 clone 安装、检查、构建与运行。
  3. 创建 v1.0.0 等语义化版本标签和 Release Notes。
  4. 发布源码仓库与文档站点。
  5. 创建最小可复现示例和路线图,标明尚未完成的能力。
  6. 配置漏洞私密报告渠道、维护者通知和依赖更新。

7. 发布后的维护

公开项目需要持续投入。建议明确支持的 Node/浏览器版本、Issue 响应范围、版本节奏、弃用策略和安全修复 SLA。无人维护时应在 README 明确状态,而不是让用户误判项目活跃度。

基于 MIT License 开源