跳到主要内容

🔒 安全最佳实践

欢迎来到安全最佳实践教程!在本课程中,你将学习如何利用 ECC 识别和修复安全漏洞 — 让你的应用像银行金库一样坚不可摧。

前置知识

建议先完成 TDD 大师课自定义 Hooks 开发 两个进阶教程。

🎮 体验安全扫描命令

ECC 内置了强大的安全审计工具。试试这些命令:

ECC Command Simulator
Available Commands:

📚 安全防御五层模型

构建纵深防御体系

Step 1 of 5
1

第一层:输入验证 — 门口的保安

永远不要信任用户输入!输入验证是安全防御的第一道门。就像机场安检 — 所有进入的东西都必须过扫描仪。使用 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 安全头

📖 下一步