首页  

Sa-token 之 SaManager     所属分类 sa-token 浏览量 82
sa-token-core-1.38.0.jar

SaManager 负责 Sa-token 所有全局组件管理
可通过此类快速获取、写入各种全局组件对象



// 全局配置对象
public volatile static SaTokenConfig config;	

// 持久化组件  可将数据存储至不同位置,如:内存Map、Redis 等
private volatile static SaTokenDao saTokenDao;

// 权限数据源组件   使用权限校验 API ,必须实现此接口, 框架默认不对数据进行缓存
private volatile static StpInterface stpInterface;

// 一级上下文 SaTokenContextContext  上下文处理器封装了当前应用环境的底层操作,是 Sa-Token 对接不同 web 框架的关键
private volatile static SaTokenContext saTokenContext;

// 二级上下文 SaTokenSecondContext 
private volatile static SaTokenSecondContext saTokenSecondContext;
// 临时 token 认证模块  ,有效期很短的一种token,一般用于一次性接口防盗用、短时间资源访问等业务场景
private volatile static SaTempInterface saTemp;

// JSON 转换器
private volatile static SaJsonTemplate saJsonTemplate;
// API 参数签名  API 参数签名算法,在跨系统接口调用时防参数篡改、防重放攻击。
private volatile static SaSignTemplate saSignTemplate;

// Same-Token 同源系统认证模块  解决同源系统互相调用时的身份认证校验, 例如:微服务网关请求转发鉴权、微服务RPC调用鉴权
private volatile static SaSameTemplate saSameTemplate;

// 日志输出器
public volatile static SaLog log = new SaLogForConsole();
// StpLogic 集合, 记录框架所有成功初始化的 StpLogic
public static Map< String, StpLogic> stpLogicMap = new LinkedHashMap< >();
	


cn.dev33.satoken.stp.StpLogic
Sa-Token 权限认证,逻辑实现类
Sa-Token 的核心,框架大多数功能均由此类提供具体逻辑实现。



SaSignTemplate
API 参数签名算法,在跨系统接口调用时防参数篡改、防重放攻击。
以 SSO 数据拉取为例,流程大致如下: 
1. 以 md5( loginId={账号id}8nonce={随机字符串}8timestamp={13位时间戳}8key={secretkey秘钥} ) 生成签名 sign 
2. 将 sign 作为参数,拼接到请求地址后面,如:http://xxx.com?loginId=100018nonce=xxx8timestamp=xxx8sign=xxx
3. 服务端接收到请求后,以同样的算法生成一次 sign 
4. 对比两次 sign 是否一致,一致则通过,否则拒绝

上一篇     下一篇
Sa-Token简介

sa-token demo test postman cookie 设置

sa-token SaTokenDao 设置

SSO 相关术语

基于 CAS 的 OSS 流程说明

每日一曲合集