386 lines
9.1 KiB
Markdown
386 lines
9.1 KiB
Markdown
# 应用系统开发工具和中间件清单
|
|
|
|
## 开发工具软件
|
|
|
|
### 1. 主要开发工具
|
|
|
|
#### Visual Studio Code (VSCode)
|
|
- **产品名称**: Visual Studio Code
|
|
- **发行厂商**: Microsoft Corporation
|
|
- **版本号**: 最新版本(具体版本号需要查看本地安装)
|
|
- **适用范围**: 主要代码编辑器,用于 TypeScript/JavaScript 开发
|
|
- **安全特点**:
|
|
- 支持代码签名验证
|
|
- 内置安全扫描功能
|
|
- 支持 Git 集成进行版本控制
|
|
- 扩展市场安全验证
|
|
- 自动更新机制
|
|
|
|
### 2. 编程语言和运行时
|
|
|
|
#### Node.js
|
|
- **产品名称**: Node.js
|
|
- **发行厂商**: OpenJS Foundation
|
|
- **版本号**: `>=20.0.0` (package.json 中指定)
|
|
- **适用范围**: JavaScript 运行时环境,用于服务端开发
|
|
- **安全特点**:
|
|
- 定期安全更新
|
|
- 内置安全模块
|
|
- 支持 TLS/SSL 加密
|
|
- 内存泄漏防护
|
|
- 进程隔离
|
|
|
|
#### TypeScript
|
|
- **产品名称**: TypeScript
|
|
- **发行厂商**: Microsoft Corporation
|
|
- **版本号**: `^5.1.6`
|
|
- **适用范围**: 类型安全的 JavaScript 超集,用于前端和后端开发
|
|
- **安全特点**:
|
|
- 编译时类型检查
|
|
- 减少运行时错误
|
|
- 支持严格模式配置
|
|
- 代码重构安全
|
|
- 接口定义安全
|
|
|
|
## 前端开发工具
|
|
|
|
### 3. 前端框架
|
|
|
|
#### React
|
|
- **产品名称**: React
|
|
- **发行厂商**: Meta (Facebook)
|
|
- **版本号**: `^18.2.0`
|
|
- **适用范围**: 用户界面构建库
|
|
- **安全特点**:
|
|
- XSS 防护
|
|
- 虚拟 DOM 安全渲染
|
|
- 支持内容安全策略 (CSP)
|
|
- 组件隔离
|
|
- 安全的 props 传递
|
|
|
|
#### Remix
|
|
- **产品名称**: Remix
|
|
- **发行厂商**: Remix Software Inc.
|
|
- **版本号**: `^2.16.2`
|
|
- **适用范围**: 全栈 Web 框架
|
|
- **安全特点**:
|
|
- 内置 CSRF 保护
|
|
- 自动 XSS 防护
|
|
- 安全的表单处理
|
|
- 服务端渲染安全
|
|
- 路由安全
|
|
|
|
### 4. 构建工具
|
|
|
|
#### Vite
|
|
- **产品名称**: Vite
|
|
- **发行厂商**: Evan You (Vue.js 作者)
|
|
- **版本号**: `^6.0.0`
|
|
- **适用范围**: 前端构建工具和开发服务器
|
|
- **安全特点**:
|
|
- 热模块替换安全
|
|
- 支持 HTTPS 开发服务器
|
|
- 依赖预构建安全
|
|
- 源码映射安全
|
|
- 环境变量安全处理
|
|
|
|
#### esbuild
|
|
- **产品名称**: esbuild
|
|
- **发行厂商**: Evan Wallace
|
|
- **版本号**: `^0.25.1`
|
|
- **适用范围**: JavaScript 打包工具
|
|
- **安全特点**:
|
|
- 快速的代码转换
|
|
- 支持源码映射
|
|
- 安全的依赖解析
|
|
- 内存使用优化
|
|
- 并行处理安全
|
|
|
|
### 5. UI 组件库
|
|
|
|
#### Ant Design
|
|
- **产品名称**: Ant Design
|
|
- **发行厂商**: Ant Financial (蚂蚁金服)
|
|
- **版本号**: `^5.25.4`
|
|
- **适用范围**: React UI 组件库
|
|
- **安全特点**:
|
|
- 无障碍访问支持
|
|
- 安全的表单组件
|
|
- 支持主题定制
|
|
- 国际化安全
|
|
- 组件生命周期安全
|
|
|
|
## 后端开发工具
|
|
|
|
### 6. 数据库相关
|
|
|
|
#### PostgreSQL 客户端
|
|
- **产品名称**: pg (node-postgres)
|
|
- **发行厂商**: Brian Carlson
|
|
- **版本号**: `^8.14.1`
|
|
- **适用范围**: PostgreSQL 数据库客户端驱动
|
|
- **安全特点**:
|
|
- 参数化查询防注入
|
|
- SSL 连接支持
|
|
- 连接池管理
|
|
- 事务安全
|
|
- 错误处理安全
|
|
|
|
### 7. 进程管理
|
|
|
|
#### PM2
|
|
- **产品名称**: PM2
|
|
- **发行厂商**: Keymetrics
|
|
- **版本号**: `^6.0.8`
|
|
- **适用范围**: Node.js 进程管理器
|
|
- **安全特点**:
|
|
- 进程隔离
|
|
- 自动重启机制
|
|
- 日志管理
|
|
- 监控安全
|
|
- 集群模式安全
|
|
|
|
## 中间件
|
|
|
|
### 8. Web 服务器
|
|
|
|
#### Nginx
|
|
- **产品名称**: Nginx
|
|
- **发行厂商**: Nginx Inc. (现为 F5 Networks)
|
|
- **版本号**: `alpine` (Docker 镜像)
|
|
- **适用范围**: 反向代理和负载均衡
|
|
- **安全特点**:
|
|
- 请求限流
|
|
- SSL/TLS 终止
|
|
- 安全头部配置
|
|
- DDoS 防护
|
|
- 访问控制
|
|
- 日志安全
|
|
|
|
### 9. 容器化
|
|
|
|
#### Docker
|
|
- **产品名称**: Docker
|
|
- **发行厂商**: Docker Inc.
|
|
- **版本号**: 最新稳定版
|
|
- **适用范围**: 应用容器化部署
|
|
- **安全特点**:
|
|
- 容器隔离
|
|
- 镜像签名验证
|
|
- 安全扫描功能
|
|
- 网络隔离
|
|
- 资源限制
|
|
- 运行时安全
|
|
|
|
### 10. 认证中间件
|
|
|
|
#### JWT (jsonwebtoken)
|
|
- **产品名称**: jsonwebtoken
|
|
- **发行厂商**: Auth0
|
|
- **版本号**: `^9.0.2`
|
|
- **适用范围**: 用户身份认证和授权
|
|
- **安全特点**:
|
|
- 数字签名验证
|
|
- 令牌过期机制
|
|
- 支持多种算法
|
|
- 令牌刷新机制
|
|
- 黑名单支持
|
|
|
|
## 开发辅助工具
|
|
|
|
### 11. 代码质量工具
|
|
|
|
#### ESLint
|
|
- **产品名称**: ESLint
|
|
- **发行厂商**: OpenJS Foundation
|
|
- **版本号**: `^8.38.0`
|
|
- **适用范围**: JavaScript/TypeScript 代码检查
|
|
- **安全特点**:
|
|
- 安全规则检查
|
|
- 代码规范统一
|
|
- 潜在漏洞检测
|
|
- 自定义规则支持
|
|
- 集成开发环境支持
|
|
|
|
#### TypeScript ESLint
|
|
- **产品名称**: @typescript-eslint
|
|
- **发行厂商**: TypeScript ESLint Team
|
|
- **版本号**: `^6.7.4`
|
|
- **适用范围**: TypeScript 代码检查
|
|
- **安全特点**:
|
|
- 类型安全检查
|
|
- 严格的代码规范
|
|
- 最佳实践检查
|
|
- 类型推断安全
|
|
- 接口安全验证
|
|
|
|
### 12. 样式工具
|
|
|
|
#### Tailwind CSS
|
|
- **产品名称**: Tailwind CSS
|
|
- **发行厂商**: Tailwind Labs
|
|
- **版本号**: `^3.4.17`
|
|
- **适用范围**: CSS 框架
|
|
- **安全特点**:
|
|
- 安全的类名生成
|
|
- 内容安全策略兼容
|
|
- 无 JavaScript 依赖
|
|
- 响应式设计安全
|
|
- 主题系统安全
|
|
|
|
#### PostCSS
|
|
- **产品名称**: PostCSS
|
|
- **发行厂商**: PostCSS Team
|
|
- **版本号**: `^8.5.3`
|
|
- **适用范围**: CSS 后处理器
|
|
- **安全特点**:
|
|
- 安全的插件系统
|
|
- 源码映射支持
|
|
- 兼容性处理
|
|
- 性能优化
|
|
- 错误处理安全
|
|
|
|
### 13. 版本控制
|
|
|
|
#### Git
|
|
- **产品名称**: Git
|
|
- **发行厂商**: Linus Torvalds (Linux Foundation)
|
|
- **版本号**: 最新稳定版
|
|
- **适用范围**: 代码版本控制
|
|
- **安全特点**:
|
|
- 数字签名支持
|
|
- 加密传输
|
|
- 访问控制
|
|
- 分支保护
|
|
- 提交验证
|
|
|
|
## 第三方软件部件
|
|
|
|
### 14. HTTP 客户端
|
|
|
|
#### Axios
|
|
- **产品名称**: Axios
|
|
- **发行厂商**: Matt Zabriskie
|
|
- **版本号**: `^1.9.0`
|
|
- **适用范围**: HTTP 请求库
|
|
- **安全特点**:
|
|
- 自动 CSRF 令牌处理
|
|
- 请求/响应拦截
|
|
- 错误处理机制
|
|
- 超时控制
|
|
- 重试机制
|
|
|
|
### 15. 工具库
|
|
|
|
#### dayjs
|
|
- **产品名称**: dayjs
|
|
- **发行厂商**: iamkun
|
|
- **版本号**: `^1.11.13`
|
|
- **适用范围**: 日期时间处理
|
|
- **安全特点**:
|
|
- 不可变对象
|
|
- 时区安全处理
|
|
- 轻量级设计
|
|
- 格式化安全
|
|
- 解析验证
|
|
|
|
#### uuid
|
|
- **产品名称**: uuid
|
|
- **发行厂商**: LiosK
|
|
- **版本号**: `^11.1.0`
|
|
- **适用范围**: 唯一标识符生成
|
|
- **安全特点**:
|
|
- 加密安全的随机数生成
|
|
- 支持多种 UUID 版本
|
|
- 防碰撞设计
|
|
- 时间戳安全
|
|
- 命名空间支持
|
|
|
|
### 16. 文档处理
|
|
|
|
#### PDF.js
|
|
- **产品名称**: pdfjs-dist
|
|
- **发行厂商**: Mozilla
|
|
- **版本号**: `^3.11.174`
|
|
- **适用范围**: PDF 文档渲染
|
|
- **安全特点**:
|
|
- 沙箱执行环境
|
|
- 内存使用限制
|
|
- 安全的内容解析
|
|
- 权限控制
|
|
- 漏洞防护
|
|
|
|
#### docx-preview
|
|
- **产品名称**: docx-preview
|
|
- **发行厂商**: Volodymyr Klymenko
|
|
- **版本号**: `^0.3.5`
|
|
- **适用范围**: Word 文档预览
|
|
- **安全特点**:
|
|
- 客户端渲染
|
|
- 无服务器依赖
|
|
- 安全的文件解析
|
|
- 格式验证
|
|
- 错误处理
|
|
|
|
### 17. 状态管理
|
|
|
|
#### Immer
|
|
- **产品名称**: Immer
|
|
- **发行厂商**: Michel Weststrate
|
|
- **版本号**: `^10.1.1`
|
|
- **适用范围**: 不可变状态管理
|
|
- **安全特点**:
|
|
- 不可变数据结构
|
|
- 类型安全
|
|
- 性能优化
|
|
- 调试友好
|
|
- 内存安全
|
|
|
|
### 18. 实用工具
|
|
|
|
#### highlight.js
|
|
- **产品名称**: highlight.js
|
|
- **发行厂商**: highlight.js contributors
|
|
- **版本号**: `^11.11.1`
|
|
- **适用范围**: 代码语法高亮
|
|
- **安全特点**:
|
|
- XSS 防护
|
|
- 安全的语言检测
|
|
- 自定义主题安全
|
|
- 性能优化
|
|
- 错误处理
|
|
|
|
## 安全特性总结
|
|
|
|
### 整体安全架构
|
|
1. **多层防护**: 从开发工具到部署环境的全面安全防护
|
|
2. **代码安全**: 通过 TypeScript、ESLint 等工具确保代码质量
|
|
3. **运行时安全**: Node.js 和容器化提供隔离环境
|
|
4. **网络安全**: Nginx 提供反向代理和安全头部
|
|
5. **数据安全**: PostgreSQL 和 JWT 确保数据访问安全
|
|
|
|
### 安全最佳实践
|
|
- 所有依赖包都使用固定版本号,避免自动升级引入安全风险
|
|
- 使用环境变量管理敏感配置信息
|
|
- 实施最小权限原则
|
|
- 定期更新依赖包以修复安全漏洞
|
|
- 使用 HTTPS 进行数据传输
|
|
- 实施适当的日志记录和监控
|
|
- 代码审查和静态分析
|
|
- 安全测试和渗透测试
|
|
|
|
### 开发环境安全
|
|
- VSCode 提供安全的开发环境
|
|
- 扩展市场验证确保插件安全
|
|
- 自动更新机制及时修复漏洞
|
|
- 集成安全工具链
|
|
- 代码签名和验证
|
|
|
|
### 部署安全
|
|
- Docker 容器化提供隔离环境
|
|
- Nginx 反向代理和安全配置
|
|
- PM2 进程管理和监控
|
|
- 环境变量管理敏感信息
|
|
- 日志记录和审计
|
|
|
|
这套技术栈提供了从开发到部署的完整安全防护体系,确保应用系统的安全性和可靠性。每个组件都经过精心选择,具备相应的安全特性,共同构建了一个安全、稳定、高效的开发和应用环境。 |