文档优化

This commit is contained in:
click33 2022-04-23 17:08:09 +08:00
parent b62e2dae24
commit 2c39fc7209
4 changed files with 15 additions and 8 deletions

View File

@ -166,8 +166,15 @@ public class SaSsoTemplate {
back = (back == null ? "" : back);
back = SaFoxUtil.encodeUrl(back);
// 拼接最终地址格式示例serverAuthUrl = http://xxx.com?redirectUrl=xxx.com?back=xxx.com
clientLoginUrl = SaFoxUtil.joinParam(clientLoginUrl, ParamName.back, back);
// 开始拼接 sso 统一认证地址形如serverAuthUrl = http://xxx.com?redirectUrl=xxx.com?back=xxx.com
/*
* 部分 Servlet 版本 request.getRequestURL() 返回的 url 带有 query 参数形如http://domain.com?id=1
* 如果不加判断会造成最终生成的 serverAuthUrl 带有双 back 参数 这个 if 判断正是为了解决此问题
*/
if(clientLoginUrl.indexOf(ParamName.back + "=" + back) == -1) {
clientLoginUrl = SaFoxUtil.joinParam(clientLoginUrl, ParamName.back, back);
}
String serverAuthUrl = SaFoxUtil.joinParam(serverUrl, ParamName.redirect, clientLoginUrl);
// 返回

View File

@ -29,7 +29,7 @@
- [会话治理](/up/search-session)
- [全局侦听器](/up/global-listener)
- [全局过滤器](/up/global-filter)
- [多账认证](/up/many-account)
- [多账认证](/up/many-account)
<!-- - [微服务](/senior/dcs) -->
- **单点登录**

View File

@ -50,7 +50,7 @@ Mix 模式:混入部分逻辑
``` java
@Configuration
public class SaTokenConfigure {
// Sa-Token 整合 jwt (Style模式)
// Sa-Token 整合 jwt (Mix模式)
@Bean
public StpLogic getStpLogicJwt() {
return new StpLogicJwtForMix();
@ -63,7 +63,7 @@ Stateless 模式:服务器完全无状态
``` java
@Configuration
public class SaTokenConfigure {
// Sa-Token 整合 jwt (Style模式)
// Sa-Token 整合 jwt (Stateless模式)
@Bean
public StpLogic getStpLogicJwt() {
return new StpLogicJwtForStateless();

View File

@ -1,11 +1,11 @@
# 多账认证
# 多账认证
---
### 0、需求场景
有的时候,我们会在一个项目中设计两套账号体系,比如一个电商系统的 `user表``admin表`
在这种场景下,如果两套账号我们都使用 `StpUtil` 类的API进行登录鉴权那么势必会发生逻辑冲突
在Sa-Token中这个问题的模型叫做多账体系认证
在Sa-Token中这个问题的模型叫做多账体系认证
要解决这个问题,我们必须有一个合理的机制将这两套账号的授权给区分开,让它们互不干扰才行
@ -55,7 +55,7 @@ public class StpUserUtil {
> 成品样例参考:[码云 StpUserUtil.java](https://gitee.com/dromara/sa-token/blob/dev/sa-token-demo/sa-token-demo-springboot/src/main/java/com/pj/satoken/at/StpUserUtil.java)
### 4、在多账模式下使用注解鉴权
### 4、在多账模式下使用注解鉴权
框架默认的注解鉴权 如`@SaCheckLogin` 只针对原生`StpUtil`进行鉴权
例如,我们在一个方法上加上`@SaCheckLogin`注解,这个注解只会放行通过`StpUtil.login(id)`进行登录的会话,