9.1 KiB
9.1 KiB
应用系统开发工具和中间件清单
开发工具软件
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 防护
- 安全的语言检测
- 自定义主题安全
- 性能优化
- 错误处理
安全特性总结
整体安全架构
- 多层防护: 从开发工具到部署环境的全面安全防护
- 代码安全: 通过 TypeScript、ESLint 等工具确保代码质量
- 运行时安全: Node.js 和容器化提供隔离环境
- 网络安全: Nginx 提供反向代理和安全头部
- 数据安全: PostgreSQL 和 JWT 确保数据访问安全
安全最佳实践
- 所有依赖包都使用固定版本号,避免自动升级引入安全风险
- 使用环境变量管理敏感配置信息
- 实施最小权限原则
- 定期更新依赖包以修复安全漏洞
- 使用 HTTPS 进行数据传输
- 实施适当的日志记录和监控
- 代码审查和静态分析
- 安全测试和渗透测试
开发环境安全
- VSCode 提供安全的开发环境
- 扩展市场验证确保插件安全
- 自动更新机制及时修复漏洞
- 集成安全工具链
- 代码签名和验证
部署安全
- Docker 容器化提供隔离环境
- Nginx 反向代理和安全配置
- PM2 进程管理和监控
- 环境变量管理敏感信息
- 日志记录和审计
这套技术栈提供了从开发到部署的完整安全防护体系,确保应用系统的安全性和可靠性。每个组件都经过精心选择,具备相应的安全特性,共同构建了一个安全、稳定、高效的开发和应用环境。