用户登录

179 阅读1分钟

登陆方式

1. 填写用户名和密码(安全度最低)

用户名是账号的唯一凭证, 自动化程序可以自行创建虚假程序, 即使有验证码, 只要人工智能训练也可以破解

image.png

2. 邮箱/手机号作为账户名, 发验证码

image.png

image.png

3. 第三方登录

image.png

4.小程序的获取手机号接口做第三方登录

登录注册的逻辑

image.png

鉴权类型

Session篇

image.png

对数据库压力大, redis这种内存数据库也不行

session存到前端的cookie中, 容易被跨站请求伪造, 请看图解CSRF攻击

image.png

jwt token

根据用户数据和密钥进行一个签名, 生成一段加密数据返回给前端, 存到localStorge, 前端每次请求时带上这段加密数据, 后端验证请求确实是由真实用户发来的, 那么就通过. 用户的id等信息就在这段加密数据中, 不用再查询一次数据库

image.png

实践

image.png