Package cn.dev33.satoken.config
Class SaTokenConfig
java.lang.Object
cn.dev33.satoken.config.SaTokenConfig
- All Implemented Interfaces:
Serializable
Sa-Token 配置类 Model
你可以通过yml、properties、java代码等形式配置本类参数,具体请查阅官方文档: https://sa-token.cc
- Since:
- 1.10.0
- Author:
- click33
- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionlonglongDeprecated.getBasic()Deprecated.int获取:是否打印彩色日志获取 是否为持久Cookie(临时Cookie在浏览器关闭时会自动删除,持久Cookie在重新打开后依然存在)getIsLog()获取 如果 token 已被冻结,是否保留其操作权 (是否允许此 token 调用注销API)
(此参数只在调用 StpUtil.获取 在注销 token 后,是否保留其对应的 Token-Sessionint获取 注销范围 (TOKEN=只注销当前 token 的会话,ACCOUNT=注销当前 token 指向的 loginId 其所有客户端会话)
(此参数只在调用 StpUtil.logout() 时有效)intint获取 溢出 maxLoginCount 的客户端,将以何种方式注销下线 (LOGOUT=注销下线, KICKOUT=踢人下线, REPLACED=顶人下线)获取 当 isConcurrent=false 时,顶人下线的范围 (CURR_DEVICE_TYPE=当前指定的设备类型端 ALL_DEVICE_TYPE=所有设备类型端)获取 在登录时,是否立即创建对应的 Token-Session (true=在登录时立即创建,false=在第一次调用 getTokenSession() 时创建)longlongsetActiveTimeout(long activeTimeout) setActivityTimeout(long activityTimeout) Deprecated.setAutoRenew(Boolean autoRenew) Deprecated.setCheckSameToken(Boolean checkSameToken) setCookie(SaCookieConfig cookie) setCookieAutoFillPrefix(Boolean cookieAutoFillPrefix) setCurrDomain(String currDomain) setDataRefreshPeriod(int dataRefreshPeriod) setDynamicActiveTimeout(Boolean dynamicActiveTimeout) setHttpBasic(String httpBasic) setHttpDigest(String httpDigest) setIsColorLog(Boolean isColorLog) 设置:是否打印彩色日志setIsConcurrent(Boolean isConcurrent) setIsLastingCookie(Boolean isLastingCookie) 设置 是否为持久Cookie(临时Cookie在浏览器关闭时会自动删除,持久Cookie在重新打开后依然存在)setIsLogoutKeepFreezeOps(Boolean isLogoutKeepFreezeOps) 设置 如果 token 已被冻结,是否保留其操作权 (是否允许此 token 调用注销API)
(此参数只在调用 StpUtil.setIsLogoutKeepTokenSession(Boolean isLogoutKeepTokenSession) 设置 在注销 token 后,是否保留其对应的 Token-SessionsetIsPrint(Boolean isPrint) setIsReadBody(Boolean isReadBody) setIsReadCookie(Boolean isReadCookie) setIsReadHeader(Boolean isReadHeader) setIsShare(Boolean isShare) setIsWriteHeader(Boolean isWriteHeader) setJwtSecretKey(String jwtSecretKey) setLogLevel(String logLevel) setLogLevelInt(int logLevelInt) setLogoutRange(SaLogoutRange logoutRange) 设置 注销范围 (TOKEN=只注销当前 token 的会话,ACCOUNT=注销当前 token 指向的 loginId 其所有客户端会话)
(此参数只在调用 StpUtil.logout() 时有效)setMaxLoginCount(int maxLoginCount) setMaxTryTimes(int maxTryTimes) setOverflowLogoutMode(SaLogoutMode overflowLogoutMode) 设置 溢出 maxLoginCount 的客户端,将以何种方式注销下线 (LOGOUT=注销下线, KICKOUT=踢人下线, REPLACED=顶人下线)setReplacedLoginExitMode(SaReplacedLoginExitMode replacedLoginExitMode) setReplacedRange(SaReplacedRange replacedRange) 设置 当 isConcurrent=false 时,顶人下线的范围 (CURR_DEVICE_TYPE=当前指定的设备类型端 ALL_DEVICE_TYPE=所有设备类型端)setRightNowCreateTokenSession(Boolean rightNowCreateTokenSession) 设置 在登录时,是否立即创建对应的 Token-Session (true=在登录时立即创建,false=在第一次调用 getTokenSession() 时创建)setSameTokenTimeout(long sameTokenTimeout) setTimeout(long timeout) setTokenName(String tokenName) setTokenPrefix(String tokenPrefix) setTokenSessionCheckLogin(Boolean tokenSessionCheckLogin) setTokenStyle(String tokenStyle) toString()
-
Field Details
-
cookie
Cookie配置对象
-
-
Constructor Details
-
SaTokenConfig
public SaTokenConfig()
-
-
Method Details
-
getTokenName
- Returns:
- token 名称 (同时也是: cookie 名称、提交 token 时参数的名称、存储 token 时的 key 前缀)
-
setTokenName
- Parameters:
tokenName- token 名称 (同时也是: cookie 名称、提交 token 时参数的名称、存储 token 时的 key 前缀)- Returns:
- 对象自身
-
getTimeout
public long getTimeout()- Returns:
- token 有效期(单位:秒) 默认30天,-1 代表永久有效
-
setTimeout
- Parameters:
timeout- token 有效期(单位:秒) 默认30天,-1 代表永久有效- Returns:
- 对象自身
-
getActiveTimeout
public long getActiveTimeout()- Returns:
- token 最低活跃频率(单位:秒),如果 token 超过此时间没有访问系统就会被冻结,默认-1 代表不限制,永不冻结 (例如可以设置为 1800 代表 30 分钟内无操作就冻结)
-
setActiveTimeout
- Parameters:
activeTimeout- token 最低活跃频率(单位:秒),如果 token 超过此时间没有访问系统就会被冻结,默认-1 代表不限制,永不冻结 (例如可以设置为 1800 代表 30 分钟内无操作就冻结)- Returns:
- 对象自身
-
getDynamicActiveTimeout
- Returns:
- 是否启用动态 activeTimeout 功能,如不需要请设置为 false,节省缓存请求次数
-
setDynamicActiveTimeout
- Parameters:
dynamicActiveTimeout- 是否启用动态 activeTimeout 功能,如不需要请设置为 false,节省缓存请求次数- Returns:
- 对象自身
-
getIsConcurrent
- Returns:
- 是否允许同一账号多地同时登录 (为 true 时允许一起登录, 为 false 时新登录挤掉旧登录)
-
setIsConcurrent
- Parameters:
isConcurrent- 是否允许同一账号多地同时登录 (为 true 时允许一起登录, 为 false 时新登录挤掉旧登录)- Returns:
- 对象自身
-
getMaxLoginCount
public int getMaxLoginCount()- Returns:
- 同一账号最大登录数量,-1代表不限 (只有在 isConcurrent=true, isShare=false 时此配置项才有意义)
-
setMaxLoginCount
- Parameters:
maxLoginCount- 同一账号最大登录数量,-1代表不限 (只有在 isConcurrent=true, isShare=false 时此配置项才有意义)- Returns:
- 对象自身
-
getMaxTryTimes
public int getMaxTryTimes()- Returns:
- 在每次创建 token 时的最高循环次数,用于保证 token 唯一性(-1=不循环尝试,直接使用)
-
setMaxTryTimes
- Parameters:
maxTryTimes- 在每次创建 token 时的最高循环次数,用于保证 token 唯一性(-1=不循环尝试,直接使用)- Returns:
- 对象自身
-
getIsReadBody
- Returns:
- 是否尝试从请求体里读取 token
-
setIsReadBody
- Parameters:
isReadBody- 是否尝试从请求体里读取 token- Returns:
- 对象自身
-
getIsReadHeader
- Returns:
- 是否尝试从 header 里读取 token
-
setIsReadHeader
- Parameters:
isReadHeader- 是否尝试从 header 里读取 token- Returns:
- 对象自身
-
getIsReadCookie
- Returns:
- 是否尝试从 cookie 里读取 token
-
setIsReadCookie
- Parameters:
isReadCookie- 是否尝试从 cookie 里读取 token- Returns:
- 对象自身
-
getIsLastingCookie
获取 是否为持久Cookie(临时Cookie在浏览器关闭时会自动删除,持久Cookie在重新打开后依然存在)- Returns:
- isLastingCookie /
-
setIsLastingCookie
设置 是否为持久Cookie(临时Cookie在浏览器关闭时会自动删除,持久Cookie在重新打开后依然存在)- Parameters:
isLastingCookie- /- Returns:
- 对象自身
-
getIsWriteHeader
- Returns:
- 是否在登录后将 token 写入到响应头
-
setIsWriteHeader
- Parameters:
isWriteHeader- 是否在登录后将 token 写入到响应头- Returns:
- 对象自身
-
getTokenStyle
- Returns:
- token 风格(默认可取值:uuid、simple-uuid、random-32、random-64、random-128、tik)
-
setTokenStyle
- Parameters:
tokenStyle- token 风格(默认可取值:uuid、simple-uuid、random-32、random-64、random-128、tik)- Returns:
- 对象自身
-
getDataRefreshPeriod
public int getDataRefreshPeriod()- Returns:
- 默认 SaTokenDao 实现类中,每次清理过期数据间隔的时间(单位: 秒),默认值30秒,设置为 -1 代表不启动定时清理
-
setDataRefreshPeriod
- Parameters:
dataRefreshPeriod- 默认 SaTokenDao 实现类中,每次清理过期数据间隔的时间(单位: 秒),默认值30秒,设置为 -1 代表不启动定时清理- Returns:
- 对象自身
-
getTokenSessionCheckLogin
- Returns:
- 获取 Token-Session 时是否必须登录(如果配置为true,会在每次获取 getTokenSession() 时校验当前是否登录)
-
setTokenSessionCheckLogin
- Parameters:
tokenSessionCheckLogin- 获取 Token-Session 时是否必须登录(如果配置为true,会在每次获取 getTokenSession() 时校验当前是否登录)- Returns:
- 对象自身
-
getAutoRenew
- Returns:
- 是否打开自动续签 activeTimeout (如果此值为 true, 框架会在每次直接或间接调用 getLoginId() 时进行一次过期检查与续签操作)
-
setAutoRenew
- Parameters:
autoRenew- 是否打开自动续签 activeTimeout (如果此值为 true, 框架会在每次直接或间接调用 getLoginId() 时进行一次过期检查与续签操作)- Returns:
- 对象自身
-
getTokenPrefix
- Returns:
- token 前缀, 前端提交 token 时应该填写的固定前缀,格式样例(satoken: Bearer xxxx-xxxx-xxxx-xxxx)
-
setTokenPrefix
- Parameters:
tokenPrefix- token 前缀, 前端提交 token 时应该填写的固定前缀,格式样例(satoken: Bearer xxxx-xxxx-xxxx-xxxx)- Returns:
- 对象自身
-
getCookieAutoFillPrefix
- Returns:
- cookie 模式是否自动填充 token 前缀
-
setCookieAutoFillPrefix
- Parameters:
cookieAutoFillPrefix- cookie 模式是否自动填充 token 前缀- Returns:
- 对象自身
-
getIsPrint
- Returns:
- 是否在初始化配置时在控制台打印版本字符画
-
setIsPrint
- Parameters:
isPrint- 是否在初始化配置时在控制台打印版本字符画- Returns:
- 对象自身
-
getIsLog
- Returns:
- 是否打印操作日志
-
setIsLog
- Parameters:
isLog- 是否打印操作日志- Returns:
- 对象自身
-
getLogLevel
- Returns:
- 日志等级(trace、debug、info、warn、error、fatal),此值与 logLevelInt 联动
-
setLogLevel
- Parameters:
logLevel- 日志等级(trace、debug、info、warn、error、fatal),此值与 logLevelInt 联动- Returns:
- 对象自身
-
getLogLevelInt
public int getLogLevelInt()- Returns:
- 日志等级 int 值(1=trace、2=debug、3=info、4=warn、5=error、6=fatal),此值与 logLevel 联动
-
setLogLevelInt
- Parameters:
logLevelInt- 日志等级 int 值(1=trace、2=debug、3=info、4=warn、5=error、6=fatal),此值与 logLevel 联动- Returns:
- 对象自身
-
getIsColorLog
获取:是否打印彩色日志- Returns:
- isColorLog 是否打印彩色日志
-
setIsColorLog
设置:是否打印彩色日志- Parameters:
isColorLog- 是否打印彩色日志- Returns:
- 对象自身
-
getJwtSecretKey
- Returns:
- jwt秘钥(只有集成 jwt 相关模块时此参数才会生效)
-
setJwtSecretKey
- Parameters:
jwtSecretKey- jwt秘钥(只有集成 jwt 相关模块时此参数才会生效)- Returns:
- 对象自身
-
getHttpBasic
- Returns:
- Http Basic 认证的默认账号和密码,冒号隔开,例如:sa:123456
-
setHttpBasic
- Parameters:
httpBasic- Http Basic 认证的默认账号和密码,冒号隔开,例如:sa:123456- Returns:
- 对象自身
-
getHttpDigest
- Returns:
- Http Digest 认证的默认账号和密码,冒号隔开,例如:sa:123456
-
setHttpDigest
- Parameters:
httpDigest- Http Digest 认证的默认账号和密码,冒号隔开,例如:sa:123456- Returns:
- 对象自身
-
getCurrDomain
- Returns:
- 配置当前项目的网络访问地址
-
setCurrDomain
- Parameters:
currDomain- 配置当前项目的网络访问地址- Returns:
- 对象自身
-
getSameTokenTimeout
public long getSameTokenTimeout()- Returns:
- Same-Token 的有效期 (单位: 秒)
-
setSameTokenTimeout
- Parameters:
sameTokenTimeout- Same-Token 的有效期 (单位: 秒)- Returns:
- 对象自身
-
getCheckSameToken
- Returns:
- 是否校验Same-Token(部分rpc插件有效)
-
setCheckSameToken
- Parameters:
checkSameToken- 是否校验Same-Token(部分rpc插件有效)- Returns:
- 对象自身
-
getReplacedLoginExitMode
- Returns:
- 在 isConcurrent=false 时,决定新旧设备谁将放弃会话 (OLD_DEVICE=旧设备下线,新设备登录成功, NEW_DEVICE=新设备登录失败,旧设备维持在线)
-
setReplacedLoginExitMode
- Parameters:
replacedLoginExitMode- 在 isConcurrent=false 时,决定新旧设备谁将放弃会话 (OLD_DEVICE=旧设备下线,新设备登录成功, NEW_DEVICE=新设备登录失败,旧设备维持在线)- Returns:
- 对象自身
-
getReplacedRange
获取 当 isConcurrent=false 时,顶人下线的范围 (CURR_DEVICE_TYPE=当前指定的设备类型端 ALL_DEVICE_TYPE=所有设备类型端)- Returns:
- /
-
setReplacedRange
设置 当 isConcurrent=false 时,顶人下线的范围 (CURR_DEVICE_TYPE=当前指定的设备类型端 ALL_DEVICE_TYPE=所有设备类型端)- Parameters:
replacedRange- /- Returns:
- 对象自身
-
getOverflowLogoutMode
获取 溢出 maxLoginCount 的客户端,将以何种方式注销下线 (LOGOUT=注销下线, KICKOUT=踢人下线, REPLACED=顶人下线)- Returns:
- /
-
setOverflowLogoutMode
设置 溢出 maxLoginCount 的客户端,将以何种方式注销下线 (LOGOUT=注销下线, KICKOUT=踢人下线, REPLACED=顶人下线)- Parameters:
overflowLogoutMode- /- Returns:
- 对象自身
-
getLogoutRange
获取 注销范围 (TOKEN=只注销当前 token 的会话,ACCOUNT=注销当前 token 指向的 loginId 其所有客户端会话)
(此参数只在调用 StpUtil.logout() 时有效)- Returns:
- /
-
setLogoutRange
设置 注销范围 (TOKEN=只注销当前 token 的会话,ACCOUNT=注销当前 token 指向的 loginId 其所有客户端会话)
(此参数只在调用 StpUtil.logout() 时有效)- Parameters:
logoutRange- /- Returns:
- 对象自身
-
getIsLogoutKeepFreezeOps
获取 如果 token 已被冻结,是否保留其操作权 (是否允许此 token 调用注销API)
(此参数只在调用 StpUtil.[logoutkickoutreplaced]ByTokenValue("token") 时有效)- Returns:
- isLogoutKeepFreezeOps /
-
setIsLogoutKeepFreezeOps
设置 如果 token 已被冻结,是否保留其操作权 (是否允许此 token 调用注销API)
(此参数只在调用 StpUtil.[logoutkickoutreplaced]ByTokenValue("token") 时有效)- Parameters:
isLogoutKeepFreezeOps- /- Returns:
- 对象自身
-
getIsLogoutKeepTokenSession
获取 在注销 token 后,是否保留其对应的 Token-Session- Returns:
- isLogoutKeepTokenSession /
-
setIsLogoutKeepTokenSession
设置 在注销 token 后,是否保留其对应的 Token-Session- Parameters:
isLogoutKeepTokenSession- /- Returns:
- 对象自身
-
getRightNowCreateTokenSession
获取 在登录时,是否立即创建对应的 Token-Session (true=在登录时立即创建,false=在第一次调用 getTokenSession() 时创建)- Returns:
- /
-
setRightNowCreateTokenSession
设置 在登录时,是否立即创建对应的 Token-Session (true=在登录时立即创建,false=在第一次调用 getTokenSession() 时创建)- Parameters:
rightNowCreateTokenSession- /- Returns:
- 对象自身
-
getCookie
- Returns:
- Cookie 全局配置对象
-
setCookie
- Parameters:
cookie- Cookie 全局配置对象- Returns:
- 对象自身
-
toString
-
getActivityTimeout
Deprecated.请更改为 getActiveTimeout()
- Returns:
- token 最低活跃频率(单位:秒),如果 token 超过此时间没有访问系统就会被冻结,默认-1 代表不限制,永不冻结 (例如可以设置为 1800 代表 30 分钟内无操作就冻结)
-
setActivityTimeout
Deprecated.请更改为 setActiveTimeout()
- Parameters:
activityTimeout- token 最低活跃频率(单位:秒),如果 token 超过此时间没有访问系统就会被冻结,默认-1 代表不限制,永不冻结 (例如可以设置为 1800 代表 30 分钟内无操作就冻结)- Returns:
- 对象自身
-
getBasic
Deprecated.请更改为 getHttpBasic()
- Returns:
- Http Basic 认证的默认账号和密码
-
setBasic
Deprecated.请更改为 setHttpBasic()
- Parameters:
basic- Http Basic 认证的默认账号和密码- Returns:
- 对象自身
-