短信登录API


短信登录API

https://www.jianshu.com/p/cbdc479d3871

安全验收标准:

  • 短信验证码有效期2分钟

  • 验证码为6位纯数字

  • 每个手机号60秒内只能发送一次短信验证码,且这一规则的校验必须在服务器端执行

  • 同一个手机号在同一时间内可以有多个有效的短信验证码

1
如:第61秒的时候假如又请求发送一次验证码,两个验证码都有效
  • 保存于服务器端的验证码,至多可被使用3次(无论和请求中的验证码是否匹配),随后立即作废,以防止暴力攻击

  • 短信验证码不可直接记录到日志文件

  • (可选)发送短信验证码之前,先验证图形验证码是否正确

1
防止故意消耗短信发送配额,一旦配额被用完,用户就无法正常登录
  • (可选)集成第三方API做登录保护
1
主要原理是,服务器在处理登录请求的时候,先尽可能多的收集该请求的上下文信息,例如登录请求的来源IP地址,时间,手机号,User-Agent等等数据,并且把这些数据传递给第三方API,由他们进行一次分析判断,并把结果返回给服务器,告诉服务器当前请求者是可信用户还是可疑用户。