Skip to content

2022471674/tp-authen

Repository files navigation

一·核心架构设计

autho:28.7/2022471674 name tp8-authenticatio/login-register

环境要求:

  • PHP >= 8.1 (开启 OpenSSL 扩展)
  • MySQL >= 5.7 (需启用 InnoDB)
  • Redis >= 6.0
  • Composer 包管理工具

1.双数据库协同

MySQL:存储用户基础信息(用户名、加密密码、设备指纹哈希值)和权限分级数据,采用字段级加密存储 Redis:缓存会话令牌(Token)、临时验证码、设备指纹校验状态,设置自动过期策略(建议会话令牌有效期2小时) 优化点:通过Redis管道技术批量处理高频访问数据,降低MySQL查询压力

2.国密算法继承

通过sm2非对称加密算法,保护数据库安全

3.数据清洗

采用前端加后端双重验证的形式,对用户数据进行质疑

4.访问控制

通过浏览器数据,生成用户指纹,通过是否常通过允许的设备登录,分发相应权限

5.相应结果

记录详细的返回结果,告知用户错误点,获得更好的用户体验

6.后期拓展

通过ip 限制用户次数,以及对错误的处理形式,cache,cookie的进一步使用,增加记住我的功能,优化日志记录形式,后期拓展ai分析,形成统计数据,实现用户的进一步管理

二· 路线图

  • 集成 WebAuthn 无密码认证
  • 支持 OAuth 2.0 协议
  • 登录日志可视化分析面板

About

A login system running on Tinkphp8

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors