后端
身份验证Authentication
你可能会问
身份验证到底是什么?系统怎么知道「你就是你」?
简单来说
确认访问者是谁的过程,常见方式包括密码、验证码和第三方登录。
你说你是
密码••••••••
凭证在手,不用回回输密码
01 · 先这样理解
把抽象概念放进真实场景
确认访问者是谁的过程,常见方式包括密码、验证码和第三方登录。
换个角度想身份验证像小区门禁:第一次来要登记(注册),之后刷卡进门(登录拿凭证),卡丢了挂失补办(重置密码)。门禁认卡不认脸——凭证在谁手里,谁就是「你」。
02 · 点击演示
登录之后,系统凭什么一直认得你?
突出显示的部分,就是当前概念在整条流程中负责的位置。
- 你说你是
密码•••••••• 比对密码哈希 ✓
核验通过,可以发证了
- token · abc12…7 天有效
- 200欢迎回来,user_42凭证在手,不用再输密码401凭证过期,请重新登录好的做法:快到期时静默续期,别让用户被踢
1 / 4
Claim · 你说你是谁
03 · 放进真实任务
什么时候会遇到它
保护接口
没带有效凭证的请求,在中间件那关就被拦下。
保持登录
凭证放在浏览器存储里,关掉重开还认得你。
第三方登录
「用 Google 登录」= 请 Google 替你核验,回来照样发凭证。
04 · 想一想
用一个问题检查理解
用户反馈「登着登着突然被踢出去了」。最可能的原因是什么?
查看答案
凭证过期了。门禁卡都有有效期,到期就得重新核验——想少打扰用户,可以在快到期时静默续期(刷新凭证)。
最容易踩的坑
「你是谁」(验证)和「你能干什么」(授权)是两件事:登录了不等于什么都能改。别把「已登录」当成「有权限」。