一、用户系统

目录

1、数据表设计

2、用户认证

3、用户的信息管理


1、数据表设计

一般设计用户表会设计很多字段,虽然有些不会用到,但还是要设计进去

(1)基础认证字段

|----------|----------|-------|-------|--------|-------|----------|---|
| username | password | email | phone | avatar | roles | isActive | |
| 用户名 | 密码 | 邮件 | 电话 | 头像 | 角色 | 账号激活 | |

(2)用户个人信息

|----------|--------|------------|--------|-----------|
| realName | gender | isVerified | idCard | birthDate |
| 真实姓名 | 性别 | 是否实名认证 | 身份证号 | 出生年月日 |

(3)vip相关

|-------|---------------|
| isVip | vipExpireTime |
| 是否会员 | 会员过期时间 |

(4)配额相关(业务部分)

假如是个做ppt的,那就会有:虚拟币余额,免费剩余次数等

(5)用户行为追踪

|---------------|-------------------|
| lastLoginTime | lastLoginLocation |
| 最近登录时间 | 最近登录地点 |

(6)微信相关

|----------|-----------|------------|----------------|--------------|---------------|-----------------|
| wechatid | openid | unionid | wechatNickname | wechatAvatar | isWechatBound | wechatBoundTime |
| 最初微信标识 | 唯一标识(小程序) | 唯一标识(开放平台) | 微信昵称 | 微信头像 | 是否绑定微信 | 微信绑定时间 |

2、用户认证

(1)JWT

1.用户输入账号密码post请求,

2.后端根据账号密码查数据库将用户基本信息拿出(没有密码)

3.后端根据基本信息+jwt密钥+jwt算法生成带签token,就是类似: token类型.基本信息.验签字符串 这样的一长串字符串

4.前端post的结果会得到这个token存到本地,后续功能必须携带

5.前端下次请求携带token

6.后端处理请求前先处理这个token,用第一次同样的方式,token上的基本信息+后端jwt密钥+jwt算法,看生出来的验签字符和第一次一样不,不一样说明被改过,防止黑客将自己的普通账号改成管理员。然后后续的请求就是正常请求了,就用用户基本的信息查询数据

总结:就是之前的是用密码,来一次验证一次密码

JWT就是只验证一次密码,但是会用规则生成一个token后续就是验证token

缺点就是可能黑客会截取你本地存到token,然后用你的身份发请求,但是它好在不会修改用户身份,而且现在用https,一般也不好获取本地token

3、用户的信息管理

就是用户的个人信息的修改啊,获取,删除啥的

还有用户在该系统上的业务功能的数据,比如假如是做ppt的,那就有你用于业务的虚拟币啊,使用次数啊啥的

具体的做ppt的功能是能外一个模块,但是数据是个人数据

相关推荐
To_OC7 小时前
从一行入口代码啃透 NestJS:工厂模式、装饰器和依赖注入是怎么串起来的
后端·设计模式·nestjs
Python私教7 小时前
多个项目怎么安全合并?先适配,再切换
后端·python·架构
Python私教8 小时前
从表格到管理系统:别先写页面,先补齐权限、流程和审计
数据库·后端·架构
北斗落凡尘9 小时前
LangGraph 入门实战(12)--使用MCP
后端·python·langchain
SomeB1oody10 小时前
【RustyML入门】6.0. 数学工具
开发语言·后端·机器学习·rust·教程
IT_陈寒11 小时前
为什么我的JavaScript闭包总是漏掉那个变量?
前端·人工智能·后端
用户83562907805112 小时前
如何使用 Python 将 PowerPoint 转换为 PDF 文档
后端·python
倔强的石头_12 小时前
从 8 行报错到一条故障链:我用蓝耘 MaaS 做了一个 AI 日志分析助手
后端
敲个大西瓜12 小时前
Spring Could Alibaba 核心面试题
java·后端·spring
用户83562907805112 小时前
如何使用 Python 为 PowerPoint 幻灯片添加切换效果
后端·python