当前位置: 首页 > news >正文

云上办公项目总结

云尚办公系统是一套自动办公系统,系统主要包含:管理端和员工端

管理端包含:权限管理、审批管理、公众号菜单管理

员工端采用微信公众号操作,包含:办公审批、微信授权登录、消息推送等功能

项目服务器端架构:SpringBoot + MyBatisPlus + SpringSecurity + Redis + Activiti+ MySQL

前端架构:vue-admin-template + Node.js + Npm + Vue + ElementUI + Axios

核心技术

基础框架:SPRINGBOOT
数据缓存:Redis
数据库:MySQL
权限控制:SpringSecurity
工作流引擎:Activiti
前端技术:vue-admin-template + Node.js + Npm + Vue + ElementUI + Axios
微信公众号:公众号菜单 + 微信授权登录 + 消息推送

技术点:

1.MyBatis-Plus

2.权限

页面权限(菜单级)、操作权限(按钮级)、数据权限

3.JWT

JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源。比如用在用户登录上。

一个JWT由三个部分组成:JWT头、有效载荷、签名哈希 最后由这三者组合进行base64url编码得到JWT

4.用户登录

通过用户名查询用户信息。
若用户不存在,则抛出异常。
注释掉的代码原本用于密码验证。
检查用户状态,若被禁用则抛出异常。
使用JWT生成token并返回结果。

5.获取用户菜单权限

5.Spring Security

认证”和“授权

Spring Security进行认证和鉴权的时候,就是利用的一系列的Filter来进行拦截的。

一个请求想要访问到API就会从左到右负责认证,负责异常处理,负责授权的过滤器

用户认证

Authentication,它存储了认证信息,代表当前登录用户。

我们需要通过 SecurityContext 来获取AuthenticationSecurityContext就是我们的上下文对象!这个上下文对象则是交由 SecurityContextHolder 进行管理,你可以在程序任何地方使用它:

Authentication authentication = SecurityContextHolder.getContext().getAuthentication();

SecurityContextHolder原理非常简单,就是使用ThreadLocal来保证一个线程中传递同一个对象!


http://www.mrgr.cn/news/30373.html

相关文章:

  • Unity3D ASTC贴图压缩格式详解
  • 【教程】第五章:标签页 区块 —— 丰富视图,精彩纷呈
  • 从零开始使用YOLOv11——Yolo检测detect数据集自建格式转换为模型训练格式:20w+图片1w+类别代码测试成功
  • [Linux] 共享内存
  • STM32WB55RG开发(2)----STM32CubeProgrammer烧录
  • CCF ChinaOSC |「开源科学计算与系统建模openSCS专题分论坛」11月9日与您相约深圳
  • 【树莓派】利用socket改善树莓派3B运行YOLO运力不够
  • 宠物空气净化器真的有必要买吗?哪款真的能吸毛?
  • C++中string类的使用
  • HarmonyOS开发实战(5.0)实现二楼上划进入首页效果详解
  • Haproxy搭建Web集群
  • Python 中的异步编程:从入门到实践
  • 打破转化阻碍:Xinstall实现全渠道一键拉起
  • C++ —— 关于vector
  • vue2.0+ts注册全局函数和几个递归查找
  • vue h5 蓝牙连接 webBluetooth API
  • 对 JavaScript 原型的理解
  • ELK企业级日志分析系统
  • 从工厂打螺丝到数据库专家(上)
  • 把设计模式用起来!(4) 用不好模式?之原理不明
  • FortiGate 透明模式下配置注意事项和故障排错技巧
  • 维钧团队与广东能源集团携手共创未来
  • 华为、思科、新华三,三大厂商认证到底选择哪一个?
  • 力扣438 找到字符串中所有字母异位词 Java版本
  • 设计模式之外观设计模式
  • 教师专属:高效查询学生考试成绩系统 - 立即体验吧