用户认证思路及做法

用户认证的简单思路

基础要求

1.合法性,即 是他自己登录的账号(做法:token + https ,token验证可以确定操作源是该用户本人,https可以在很大程度上保证token在传输的过程中不被截获篡改,是目前较为安全的一种做法)
2.唯一性,即 不能对同一个账号重复登录(做法:服务器保存生成的token后再将其发送给用户,每次用户请求数据时,先验证token是否相同,然后再验证token是否有效。相同,则说明用户唯一,有效则说明用户合法。注意:就算传入token和数据库中的token相同,也不能说明用户合法,因为数据库中的token可能已经过期无效了,如果token过期就让用户重新登录,然后再次签发和保存token。ps:token必须具有时效性,否则用户数据被破解只是时间问题)

进阶要求

1.后端设置 更换新设备需要短信或手机验证(做法:保存UserAgent到数据库,全局对比用户当前UserAgent和数据库保存的UserAgent,如有不同,就要求用户验证。缺点:UserAgent只能大致作为参考,不能作为更换设备的依据,更不能用来针对爬虫攻击)
2.后端设置 登录频率和次数限制(记录用户上次登录时间,连续登录5次后需要等待10分钟,且每天最多登录10次,token过期时间可设置为1天)
3.前端设置 密码输入错误次数限制,连续输入3次错误弹出验证码.
4.后端设置 密码修改需要短信或邮箱验证
5.根据url、Accept_language、IP 判断是否异地登陆,然后要求短信或邮箱验证(此方法可靠性一般)

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

什么都干的派森

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值