首页 > 项目 > 当前页面

Spring security基于token单点登录

2024-10-18 NEW个对象

这是很早之前做的,今天面试有问到,时间长了也忘的差不多了,今天就总结一下。

1、登陆功能

提供一个登陆接口,检验用户名和密码,然后返回一个token。

并将token存储到数据库表里system_access_token。

token:uuid

system_access_token:存储token信息、用户id。


2、token检验

之后的所有请求都会携带token,提供一个filter。

filter:从请求头里获取到token,进行token检验,如果检验通过,则token获取到用户信息,将用户信息存储到SecurityContextHolder



3、权限认证

基于注解@PreAuthorize

通过AOP的拦截的方式,从SecurityContextHolder获取到用户信息,进行权限判断。


相关文章

  • 有哪些数据安全的方案?

    1、锁 2、单线程,比如:redis 3、不共享变量,比如:ThreadLocal 4、原子操作,比如:AtomicInteger 5、不可变模式,比如:一旦创建不能修改,修改就会再次创建一个新的对象,String 6、读写分离,写时复制,比如:CopyOnWriteArrayList

    NEW个对象 2025-02-11

  • 支付中心-业务场景描述

    公司的业务模块分为:订单模块、钱包模块等,后续还会加入其它的模块。 订单模块和钱包模块都需要有支付功能,比如:支付宝和微信支付。 支付宝支付:二维码支付、PC支付、条码支付等等。 微信支付:微信小程序支付、付款码支付、APP支付等等。

    NEW个对象 2024-10-17

  • 数据库表设计3NF?

    数据库表设计3NF?

    NEW个对象 2026-06-28

NEW个对象 NEW个对象
JAVA是世界上最好的语言