🔒 安全最佳实践
欢迎来到安全最佳实践教程!在本课程中,你将学习如何利用 ECC 识别和修复安全漏洞 — 让你的应用像银行金库一样坚不可摧。
前置知识
建议先完成 TDD 大师课 和 自定义 Hooks 开发 两个进阶教程。
🎮 体验安全扫描命令
ECC 内置了强大的安全审计工具。试试这些命令:
ECC Command Simulator
❯
Available Commands:
📚 安全防御五层模型
构建纵深防御体系
Step 1 of 51
第一层:输入验证 — 门口的保安
永远不要信任用户输入!输入验证是安全防御的第一道门。就像机场安检 — 所有进入的东西都必须过扫描仪。使用 Zod 进行严格的类型和格式验证。
// ❌ DANGEROUS: No validation
app.post("/api/users", (req, res) => {
db.query(`SELECT * FROM users WHERE id = ${req.body.id}`)
})
// ✅ SECURE: Zod validation + parameterized query
import { z } from "zod"
const UserQuerySchema = z.object({
id: z.string().uuid(), // Must be valid UUID
email: z.string().email().max(255),
role: z.enum(["user", "admin"])
})
app.post("/api/users", (req, res) => {
const validated = UserQuerySchema.parse(req.body)
db.query("SELECT * FROM users WHERE id = $1", [validated.id])
})💡使用 Zod 不仅验证类型,还验证格式(email/uuid/url)。一行代码防止 SQL 注入!
💻 实战:修复安全漏洞
在代码实验室中实践识别并修复常见安全漏洞:
修复安全漏洞实战typescript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
❓ 知识检测
❓
以下哪种做法最能有效防止 SQL 注入?
❓
JWT token 不设置过期时间会导致什么问题?
❓
OWASP Top 10 中排名第一的安全风险是什么?
🎉 恭喜!
你已完成安全最佳实践教程!你掌握了:
- ✅ 五层纵深防御模型
- ✅ Zod 输入验证防注入
- ✅ JWT 安全配置与角色授权
- ✅ 密钥管理与环境变量
- ✅ 依赖安全审计与 HTTP 安全头
📖 下一步
- 企业级模式 - 大型项目架构模式
- 性能优化 - 性能分析与调优
- 自定义 Hooks 开发 - 创建安全审计钩子