用户和api操作的限制

# 用户和api操作的限制

# 用户身份

IP 设备序号 用户id 用户手机设备cid 可伪造 不用于识别用户

# 硬件设备

# 根据ip限制

单ip 单位分钟只可以查询 N次数据库 单i 单位时间内 只可以查询N次 redis <> 包括上传数据

# 根据mac限制

即便是有效的mac 单位时间内只可以操作N次redis

# 用户app

# 根据IP

单ip 单位时间内 只可以查询N次数据库检查用户密码 单ip 单位时间内 只可以查询N次redis检查用户密码

# 根据用户id

单用户 单位时间内只可以查N次redis 单用户 单位时间内只可以查N次redis

# 根据设备和app区分

# 设备上报日志 获取返回值

查询redis 根据ip 限制 1分钟内400次 limit.dev.redis.ip.xxx.m. 根据mac 限制 1分钟内40次 limit.dev.redis.mac.xxx.m. 查询数据库 根据ip限制 1分钟内60次 limit.dev.mysql.ip.xxx.m. 根据mac 限制 1分钟内1次 limit.dev.mysql.mac.xxx.m.

# APP = > 登录 和 用id token检查登录

查询redis 根据ip 限制 1分钟内120次 limit.app.login.redis.ip.xxx.m. 查询数据库 根据ip限制 1分钟内100次 limit.app.login.mysql.ip.xxx.m.

# APP => 获取手机验证码

手机号要先存在
查询数据库 根据ip 限制 1分钟内120次 limit.app.sms.mysql.ip.xxx.m. 发送SMS
1分钟内1次 limit.app.sms.phone.xxx.m. 1天3次 limit.app.sms.phone.xxx.day.

# App => 获取设备日志

根据IP 查询用户日志 1分钟限制600次 limit.app.getlog.redis.ip.xxx.m. 1小时限制3600次 limit.app.getlog.redis.ip.xxx.hour. 根据用户id 1分钟限制600次 limit.app.getlog.redis.userid.xxx.m.

# App => 常规操作

根据IP 查询操作redis
1分钟600次 limit.other.redis.ip.xxx.m. 1小时3600次 limit.other.redis.ip.xxx.hour. 查询操作数据库 1分钟600次 limit.other.mysql.ip.xxx.m. 1小时3600次 limit.other.mysql.ip.xxx.m.

Licensed under CC BY-NC-SA 4.0
最后更新于 2022-09-07 19:56 UTC
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计