docs: 补充 sso 模块遗漏的配置字段介绍

This commit is contained in:
click33 2025-05-10 17:32:42 +08:00
parent 7c35e6a859
commit a3c7568fc3
3 changed files with 96 additions and 35 deletions

View File

@ -259,7 +259,8 @@ Maven依赖一直无法加载成功[参考解决方案](https://sa-token.cc/d
├── sa-token-demo-sso2-client // [示例] Sa-Token 集成 SSO单点登录-模式二 应用端 (跨域、同Redis)
├── sa-token-demo-sso3-client // [示例] Sa-Token 集成 SSO单点登录-模式三 应用端 (跨域、跨Redis)
├── sa-token-demo-sso3-client-nosdk // [示例] Sa-Token 集成 SSO单点登录-模式三 应用端 (不使用sdk纯手动对接)
├── sa-token-demo-sso3-client-test2 // [示例] Sa-Token 集成 SSO单点登录-模式三 应用端 (待 client 标识)
├── sa-token-demo-sso3-client-resdk // [示例] Sa-Token 集成 SSO单点登录-模式三 应用端 (ReSdk 模式,重写部分方法对接任意技术栈)
├── sa-token-demo-sso3-client-anon // [示例] Sa-Token 集成 SSO单点登录-模式三 应用端 (匿名应用接入示例)
├── sa-token-demo-sso-server-h5 // [示例] Sa-Token 集成 SSO单点登录-Server认证中心 (前后端分离)
├── sa-token-demo-sso-client-h5 // [示例] Sa-Token 集成 SSO单点登录-client应用端 (前后端分离-原生h5 版本)
├── sa-token-demo-sso-server-vue2 // [示例] Sa-Token 集成 SSO单点登录-client应用端 (前后端分离-Vue2 版本)

View File

@ -283,59 +283,66 @@ sa-token.pi-key.is-record-index=true
### 3、单点登录相关配置
**SSO-Server 端配置:**
#### 3.1、SSO-Server 端配置
| 参数名称 | 类型 | 默认值 | 说明 |
| :-------- | :-------- | :-------- | :-------- |
| mode | String | | 指定当前系统集成 SSO 时使用的模式(约定型配置项,不对代码逻辑产生任何影响) |
| ticketTimeout | long | 300 | ticket 有效期 (单位: 秒) |
| allowUrl | String | * | 所有允许的授权回调地址多个用逗号隔开不在此列表中的URL将禁止下放ticket参考[SSO整合配置域名校验](/sso/sso-check-domain) |
| homeRoute | String | | 主页路由:在 /sso/auth 登录后不指定 redirect 参数的情况下默认跳转的路由 |
| isSlo | Boolean | true | 是否打开单点注销功能 |
| isHttp | Boolean | false | 是否打开模式三(此值为 true 时将使用 http 请求:校验 ticket 值、单点注销、获取 userinfo参考[详解](/use/config?id=配置项详解isHttp) |
| 参数名称 | 类型 | 默认值 | 说明 |
| :-------- | :-------- | :-------- | :-------- |
| mode | String | | 指定当前系统集成 SSO 时使用的模式(约定型配置项,不对代码逻辑产生任何影响) |
| ticketTimeout | long | 300 | ticket 有效期 (单位: 秒) |
| homeRoute | String | | 主页路由:在 /sso/auth 登录页不指定 redirect 参数时,默认跳转的地址 |
| isSlo | Boolean | true | 是否打开单点注销功能 |
| autoRenewTimeout | Bolean | false | 是否在每次下发 ticket 时,自动续期 token 的有效期(根据全局 timeout 值) |
| maxRegClient | int | 32 | 在 Access-Session 上记录 Client 信息的最高数量(-1=无限),超过此值将进行自动清退处理,先进先出 |
| isCheckSign | Boolean | true | 是否校验参数签名方便本地调试用的一个配置项生产环境请务必为true |
| maxRegClient | int | 32 | 在 Access-Session 上记录 Client 信息的最高数量(-1=无限),超过此值将进行自动清退处理,先进先出 |
| isCheckSign | Boolean | true | 是否校验参数签名方便本地调试用的一个配置项生产环境请务必为true |
| clients | Map | new LinkedHashMap<>(); | 以 Map<String, SaSsoClientModel> 格式配置 Client 列表 |
| allowAnonClient | Boolean | false | 是否允许匿名 Client 接入。参考: [匿名 client 接入](/sso/anon-client) |
| allowUrl | String | | 所有允许的授权回调地址,多个用逗号隔开 (不在此列表中的URL将禁止下放ticket) (匿名 client 使用),参考:[SSO整合配置域名校验](/sso/sso-check-domain) |
| secretKey | String | | API 调用签名秘钥 (全局默认 + 匿名 client 使用) |
配置示例:
<!---------------------------- tabs:start ---------------------------->
<!------------- tab:yaml 风格 ------------->
``` yaml
``` yml
# Sa-Token 配置
sa-token:
# SSO 单点登录服务端配置
sa-token:
# SSO-Server 配置
sso-server:
# Ticket有效期 (单位: 秒),默认五分钟
ticket-timeout: 300
# 所有允许的授权回调地址
allow-url: "*"
# 主页路由:在 /sso/auth 登录页不指定 redirect 参数时,默认跳转的地址
home-route: /home
```
<!------------- tab:properties 风格 ------------->
``` properties
# SSO-Server 配置
# Ticket有效期 (单位: 秒),默认五分钟
sa-token.sso-server.ticket-timeout=300
# 所有允许的授权回调地址
sa-token.sso-server.allow-url="*"
# 主页路由:在 /sso/auth 登录页不指定 redirect 参数时,默认跳转的地址
sa-token.sso-server.home-route=/home
```
<!---------------------------- tabs:end ---------------------------->
**SSO-Client 端配置:**
| 参数名称 | 类型 | 默认值 | 说明 |
| :-------- | :-------- | :-------- | :-------- |
| mode | String | | 指定当前系统集成 SSO 时使用的模式(约定型配置项,不对代码逻辑产生任何影响) |
| client | String | "" | 当前 Client 名称标识,用于和 ticket 码的互相锁定 |
| serverUrl | String | null | 配置 Server 端主机总地址,拼接在 `authUrl`、`checkTicketUrl`、`userinfoUrl`、`sloUrl` 属性前面,用以简化各种 url 配置,参考:[详解](/sso/sso-questions?id=问:模式三配置一堆-xxx-url-,有办法简化一下吗?) |
| authUrl | String | /sso/auth | 配置 Server 端单点登录授权地址 |
| checkTicketUrl| String | /sso/checkTicket | 配置 Server 端的 `ticket` 校验地址 |
| getDataUrl | String | /sso/getData | 配置 Server 端的 拉取数据 地址 |
| sloUrl | String | /sso/signout | 配置 Server 端单点注销地址 |
| currSsoLogin | String | null | 配置当前 Client 端的登录地址(为空时自动获取) |
| currSsoLogoutCall | String | null | 配置当前 Client 端的单点注销回调URL (为空时自动获取) |
| isSlo | Boolean | true | 是否打开单点注销功能 |
| isHttp | Boolean | false | 是否打开模式三(此值为 true 时将使用 http 请求:校验 ticket 值、单点注销、拉取数据getData参考[详解](/use/config?id=配置项详解isHttp) |
| isCheckSign | Boolean | true | 是否校验参数签名方便本地调试用的一个配置项生产环境请务必为true |
#### 3.2、SSO-Client 端配置
| 参数名称 | 类型 | 默认值 | 说明 |
| :-------- | :-------- | :-------- | :-------- |
| mode | String | | 指定当前系统集成 SSO 时使用的模式(约定型配置项,不对代码逻辑产生任何影响) |
| client | String | "" | 当前 Client 名称标识,用于和 ticket 码的互相锁定 |
| serverUrl | String | null | 配置 Server 端主机总地址,拼接在 `authUrl`、`checkTicketUrl`、`userinfoUrl`、`sloUrl` 属性前面,用以简化各种 url 配置,参考:[详解](/sso/sso-questions?id=问:模式三配置一堆-xxx-url-,有办法简化一下吗?) |
| authUrl | String | /sso/auth | 配置 Server 端单点登录授权地址 |
| signoutUrl | String | /sso/signout | 配置 Server 端单点注销地址 |
| pushUrl | String | /sso/pushS | 配置 Server 端的推送消息地址 |
| getDataUrl | String | /sso/getData | 配置 Server 端的 拉取数据 地址 |
| currSsoLogin | String | null | 配置当前 Client 端的登录地址(为空时自动获取) |
| currSsoLogoutCall | String | null | 配置当前 Client 端的单点注销回调URL (为空时自动获取) |
| isHttp | Boolean | false | 是否打开模式三(此值为 true 时将使用 http 请求:校验 ticket 值、单点注销、拉取数据getData参考[详解](/use/config?id=配置项详解isHttp) |
| isSlo | Boolean | true | 是否打开单点注销功能 |
| regLogoutCall | Boolean | false | 是否注册单点登录注销回调 (为 true 时,登录时附带单点登录回调地址,并且开放 /sso/logoutCall 地址) |
| secretKey | String | "" | API 调用签名秘钥 |
| isCheckSign | Boolean | true | 是否校验参数签名方便本地调试用的一个配置项生产环境请务必为true |
配置示例:
@ -362,6 +369,59 @@ sa-token.sso-client.is-slo=true
#### 3.3、SaSsoClientModel 配置
| 参数名称 | 类型 | 默认值 | 说明 |
| :-------- | :-------- | :-------- | :-------- |
| client | String | "" | 当前 Client 名称标识,用于和 ticket 码的互相锁定 |
| allowUrl | String | | 所有允许的授权回调地址,多个用逗号隔开 (不在此列表中的URL将禁止下放ticket) (匿名 client 使用),参考:[SSO整合配置域名校验](/sso/sso-check-domain) |
| isPush | Boolean | false | 是否接收推送消息 |
| isSlo | Boolean | true | 是否打开单点注销功能 |
| secretKey | String | "" | API 调用签名秘钥 |
| serverUrl | String | null | 配置 Server 端主机总地址,拼接在 `authUrl`、`checkTicketUrl`、`userinfoUrl`、`sloUrl` 属性前面,用以简化各种 url 配置,参考:[详解](/sso/sso-questions?id=问:模式三配置一堆-xxx-url-,有办法简化一下吗?) |
| pushUrl | String | /sso/pushC | 配置此 Client 端的推送消息地址 |
配置示例:
<!---------------------------- tabs:start ---------------------------->
<!------------- tab:yaml 风格 ------------->
``` yml
# Sa-Token 配置
sa-token:
# SSO-Server 配置
sso-server:
# 应用列表:配置接入的应用信息
clients:
# 应用 sso-client1
sso-client1:
client: sso-client1
allow-url: "*"
secret-key: SSO-C1-kQwIOrYvnXmSDkwEiFngrKidMcdrgKor
# 应用 sso-client2
sso-client2:
client: sso-client2
allow-url: "*"
secret-key: SSO-C2-kQwIOrYvnXmSDkwEiFngrKidMcdrgKor
```
<!------------- tab:properties 风格 ------------->
``` properties
# 应用列表:配置接入的应用信息
# 应用 sso-client1
sa-token.sso-server.clients.sso-client1.client=sso-client1
sa-token.sso-server.clients.sso-client1.allow-url=*
sa-token.sso-server.clients.sso-client1.secret-key=SSO-C1-kQwIOrYvnXmSDkwEiFngrKidMcdrgKor
# 应用 sso-client2
sa-token.sso-server.clients.sso-client2.client=sso-client2
sa-token.sso-server.clients.sso-client2.allow-url=*
sa-token.sso-server.clients.sso-client2.secret-key=SSO-C2-kQwIOrYvnXmSDkwEiFngrKidMcdrgKor
```
<!---------------------------- tabs:end ---------------------------->
### 4、OAuth2.0相关配置
| 参数名称 | 类型 | 默认值 | 说明 |

View File

@ -87,7 +87,7 @@ public class SaSsoServerConfig implements Serializable {
/**
* 所有允许的授权回调地址多个用逗号隔开 (不在此列表中的URL将禁止下放ticket) (匿名 client 使用)
*/
public String allowUrl = "*";
public String allowUrl = "";
/**
* API 调用签名秘钥 (全局默认 + 匿名 client 使用)