什么是 身份验证
验证用户或系统身份
身份验证 (Authentication)
身份验证 — 在授予资源访问权限之前验证用户或系统身份的过程。
身份验证因素
| 因素 | 描述 | 示例 | |------|------|------| | 知识 | 用户知道什么 | 密码、PIN | | 拥有物 | 用户拥有什么 | 手机、令牌 | | 生物特征 | 用户是谁 | 指纹、面部 |
身份验证方法
- 密码 — 基本方法
- MFA(多因素) — 多个因素
- SSO(单点登录) — 一次登录多个服务
- OAuth / OIDC — 委托授权
- 生物识别 — 指纹、面部识别
- 无密码 — 无密码(WebAuthn)
身份验证 vs 授权
| 身份验证 | 授权 | |----------|------| | 你是谁? | 你被允许做什么? | | 身份验证 | 权限检查 | | 第一步 | 第二步 |
现代标准
- JWT — API令牌
- SAML — 企业SSO
- OAuth 2.0 — 应用授权
- FIDO2/WebAuthn — 无密码
威胁和保护
- 暴力破解 → 速率限制
- 钓鱼 → MFA
- 会话劫持 → 安全cookie
- 凭证填充 → 泄露检测