类 StpLogic
Sa-Token 的核心,框架大多数功能均由此类提供具体逻辑实现。
- 从以下版本开始:
- 1.10.0
- 作者:
- click33
-
字段概要
字段 -
构造器概要
构造器 -
方法概要
修饰符和类型方法说明void_logout(Object loginId, SaLogoutParameter logoutParameter) [work] 会话注销,根据账号id 和 注销参数void_logoutByTokenValue(String tokenValue, SaLogoutParameter logoutParameter) [work] 注销下线,根据指定 token 、注销参数void_removeTerminal(SaSession session, SaTerminalInfo terminal, SaLogoutParameter logoutParameter) 在 Account-Session 上移除 Terminal 信息 (内部方法,仅为减少重复代码,外部调用意义不大)void检查当前 token 是否已被冻结,如果是则抛出异常voidcheckActiveTimeout(String tokenValue) 检查指定 token 是否已被冻结,如果是则抛出异常voidcheckDisable(Object loginId) 校验:指定账号是否已被封禁,如果被封禁则抛出异常voidcheckDisable(Object loginId, String... services) 校验:指定账号 指定服务 是否已被封禁,如果被封禁则抛出异常voidcheckDisableLevel(Object loginId, int level) 校验:指定账号是否已被封禁到指定等级(如果已经达到,则抛出异常)voidcheckDisableLevel(Object loginId, String service, int level) 校验:指定账号的指定服务,是否已被封禁到指定等级(如果已经达到,则抛出异常)void检验当前会话是否已经登录,如未登录,则抛出异常protected voidcheckLoginArgs(Object id, SaLoginParameter loginParameter) 校验登录时的参数有效性,如果有问题会打印警告或抛出异常voidcheckPermission(String permission) 校验:当前账号是否含有指定权限, 如果验证未通过,则抛出异常: NotPermissionExceptionvoidcheckPermissionAnd(String... permissionArray) 校验:当前账号是否含有指定权限 [ 指定多个,必须全部验证通过 ]voidcheckPermissionOr(String... permissionArray) 校验:当前账号是否含有指定权限 [ 指定多个,只要其一验证通过即可 ]void校验:当前账号是否含有指定角色标识, 如果验证未通过,则抛出异常: NotRoleExceptionvoidcheckRoleAnd(String... roleArray) 校验:当前账号是否含有指定角色标识 [ 指定多个,必须全部验证通过 ]voidcheckRoleOr(String... roleArray) 校验:当前账号是否含有指定角色标识 [ 指定多个,只要其一验证通过即可 ]void校验:当前会话是否已通过二级认证,如未通过则抛出异常void校验:检查当前会话是否已通过指定业务的二级认证,如未通过则抛出异常protected voidclearLastActive(String tokenValue) 清除指定 Token 的 [ 最后活跃时间记录 ]void在当前会话 结束二级认证void在当前会话 结束指定业务标识的二级认证创建指定账号 id 的登录会话数据createLoginSession(Object id, SaLoginParameter loginParameter) 创建指定账号 id 的登录会话数据根据当前配置对象创建一个 SaLoginParameter 对象根据当前配置对象创建一个 SaLogoutParameter 对象为指定账号创建一个 token (只是把 token 创建出来,并不持久化存储)voiddeleteTokenSession(String tokenValue) 删除指定 token 的 Token-SessionvoiddeleteTokenToIdMapping(String tokenValue) 删除 token - id 映射void封禁:指定账号void封禁:指定账号的指定服务voiddisableLevel(Object loginId, int level, long time) 封禁:指定账号,并指定封禁等级voiddisableLevel(Object loginId, String service, int level, long time) 封禁:指定账号的指定服务,并指定封禁等级protected StringdistUsableToken(Object id, SaLoginParameter loginParameter) 为指定账号 id 的登录操作,分配一个可用的 tokenvoid结束临时切换身份voidforEachTerminalList(Object loginId, SaTwoParamFunction<SaSession, SaTerminalInfo> function) 获取指定账号 id 已登录设备信息集合,执行特定函数获取当前匿名 Token-Session (可在未登录情况下使用的Token-Session)getAnonTokenSession(boolean isCreate) 获取当前匿名 Token-Session (可在未登录情况下使用的 Token-Session)返回当前 StpLogic 使用的配置对象,如果当前 StpLogic 没有配置,则返回 nullint返回全局配置的 Cookie 保存时长,单位:秒 (根据全局 timeout 计算)intgetConfigOfMaxTryTimes(SaLoginParameter loginParameter) 返回全局配置的 maxTryTimes 值,在每次创建 token 时,对其唯一性测试的最高次数(-1=不测试)返回当前 StpLogic 使用的配置对象,如果当前 StpLogic 没有配置,则返回全局配置对象intgetDisableLevel(Object loginId) 获取:指定账号被封禁的等级,如果未被封禁则返回-2intgetDisableLevel(Object loginId, String service) 获取:指定账号的 指定服务 被封禁的等级,如果未被封禁则返回-2longgetDisableTime(Object loginId) 获取:指定账号剩余封禁时间,单位:秒(-1=永久封禁,-2=未被封禁)longgetDisableTime(Object loginId, String service) 获取:指定账号 指定服务 剩余封禁时间,单位:秒(-1=永久封禁,-2=未被封禁)获取当前 Token 的扩展信息(此函数只在jwt模式下生效)获取指定 Token 的扩展信息(此函数只在jwt模式下生效)已过时。getLoginDeviceByToken(String tokenValue) 已过时。返回当前会话的登录设备类型getLoginDeviceTypeByToken(String tokenValue) 返回指定 token 会话的登录设备类型获取当前会话账号id,如果未登录,则抛出异常<T> TgetLoginId(T defaultValue) 获取当前会话账号id, 如果未登录,则返回默认值int获取当前会话账号id, 并转换为 int 类型long获取当前会话账号id, 并转换为 long 类型获取当前会话账号id, 并转换为 String 类型getLoginIdByToken(String tokenValue) 获取指定 token 对应的账号id,如果 token 无效或 token 处于被踢、被顶、被冻结等状态,则返回 nullgetLoginIdByTokenNotThinkFreeze(String tokenValue) 获取指定 token 对应的账号id,如果 token 无效或 token 处于被踢、被顶等状态 (不考虑被冻结),则返回 null获取当前会话账号id, 如果未登录,则返回nullgetLoginIdNotHandle(String tokenValue) 获取指定 token 对应的账号id (不做任何特殊处理)获取当前 StpLogic 账号类型标识获取指定账号 id 的登录会话数据,如果获取不到则创建并返回获取:当前账号的权限码集合getPermissionList(Object loginId) 获取:指定账号的权限码集合获取:当前账号的角色集合getRoleList(Object loginId) 获取:指定账号的角色集合long获取:当前会话的二级认证剩余有效时间(单位: 秒, 返回-2代表尚未通过二级认证)longgetSafeTime(String service) 获取:当前会话的二级认证剩余有效时间(单位: 秒, 返回-2代表尚未通过二级认证)返回当前 StpLogic 使用的持久化对象获取当前已登录账号的 Account-Session,如果该 SaSession 尚未创建,则新建并返回getSession(boolean isCreate) 获取当前已登录账号的 Account-Session, 如果该 SaSession 尚未创建,isCreate=是否新建并返回getSessionByLoginId(Object loginId) 获取指定账号 id 的 Account-Session,如果该 SaSession 尚未创建,则新建并返回getSessionByLoginId(Object loginId, boolean isCreate) 获取指定账号 id 的 Account-Session, 如果该 SaSession 尚未创建,isCreate=是否新建并返回getSessionByLoginId(Object loginId, boolean isCreate, Long timeout) 获取指定账号 id 的 Account-Session, 如果该 SaSession 尚未创建,isCreate=是否新建并返回getSessionBySessionId(String sessionId) 获取指定 key 的 SaSession, 如果该 SaSession 尚未创建,则返回 nullgetSessionBySessionId(String sessionId, boolean isCreate, Long timeout, Consumer<SaSession> appendOperation) 获取指定 key 的 SaSession, 如果该 SaSession 尚未创建,isCreate = 是否立即新建并返回long获取当前登录账号的 Account-Session 剩余有效时间(单位: 秒,返回 -1 代表永久有效,-2 代表没有这个值)longgetSessionTimeoutByLoginId(Object loginId) 获取指定账号 id 的 Account-Session 剩余有效时间(单位: 秒,返回 -1 代表永久有效,-2 代表没有这个值)返回 [ 身份临时切换 ] 的 loginIdgetTerminalListByLoginId(Object loginId) 获取指定账号 id 已登录设备信息集合getTerminalListByLoginId(Object loginId, String deviceType) 获取指定账号 id 指定设备类型端的已登录设备信息集合long获取当前 token 剩余活跃有效期:当前 token 距离被冻结还剩多少时间(单位: 秒,返回 -1 代表永不冻结,-2 代表没有这个值或 token 已被冻结了)longgetTokenActiveTimeoutByToken(String tokenValue) 获取指定 token 剩余活跃有效期:这个 token 距离被冻结还剩多少时间(单位: 秒,返回 -1 代表永不冻结,-2 代表没有这个值或 token 已被冻结了)获取当前会话的 token 参数信息long获取当前 token 的最后活跃时间(13位时间戳),如果不存在则返回 -2longgetTokenLastActiveTime(String tokenValue) 获取指定 token 的最后活跃时间(13位时间戳),如果不存在则返回 -2返回 token 名称,此名称在以下地方体现:Cookie 保存 token 时的名称、提交 token 时参数的名称、存储 token 时的 key 前缀获取当前 token 的 Token-Session,如果该 SaSession 尚未创建,则新建并返回getTokenSession(boolean isCreate) 获取当前 token 的 Token-Session,如果该 SaSession 尚未创建,isCreate代表是否新建并返回getTokenSessionByToken(String tokenValue) 获取指定 token 的 Token-Session,如果该 SaSession 尚未创建,则新建并返回getTokenSessionByToken(String tokenValue, boolean isCreate) 获取指定 token 的 Token-Session,如果该 SaSession 尚未创建,isCreate代表是否新建并返回long获取当前 token 的 Token-Session 剩余有效时间(单位: 秒,返回 -1 代表永久有效,-2 代表没有这个值)longgetTokenSessionTimeoutByTokenValue(String tokenValue) 获取指定 token 的 Token-Session 剩余有效时间(单位: 秒,返回 -1 代表永久有效,-2 代表没有这个值)long获取当前会话 token 剩余有效时间(单位: 秒,返回 -1 代表永久有效,-2 代表没有这个值)longgetTokenTimeout(String token) 获取指定 token 剩余有效时间(单位: 秒,返回 -1 代表永久有效,-2 代表没有这个值)longgetTokenTimeoutByLoginId(Object loginId) 获取指定账号 id 的 token 剩余有效时间(单位: 秒,返回 -1 代表永久有效,-2 代表没有这个值)getTokenUseActiveTimeout(String tokenValue) 获取指定 token 在缓存中的 activeTimeout 值,如果不存在则返回 nulllonggetTokenUseActiveTimeoutOrGlobalConfig(String tokenValue) 获取指定 token 在缓存中的 activeTimeout 值,如果不存在则返回全局配置的 activeTimeout 值获取当前请求的 token 值getTokenValue(boolean noPrefixThrowException) 获取当前请求的 token 值getTokenValueByLoginId(Object loginId) 获取指定账号 id 的 tokengetTokenValueByLoginId(Object loginId, String deviceType) 获取指定账号 id 指定设备类型端的 tokengetTokenValueListByLoginId(Object loginId) 获取指定账号 id 的 token 集合getTokenValueListByLoginId(Object loginId, String deviceType) 获取指定账号 id 指定设备类型端的 token 集合获取当前请求的 token 值 (不裁剪前缀)获取当前请求的 token 值,如果获取不到则抛出异常booleanhasElement(List<String> list, String element) 判断:集合中是否包含指定元素(模糊匹配)booleanhasPermission(Object loginId, String permission) 判断:指定账号 id 是否含有指定权限, 返回 true 或 falsebooleanhasPermission(String permission) 判断:当前账号是否含有指定权限, 返回 true 或 falsebooleanhasPermissionAnd(String... permissionArray) 判断:当前账号是否含有指定权限 [ 指定多个,必须全部具有 ]booleanhasPermissionOr(String... permissionArray) 判断:当前账号是否含有指定权限 [ 指定多个,只要其一验证通过即可 ]boolean判断:指定账号是否含有指定角色标识, 返回 true 或 falseboolean判断:当前账号是否拥有指定角色, 返回 true 或 falsebooleanhasRoleAnd(String... roleArray) 判断:当前账号是否含有指定角色标识 [ 指定多个,必须全部验证通过 ]boolean判断:当前账号是否含有指定角色标识 [ 指定多个,只要其一验证通过即可 ]boolean判断:指定账号是否已被封禁 (true=已被封禁, false=未被封禁)boolean判断:指定账号的指定服务 是否已被封禁(true=已被封禁, false=未被封禁)booleanisDisableLevel(Object loginId, int level) 判断:指定账号是否已被封禁到指定等级booleanisDisableLevel(Object loginId, String service, int level) 判断:指定账号的指定服务,是否已被封禁到指定等级boolean判断指定 token 是否已被冻结booleanisLogin()判断当前会话是否已经登录boolean判断指定账号是否已经登录boolean返回全局配置是否开启了 Token 活跃度校验,返回 true 代表已打开,返回 false 代表不打开,此时永不冻结 tokenbooleanisSafe()判断:当前会话是否处于二级认证时间内boolean判断:当前会话 是否处于指定业务的二级认证时间内boolean判断:指定 token 是否处于二级认证时间内boolean当前 StpLogic 对象是否支持 token 扩展参数boolean返回当前 StpLogic 是否支持共享 token 策略booleanisSwitch()判断当前请求是否正处于 [ 身份临时切换 ] 中booleanisTrustDeviceId(Object userId, String deviceId) 判断对于指定 loginId 来讲,指定设备 id 是否为可信任设备booleanisValidLoginId(Object loginId) 判断一个 loginId 是否是有效的void踢人下线,根据账号idvoidkickout(Object loginId, SaLogoutParameter logoutParameter) 踢人下线,根据账号id 和 注销参数void踢人下线,根据账号id 和 设备类型voidkickoutByTokenValue(String tokenValue) 踢人下线,根据指定 tokenvoidkickoutByTokenValue(String tokenValue, SaLogoutParameter logoutParameter) 踢人下线,根据指定 token、注销参数void会话登录void会话登录,并指定是否 [记住我]void会话登录,并指定此次登录 token 的有效期, 单位:秒voidlogin(Object id, SaLoginParameter loginParameter) 会话登录,并指定所有登录参数 Modelvoid会话登录,并指定登录设备类型voidlogout()在当前客户端会话注销voidlogout(SaLogoutParameter logoutParameter) 在当前客户端会话注销,根据注销参数void会话注销,根据账号idvoidlogout(Object loginId, SaLogoutParameter logoutParameter) 会话注销,根据账号id 和 注销参数void会话注销,根据账号id 和 设备类型voidlogoutByMaxLoginCount(Object loginId, SaSession session, String deviceType, int maxLoginCount, SaLogoutMode logoutMode) 如果指定账号 id、设备类型的登录客户端已经超过了指定数量,则按照登录时间顺序,把最开始登录的给注销掉voidlogoutByTokenValue(String tokenValue) 注销下线,根据指定 tokenvoidlogoutByTokenValue(String tokenValue, SaLogoutParameter logoutParameter) 注销下线,根据指定 token、注销参数voidopenSafe(long safeTime) 在当前会话 开启二级认证void在当前会话 开启二级认证voidremoveTerminalByKickout(SaSession session, SaTerminalInfo terminal) 在 Account-Session 上移除 Terminal 信息 (踢人下线方式)voidremoveTerminalByLogout(SaSession session, SaTerminalInfo terminal) 在 Account-Session 上移除 Terminal 信息 (注销下线方式)voidremoveTerminalByReplaced(SaSession session, SaTerminalInfo terminal) 在 Account-Session 上移除 Terminal 信息 (顶人下线方式)voidrenewTimeout(long timeout) 对当前 token 的 timeout 值进行续期voidrenewTimeout(String tokenValue, long timeout) 对指定 token 的 timeout 值进行续期void顶人下线,根据账号idvoidreplaced(Object loginId, SaLogoutParameter logoutParameter) 顶人下线,根据账号id 和 注销参数void顶人下线,根据账号id 和 设备类型voidreplacedByTokenValue(String tokenValue) 顶人下线,根据指定 tokenvoidreplacedByTokenValue(String tokenValue, SaLogoutParameter logoutParameter) 顶人下线,根据指定 token、注销参数voidsaveTokenToIdMapping(String tokenValue, Object loginId, long timeout) 存储 token - id 映射关系searchSessionId(String keyword, int start, int size, boolean sortType) 根据条件查询缓存中所有的 SessionIdsearchTokenSessionId(String keyword, int start, int size, boolean sortType) 根据条件查询缓存中所有的 Token-Session-IdsearchTokenValue(String keyword, int start, int size, boolean sortType) 根据条件查询缓存中所有的 tokensetConfig(SaTokenConfig config) 写入当前 StpLogic 单独使用的配置对象protected voidsetLastActiveToNow(String tokenValue, Long activeTimeout, Long timeout) 写入指定 token 的 [ 最后活跃时间 ] 为当前时间戳 √√√setLoginType(String loginType) 安全的重置当前账号类型voidsetTokenValue(String tokenValue) 在当前会话写入指定 token 值voidsetTokenValue(String tokenValue, int cookieTimeout) 在当前会话写入指定 token 值voidsetTokenValue(String tokenValue, SaLoginParameter loginParameter) 在当前会话写入指定 token 值voidsetTokenValueToCookie(String tokenValue, int cookieTimeout) 将 token 写入到当前会话的 Cookie 里voidsetTokenValueToResponseHeader(String tokenValue) 将 token 写入到当前请求的响应头中voidsetTokenValueToStorage(String tokenValue) 将 token 写入到当前请求的 Storage 存储器里splicingKeyDisable(Object loginId, String service) 拼接: 在保存服务封禁标记时,应该使用的 key如果 token 为本次请求新创建的,则以此字符串为 key 存储在当前 request 中splicingKeyLastActiveTime(String tokenValue) 拼接: 在保存 token 最后活跃时间时,应该使用的 keysplicingKeySafe(String tokenValue, String service) 拼接: 在保存业务二级认证标记时,应该使用的 keysplicingKeySession(Object loginId) 拼接: 在保存 Account-Session 时,应该使用的 key拼接:在进行临时身份切换时,应该使用的 key获取:客户端 tokenNamesplicingKeyTokenSession(String tokenValue) 拼接:在保存 Token-Session 时,应该使用的 keysplicingKeyTokenValue(String tokenValue) 拼接: 在保存 token - id 映射关系时,应该使用的keyvoid临时切换身份为指定账号idvoidswitchTo(Object loginId, SaFunction function) 在一个 lambda 代码段里,临时切换身份为指定账号id,lambda 结束后自动恢复voiduntieDisable(Object loginId) 解封:指定账号voiduntieDisable(Object loginId, String... services) 解封:指定账号、指定服务void续签当前 token:(将 [最后操作时间] 更新为当前时间戳)voidupdateLastActiveToNow(String tokenValue) 续签指定 token:将这个 token 的 [ 最后活跃时间 ] 更新为当前时间戳voidupdateTokenToIdMapping(String tokenValue, Object loginId) 更改 token - id 映射关系
-
字段详细资料
-
loginType
账号类型标识,多账号体系时(一个系统多套用户表)用此值区分具体要校验的是哪套用户,比如:login、user、admin
-
-
构造器详细资料
-
StpLogic
初始化 StpLogic, 并指定账号类型- 参数:
loginType- 账号类型标识
-
-
方法详细资料
-
getLoginType
获取当前 StpLogic 账号类型标识- 返回:
- /
-
setLoginType
安全的重置当前账号类型- 参数:
loginType- 账号类型标识- 返回:
- 对象自身
-
setConfig
写入当前 StpLogic 单独使用的配置对象- 参数:
config- 配置对象- 返回:
- 对象自身
-
getConfig
返回当前 StpLogic 使用的配置对象,如果当前 StpLogic 没有配置,则返回 null- 返回:
- /
-
getConfigOrGlobal
返回当前 StpLogic 使用的配置对象,如果当前 StpLogic 没有配置,则返回全局配置对象- 返回:
- /
-
getTokenName
返回 token 名称,此名称在以下地方体现:Cookie 保存 token 时的名称、提交 token 时参数的名称、存储 token 时的 key 前缀- 返回:
- /
-
createTokenValue
public String createTokenValue(Object loginId, String deviceType, long timeout, Map<String, Object> extraData) 为指定账号创建一个 token (只是把 token 创建出来,并不持久化存储)- 参数:
loginId- 账号iddeviceType- 设备类型timeout- 过期时间extraData- 扩展信息- 返回:
- 生成的tokenValue
-
setTokenValue
在当前会话写入指定 token 值- 参数:
tokenValue- token 值
-
setTokenValue
在当前会话写入指定 token 值- 参数:
tokenValue- token 值cookieTimeout- Cookie存活时间(秒)
-
setTokenValue
在当前会话写入指定 token 值- 参数:
tokenValue- token 值loginParameter- 登录参数
-
setTokenValueToStorage
将 token 写入到当前请求的 Storage 存储器里- 参数:
tokenValue- 要保存的 token 值
-
setTokenValueToCookie
将 token 写入到当前会话的 Cookie 里- 参数:
tokenValue- token 值cookieTimeout- Cookie存活时间(单位:秒,填-1代表为内存Cookie,浏览器关闭后消失)
-
setTokenValueToResponseHeader
将 token 写入到当前请求的响应头中- 参数:
tokenValue- token 值
-
getTokenValue
获取当前请求的 token 值- 返回:
- 当前tokenValue
-
getTokenValue
获取当前请求的 token 值- 参数:
noPrefixThrowException- 如果提交的 token 不带有指定的前缀,是否抛出异常- 返回:
- 当前tokenValue
-
getTokenValueNotCut
获取当前请求的 token 值 (不裁剪前缀)- 返回:
- /
-
getTokenValueNotNull
获取当前请求的 token 值,如果获取不到则抛出异常- 返回:
- /
-
getTokenInfo
获取当前会话的 token 参数信息- 返回:
- token 参数信息
-
login
会话登录- 参数:
id- 账号id,建议的类型:(long | int | String)
-
login
会话登录,并指定登录设备类型- 参数:
id- 账号id,建议的类型:(long | int | String)deviceType- 设备类型
-
login
会话登录,并指定是否 [记住我]- 参数:
id- 账号id,建议的类型:(long | int | String)isLastingCookie- 是否为持久Cookie,值为 true 时记住我,值为 false 时关闭浏览器需要重新登录
-
login
会话登录,并指定此次登录 token 的有效期, 单位:秒- 参数:
id- 账号id,建议的类型:(long | int | String)timeout- 此次登录 token 的有效期, 单位:秒
-
login
会话登录,并指定所有登录参数 Model- 参数:
id- 账号id,建议的类型:(long | int | String)loginParameter- 此次登录的参数Model
-
createLoginSession
创建指定账号 id 的登录会话数据- 参数:
id- 账号id,建议的类型:(long | int | String)- 返回:
- 返回会话令牌
-
createLoginSession
创建指定账号 id 的登录会话数据- 参数:
id- 账号id,建议的类型:(long | int | String)loginParameter- 此次登录的参数Model- 返回:
- 返回会话令牌
-
distUsableToken
为指定账号 id 的登录操作,分配一个可用的 token- 参数:
id- 账号idloginParameter- 此次登录的参数Model- 返回:
- 返回 token
-
checkLoginArgs
校验登录时的参数有效性,如果有问题会打印警告或抛出异常- 参数:
id- 账号idloginParameter- 此次登录的参数Model
-
getOrCreateLoginSession
获取指定账号 id 的登录会话数据,如果获取不到则创建并返回- 参数:
id- 账号id,建议的类型:(long | int | String)- 返回:
- 返回会话令牌
-
logout
public void logout()在当前客户端会话注销 -
logout
在当前客户端会话注销,根据注销参数 -
logoutByTokenValue
注销下线,根据指定 token- 参数:
tokenValue- 指定 token
-
logoutByTokenValue
注销下线,根据指定 token、注销参数- 参数:
tokenValue- 指定 tokenlogoutParameter- /
-
kickoutByTokenValue
踢人下线,根据指定 token当对方再次访问系统时,会抛出 NotLoginException 异常,场景值=-5
- 参数:
tokenValue- 指定 token
-
kickoutByTokenValue
踢人下线,根据指定 token、注销参数当对方再次访问系统时,会抛出 NotLoginException 异常,场景值=-5
- 参数:
tokenValue- 指定 tokenlogoutParameter- 注销参数
-
replacedByTokenValue
顶人下线,根据指定 token当对方再次访问系统时,会抛出 NotLoginException 异常,场景值=-4
- 参数:
tokenValue- 指定 token
-
replacedByTokenValue
顶人下线,根据指定 token、注销参数当对方再次访问系统时,会抛出 NotLoginException 异常,场景值=-4
- 参数:
tokenValue- 指定 tokenlogoutParameter- /
-
_logoutByTokenValue
[work] 注销下线,根据指定 token 、注销参数- 参数:
tokenValue- 指定 tokenlogoutParameter- 注销参数
-
logout
会话注销,根据账号id- 参数:
loginId- 账号id
-
logout
会话注销,根据账号id 和 设备类型- 参数:
loginId- 账号iddeviceType- 设备类型 (填 null 代表注销该账号的所有设备类型)
-
logout
会话注销,根据账号id 和 注销参数- 参数:
loginId- 账号idlogoutParameter- 注销参数
-
kickout
踢人下线,根据账号id当对方再次访问系统时,会抛出 NotLoginException 异常,场景值=-5
- 参数:
loginId- 账号id
-
kickout
踢人下线,根据账号id 和 设备类型当对方再次访问系统时,会抛出 NotLoginException 异常,场景值=-5
- 参数:
loginId- 账号iddeviceType- 设备类型 (填 null 代表踢出该账号的所有设备类型)
-
kickout
踢人下线,根据账号id 和 注销参数当对方再次访问系统时,会抛出 NotLoginException 异常,场景值=-5
- 参数:
loginId- 账号idlogoutParameter- 注销参数
-
replaced
顶人下线,根据账号id当对方再次访问系统时,会抛出 NotLoginException 异常,场景值=-4
- 参数:
loginId- 账号id
-
replaced
顶人下线,根据账号id 和 设备类型当对方再次访问系统时,会抛出 NotLoginException 异常,场景值=-4
- 参数:
loginId- 账号iddeviceType- 设备类型 (填 null 代表顶替该账号的所有设备类型)
-
replaced
顶人下线,根据账号id 和 注销参数当对方再次访问系统时,会抛出 NotLoginException 异常,场景值=-4
- 参数:
loginId- 账号idlogoutParameter- 注销参数
-
_logout
[work] 会话注销,根据账号id 和 注销参数- 参数:
loginId- 账号idlogoutParameter- 注销参数
-
removeTerminalByLogout
在 Account-Session 上移除 Terminal 信息 (注销下线方式)- 参数:
session- /terminal- /
-
removeTerminalByKickout
在 Account-Session 上移除 Terminal 信息 (踢人下线方式)- 参数:
session- /terminal- /
-
removeTerminalByReplaced
在 Account-Session 上移除 Terminal 信息 (顶人下线方式)- 参数:
session- /terminal- /
-
_removeTerminal
public void _removeTerminal(SaSession session, SaTerminalInfo terminal, SaLogoutParameter logoutParameter) 在 Account-Session 上移除 Terminal 信息 (内部方法,仅为减少重复代码,外部调用意义不大)- 参数:
session- Account-Sessionterminal- 设备信息logoutParameter- 注销参数
-
logoutByMaxLoginCount
public void logoutByMaxLoginCount(Object loginId, SaSession session, String deviceType, int maxLoginCount, SaLogoutMode logoutMode) 如果指定账号 id、设备类型的登录客户端已经超过了指定数量,则按照登录时间顺序,把最开始登录的给注销掉- 参数:
loginId- 账号idsession- 此账号的 Account-Session 对象,可填写 null,框架将自动获取deviceType- 设备类型(填 null 代表注销此账号所有设备类型的登录)maxLoginCount- 最大登录数量,超过此数量的将被注销logoutMode- 超出的客户端将以何种方式被注销
-
isLogin
public boolean isLogin()判断当前会话是否已经登录- 返回:
- 已登录返回 true,未登录返回 false
-
isLogin
判断指定账号是否已经登录- 返回:
- 已登录返回 true,未登录返回 false
-
checkLogin
public void checkLogin()检验当前会话是否已经登录,如未登录,则抛出异常 -
getLoginId
获取当前会话账号id,如果未登录,则抛出异常- 返回:
- 账号id
-
getLoginId
public <T> T getLoginId(T defaultValue) 获取当前会话账号id, 如果未登录,则返回默认值- 类型参数:
T- 返回类型- 参数:
defaultValue- 默认值- 返回:
- 登录id
-
getLoginIdDefaultNull
获取当前会话账号id, 如果未登录,则返回null- 返回:
- 账号id
-
getLoginIdAsString
获取当前会话账号id, 并转换为 String 类型- 返回:
- 账号id
-
getLoginIdAsInt
public int getLoginIdAsInt()获取当前会话账号id, 并转换为 int 类型- 返回:
- 账号id
-
getLoginIdAsLong
public long getLoginIdAsLong()获取当前会话账号id, 并转换为 long 类型- 返回:
- 账号id
-
getLoginIdByToken
获取指定 token 对应的账号id,如果 token 无效或 token 处于被踢、被顶、被冻结等状态,则返回 null- 参数:
tokenValue- token- 返回:
- 账号id
-
getLoginIdByTokenNotThinkFreeze
获取指定 token 对应的账号id,如果 token 无效或 token 处于被踢、被顶等状态 (不考虑被冻结),则返回 null- 参数:
tokenValue- token- 返回:
- 账号id
-
getLoginIdNotHandle
获取指定 token 对应的账号id (不做任何特殊处理)- 参数:
tokenValue- token 值- 返回:
- 账号id
-
getExtra
获取当前 Token 的扩展信息(此函数只在jwt模式下生效)- 参数:
key- 键值- 返回:
- 对应的扩展数据
-
getExtra
获取指定 Token 的扩展信息(此函数只在jwt模式下生效)- 参数:
tokenValue- 指定的 Token 值key- 键值- 返回:
- 对应的扩展数据
-
isValidLoginId
判断一个 loginId 是否是有效的- 参数:
loginId- 账号id- 返回:
- /
-
saveTokenToIdMapping
存储 token - id 映射关系- 参数:
tokenValue- token值loginId- 账号idtimeout- 会话有效期 (单位: 秒)
-
updateTokenToIdMapping
更改 token - id 映射关系- 参数:
tokenValue- token值loginId- 新的账号Id值
-
deleteTokenToIdMapping
删除 token - id 映射- 参数:
tokenValue- token值
-
getSessionBySessionId
public SaSession getSessionBySessionId(String sessionId, boolean isCreate, Long timeout, Consumer<SaSession> appendOperation) 获取指定 key 的 SaSession, 如果该 SaSession 尚未创建,isCreate = 是否立即新建并返回- 参数:
sessionId- SessionIdisCreate- 是否新建timeout- 如果这个 SaSession 是新建的,则使用此值作为过期值(单位:秒),可填 null,代表使用全局 timeout 值appendOperation- 如果这个 SaSession 是新建的,则要追加执行的动作,可填 null,代表无追加动作- 返回:
- Session对象
-
getSessionBySessionId
获取指定 key 的 SaSession, 如果该 SaSession 尚未创建,则返回 null- 参数:
sessionId- SessionId- 返回:
- Session对象
-
getSessionByLoginId
获取指定账号 id 的 Account-Session, 如果该 SaSession 尚未创建,isCreate=是否新建并返回- 参数:
loginId- 账号idisCreate- 是否新建timeout- 如果这个 SaSession 是新建的,则使用此值作为过期值(单位:秒),可填 null,代表使用全局 timeout 值- 返回:
- SaSession 对象
-
getSessionByLoginId
获取指定账号 id 的 Account-Session, 如果该 SaSession 尚未创建,isCreate=是否新建并返回- 参数:
loginId- 账号idisCreate- 是否新建- 返回:
- SaSession 对象
-
getSessionByLoginId
获取指定账号 id 的 Account-Session,如果该 SaSession 尚未创建,则新建并返回- 参数:
loginId- 账号id- 返回:
- SaSession 对象
-
getSession
获取当前已登录账号的 Account-Session, 如果该 SaSession 尚未创建,isCreate=是否新建并返回- 参数:
isCreate- 是否新建- 返回:
- Session对象
-
getSession
获取当前已登录账号的 Account-Session,如果该 SaSession 尚未创建,则新建并返回- 返回:
- Session对象
-
getTokenSessionByToken
获取指定 token 的 Token-Session,如果该 SaSession 尚未创建,isCreate代表是否新建并返回- 参数:
tokenValue- token值isCreate- 是否新建- 返回:
- session对象
-
getTokenSessionByToken
获取指定 token 的 Token-Session,如果该 SaSession 尚未创建,则新建并返回- 参数:
tokenValue- Token值- 返回:
- Session对象
-
getTokenSession
获取当前 token 的 Token-Session,如果该 SaSession 尚未创建,isCreate代表是否新建并返回- 参数:
isCreate- 是否新建- 返回:
- Session对象
-
getTokenSession
获取当前 token 的 Token-Session,如果该 SaSession 尚未创建,则新建并返回- 返回:
- Session对象
-
getAnonTokenSession
获取当前匿名 Token-Session (可在未登录情况下使用的 Token-Session)- 参数:
isCreate- 在 Token-Session 尚未创建的情况是否新建并返回- 返回:
- Token-Session 对象
-
getAnonTokenSession
获取当前匿名 Token-Session (可在未登录情况下使用的Token-Session)- 返回:
- Token-Session 对象
-
deleteTokenSession
删除指定 token 的 Token-Session- 参数:
tokenValue- token值
-
setLastActiveToNow
写入指定 token 的 [ 最后活跃时间 ] 为当前时间戳 √√√- 参数:
tokenValue- 指定tokenactiveTimeout- 这个 token 的最低活跃频率,单位:秒,填 null 代表使用全局配置的 activeTimeout 值timeout- 保存数据时使用的 ttl 值,单位:秒,填 null 代表使用全局配置的 timeout 值
-
updateLastActiveToNow
续签指定 token:将这个 token 的 [ 最后活跃时间 ] 更新为当前时间戳- 参数:
tokenValue- 指定token
-
updateLastActiveToNow
public void updateLastActiveToNow()续签当前 token:(将 [最后操作时间] 更新为当前时间戳)请注意: 即使 token 已被冻结 也可续签成功, 如果此场景下需要提示续签失败,可在此之前调用 checkActiveTimeout() 强制检查是否冻结即可
-
clearLastActive
清除指定 Token 的 [ 最后活跃时间记录 ]- 参数:
tokenValue- 指定 token
-
isFreeze
判断指定 token 是否已被冻结- 参数:
tokenValue- 指定 token
-
checkActiveTimeout
检查指定 token 是否已被冻结,如果是则抛出异常- 参数:
tokenValue- 指定 token
-
checkActiveTimeout
public void checkActiveTimeout()检查当前 token 是否已被冻结,如果是则抛出异常 -
getTokenUseActiveTimeout
获取指定 token 在缓存中的 activeTimeout 值,如果不存在则返回 null- 参数:
tokenValue- 指定token- 返回:
- /
-
getTokenUseActiveTimeoutOrGlobalConfig
获取指定 token 在缓存中的 activeTimeout 值,如果不存在则返回全局配置的 activeTimeout 值- 参数:
tokenValue- 指定token- 返回:
- /
-
getTokenLastActiveTime
获取指定 token 的最后活跃时间(13位时间戳),如果不存在则返回 -2- 参数:
tokenValue- 指定token- 返回:
- /
-
getTokenLastActiveTime
public long getTokenLastActiveTime()获取当前 token 的最后活跃时间(13位时间戳),如果不存在则返回 -2- 返回:
- /
-
getTokenTimeout
public long getTokenTimeout()获取当前会话 token 剩余有效时间(单位: 秒,返回 -1 代表永久有效,-2 代表没有这个值)- 返回:
- token剩余有效时间
-
getTokenTimeout
获取指定 token 剩余有效时间(单位: 秒,返回 -1 代表永久有效,-2 代表没有这个值)- 参数:
token- 指定token- 返回:
- token剩余有效时间
-
getTokenTimeoutByLoginId
获取指定账号 id 的 token 剩余有效时间(单位: 秒,返回 -1 代表永久有效,-2 代表没有这个值)- 参数:
loginId- 指定loginId- 返回:
- token剩余有效时间
-
getSessionTimeout
public long getSessionTimeout()获取当前登录账号的 Account-Session 剩余有效时间(单位: 秒,返回 -1 代表永久有效,-2 代表没有这个值)- 返回:
- token剩余有效时间
-
getSessionTimeoutByLoginId
获取指定账号 id 的 Account-Session 剩余有效时间(单位: 秒,返回 -1 代表永久有效,-2 代表没有这个值)- 参数:
loginId- 指定loginId- 返回:
- token剩余有效时间
-
getTokenSessionTimeout
public long getTokenSessionTimeout()获取当前 token 的 Token-Session 剩余有效时间(单位: 秒,返回 -1 代表永久有效,-2 代表没有这个值)- 返回:
- token剩余有效时间
-
getTokenSessionTimeoutByTokenValue
获取指定 token 的 Token-Session 剩余有效时间(单位: 秒,返回 -1 代表永久有效,-2 代表没有这个值)- 参数:
tokenValue- 指定token- 返回:
- token 剩余有效时间
-
getTokenActiveTimeout
public long getTokenActiveTimeout()获取当前 token 剩余活跃有效期:当前 token 距离被冻结还剩多少时间(单位: 秒,返回 -1 代表永不冻结,-2 代表没有这个值或 token 已被冻结了)- 返回:
- /
-
getTokenActiveTimeoutByToken
获取指定 token 剩余活跃有效期:这个 token 距离被冻结还剩多少时间(单位: 秒,返回 -1 代表永不冻结,-2 代表没有这个值或 token 已被冻结了)- 参数:
tokenValue- 指定 token- 返回:
- /
-
renewTimeout
public void renewTimeout(long timeout) 对当前 token 的 timeout 值进行续期- 参数:
timeout- 要修改成为的有效时间 (单位: 秒)
-
renewTimeout
对指定 token 的 timeout 值进行续期- 参数:
tokenValue- 指定 tokentimeout- 要修改成为的有效时间 (单位: 秒,填 -1 代表要续为永久有效)
-
getRoleList
获取:当前账号的角色集合- 返回:
- /
-
getRoleList
获取:指定账号的角色集合- 参数:
loginId- 指定账号id- 返回:
- /
-
hasRole
判断:当前账号是否拥有指定角色, 返回 true 或 false- 参数:
role- 角色- 返回:
- /
-
hasRole
判断:指定账号是否含有指定角色标识, 返回 true 或 false- 参数:
loginId- 账号idrole- 角色标识- 返回:
- 是否含有指定角色标识
-
hasRoleAnd
判断:当前账号是否含有指定角色标识 [ 指定多个,必须全部验证通过 ]- 参数:
roleArray- 角色标识数组- 返回:
- true或false
-
hasRoleOr
判断:当前账号是否含有指定角色标识 [ 指定多个,只要其一验证通过即可 ]- 参数:
roleArray- 角色标识数组- 返回:
- true或false
-
checkRole
校验:当前账号是否含有指定角色标识, 如果验证未通过,则抛出异常: NotRoleException- 参数:
role- 角色标识
-
checkRoleAnd
校验:当前账号是否含有指定角色标识 [ 指定多个,必须全部验证通过 ]- 参数:
roleArray- 角色标识数组
-
checkRoleOr
校验:当前账号是否含有指定角色标识 [ 指定多个,只要其一验证通过即可 ]- 参数:
roleArray- 角色标识数组
-
getPermissionList
获取:当前账号的权限码集合- 返回:
- /
-
getPermissionList
获取:指定账号的权限码集合- 参数:
loginId- 指定账号id- 返回:
- /
-
hasPermission
判断:当前账号是否含有指定权限, 返回 true 或 false- 参数:
permission- 权限码- 返回:
- 是否含有指定权限
-
hasPermission
判断:指定账号 id 是否含有指定权限, 返回 true 或 false- 参数:
loginId- 账号 idpermission- 权限码- 返回:
- 是否含有指定权限
-
hasPermissionAnd
判断:当前账号是否含有指定权限 [ 指定多个,必须全部具有 ]- 参数:
permissionArray- 权限码数组- 返回:
- true 或 false
-
hasPermissionOr
判断:当前账号是否含有指定权限 [ 指定多个,只要其一验证通过即可 ]- 参数:
permissionArray- 权限码数组- 返回:
- true 或 false
-
checkPermission
校验:当前账号是否含有指定权限, 如果验证未通过,则抛出异常: NotPermissionException- 参数:
permission- 权限码
-
checkPermissionAnd
校验:当前账号是否含有指定权限 [ 指定多个,必须全部验证通过 ]- 参数:
permissionArray- 权限码数组
-
checkPermissionOr
校验:当前账号是否含有指定权限 [ 指定多个,只要其一验证通过即可 ]- 参数:
permissionArray- 权限码数组
-
getTokenValueByLoginId
获取指定账号 id 的 token在配置为允许并发登录时,此方法只会返回队列的最后一个 token, 如果你需要返回此账号 id 的所有 token,请调用 getTokenValueListByLoginId
- 参数:
loginId- 账号id- 返回:
- token值
-
getTokenValueByLoginId
获取指定账号 id 指定设备类型端的 token在配置为允许并发登录时,此方法只会返回队列的最后一个 token, 如果你需要返回此账号 id 的所有 token,请调用 getTokenValueListByLoginId
- 参数:
loginId- 账号iddeviceType- 设备类型,填 null 代表不限设备类型- 返回:
- token值
-
getTokenValueListByLoginId
获取指定账号 id 的 token 集合- 参数:
loginId- 账号id- 返回:
- 此 loginId 的所有相关 token
-
getTokenValueListByLoginId
获取指定账号 id 指定设备类型端的 token 集合- 参数:
loginId- 账号iddeviceType- 设备类型,填 null 代表不限设备类型- 返回:
- 此 loginId 的所有登录 token
-
getTerminalListByLoginId
获取指定账号 id 已登录设备信息集合- 参数:
loginId- 账号id- 返回:
- 此 loginId 的所有登录 token
-
getTerminalListByLoginId
获取指定账号 id 指定设备类型端的已登录设备信息集合- 参数:
loginId- 账号iddeviceType- 设备类型,填 null 代表不限设备类型- 返回:
- 此 loginId 的所有登录 token
-
forEachTerminalList
public void forEachTerminalList(Object loginId, SaTwoParamFunction<SaSession, SaTerminalInfo> function) 获取指定账号 id 已登录设备信息集合,执行特定函数- 参数:
loginId- 账号idfunction- 需要执行的函数
-
getLoginDeviceType
返回当前会话的登录设备类型- 返回:
- 当前令牌的登录设备类型
-
getLoginDeviceTypeByToken
返回指定 token 会话的登录设备类型- 参数:
tokenValue- 指定token- 返回:
- 当前令牌的登录设备类型
-
isTrustDeviceId
判断对于指定 loginId 来讲,指定设备 id 是否为可信任设备- 参数:
deviceId- /- 返回:
- /
-
searchTokenValue
根据条件查询缓存中所有的 token- 参数:
keyword- 关键字start- 开始处索引size- 获取数量 (-1代表一直获取到末尾)sortType- 排序类型(true=正序,false=反序)- 返回:
- token集合
-
searchSessionId
根据条件查询缓存中所有的 SessionId- 参数:
keyword- 关键字start- 开始处索引size- 获取数量 (-1代表一直获取到末尾)sortType- 排序类型(true=正序,false=反序)- 返回:
- sessionId集合
-
searchTokenSessionId
根据条件查询缓存中所有的 Token-Session-Id- 参数:
keyword- 关键字start- 开始处索引size- 获取数量 (-1代表一直获取到末尾)sortType- 排序类型(true=正序,false=反序)- 返回:
- sessionId集合
-
disable
封禁:指定账号此方法不会直接将此账号id踢下线,如需封禁后立即掉线,请追加调用 StpUtil.logout(id)
- 参数:
loginId- 指定账号idtime- 封禁时间, 单位: 秒 (-1=永久封禁)
-
isDisable
判断:指定账号是否已被封禁 (true=已被封禁, false=未被封禁)- 参数:
loginId- 账号id- 返回:
- /
-
checkDisable
校验:指定账号是否已被封禁,如果被封禁则抛出异常- 参数:
loginId- 账号id
-
getDisableTime
获取:指定账号剩余封禁时间,单位:秒(-1=永久封禁,-2=未被封禁)- 参数:
loginId- 账号id- 返回:
- /
-
untieDisable
解封:指定账号- 参数:
loginId- 账号id
-
disable
封禁:指定账号的指定服务此方法不会直接将此账号id踢下线,如需封禁后立即掉线,请追加调用 StpUtil.logout(id)
- 参数:
loginId- 指定账号idservice- 指定服务time- 封禁时间, 单位: 秒 (-1=永久封禁)
-
isDisable
判断:指定账号的指定服务 是否已被封禁(true=已被封禁, false=未被封禁)- 参数:
loginId- 账号idservice- 指定服务- 返回:
- /
-
checkDisable
校验:指定账号 指定服务 是否已被封禁,如果被封禁则抛出异常- 参数:
loginId- 账号idservices- 指定服务,可以指定多个
-
getDisableTime
获取:指定账号 指定服务 剩余封禁时间,单位:秒(-1=永久封禁,-2=未被封禁)- 参数:
loginId- 账号idservice- 指定服务- 返回:
- see note
-
untieDisable
解封:指定账号、指定服务- 参数:
loginId- 账号idservices- 指定服务,可以指定多个
-
disableLevel
封禁:指定账号,并指定封禁等级- 参数:
loginId- 指定账号idlevel- 指定封禁等级time- 封禁时间, 单位: 秒 (-1=永久封禁)
-
disableLevel
封禁:指定账号的指定服务,并指定封禁等级- 参数:
loginId- 指定账号idservice- 指定封禁服务level- 指定封禁等级time- 封禁时间, 单位: 秒 (-1=永久封禁)
-
isDisableLevel
判断:指定账号是否已被封禁到指定等级- 参数:
loginId- 指定账号idlevel- 指定封禁等级- 返回:
- /
-
isDisableLevel
判断:指定账号的指定服务,是否已被封禁到指定等级- 参数:
loginId- 指定账号idservice- 指定封禁服务level- 指定封禁等级- 返回:
- /
-
checkDisableLevel
校验:指定账号是否已被封禁到指定等级(如果已经达到,则抛出异常)- 参数:
loginId- 指定账号idlevel- 封禁等级 (只有 封禁等级 ≥ 此值 才会抛出异常)
-
checkDisableLevel
校验:指定账号的指定服务,是否已被封禁到指定等级(如果已经达到,则抛出异常)- 参数:
loginId- 指定账号idservice- 指定封禁服务level- 封禁等级 (只有 封禁等级 ≥ 此值 才会抛出异常)
-
getDisableLevel
获取:指定账号被封禁的等级,如果未被封禁则返回-2- 参数:
loginId- 指定账号id- 返回:
- /
-
getDisableLevel
获取:指定账号的 指定服务 被封禁的等级,如果未被封禁则返回-2- 参数:
loginId- 指定账号idservice- 指定封禁服务- 返回:
- /
-
switchTo
临时切换身份为指定账号id- 参数:
loginId- 指定loginId
-
endSwitch
public void endSwitch()结束临时切换身份 -
isSwitch
public boolean isSwitch()判断当前请求是否正处于 [ 身份临时切换 ] 中- 返回:
- /
-
getSwitchLoginId
返回 [ 身份临时切换 ] 的 loginId- 返回:
- /
-
switchTo
在一个 lambda 代码段里,临时切换身份为指定账号id,lambda 结束后自动恢复- 参数:
loginId- 指定账号idfunction- 要执行的方法
-
openSafe
public void openSafe(long safeTime) 在当前会话 开启二级认证- 参数:
safeTime- 维持时间 (单位: 秒)
-
openSafe
在当前会话 开启二级认证- 参数:
service- 业务标识safeTime- 维持时间 (单位: 秒)
-
isSafe
public boolean isSafe()判断:当前会话是否处于二级认证时间内- 返回:
- true=二级认证已通过, false=尚未进行二级认证或认证已超时
-
isSafe
判断:当前会话 是否处于指定业务的二级认证时间内- 参数:
service- 业务标识- 返回:
- true=二级认证已通过, false=尚未进行二级认证或认证已超时
-
isSafe
判断:指定 token 是否处于二级认证时间内- 参数:
tokenValue- Token 值service- 业务标识- 返回:
- true=二级认证已通过, false=尚未进行二级认证或认证已超时
-
checkSafe
public void checkSafe()校验:当前会话是否已通过二级认证,如未通过则抛出异常 -
checkSafe
校验:检查当前会话是否已通过指定业务的二级认证,如未通过则抛出异常- 参数:
service- 业务标识
-
getSafeTime
public long getSafeTime()获取:当前会话的二级认证剩余有效时间(单位: 秒, 返回-2代表尚未通过二级认证)- 返回:
- 剩余有效时间
-
getSafeTime
获取:当前会话的二级认证剩余有效时间(单位: 秒, 返回-2代表尚未通过二级认证)- 参数:
service- 业务标识- 返回:
- 剩余有效时间
-
closeSafe
public void closeSafe()在当前会话 结束二级认证 -
closeSafe
在当前会话 结束指定业务标识的二级认证- 参数:
service- 业务标识
-
splicingKeyTokenName
获取:客户端 tokenName- 返回:
- key
-
splicingKeyTokenValue
拼接: 在保存 token - id 映射关系时,应该使用的key- 参数:
tokenValue- token值- 返回:
- key
-
splicingKeySession
拼接: 在保存 Account-Session 时,应该使用的 key- 参数:
loginId- 账号id- 返回:
- key
-
splicingKeyTokenSession
拼接:在保存 Token-Session 时,应该使用的 key- 参数:
tokenValue- token值- 返回:
- key
-
splicingKeyLastActiveTime
拼接: 在保存 token 最后活跃时间时,应该使用的 key- 参数:
tokenValue- token值- 返回:
- key
-
splicingKeySwitch
拼接:在进行临时身份切换时,应该使用的 key- 返回:
- key
-
splicingKeyJustCreatedSave
如果 token 为本次请求新创建的,则以此字符串为 key 存储在当前 request 中- 返回:
- key
-
splicingKeyDisable
拼接: 在保存服务封禁标记时,应该使用的 key- 参数:
loginId- 账号idservice- 具体封禁的服务- 返回:
- key
-
splicingKeySafe
拼接: 在保存业务二级认证标记时,应该使用的 key- 参数:
tokenValue- 要认证的 Tokenservice- 要认证的业务标识- 返回:
- key
-
getSaTokenDao
返回当前 StpLogic 使用的持久化对象- 返回:
- /
-
isOpenCheckActiveTimeout
public boolean isOpenCheckActiveTimeout()返回全局配置是否开启了 Token 活跃度校验,返回 true 代表已打开,返回 false 代表不打开,此时永不冻结 token- 返回:
- /
-
getConfigOfCookieTimeout
public int getConfigOfCookieTimeout()返回全局配置的 Cookie 保存时长,单位:秒 (根据全局 timeout 计算)- 返回:
- Cookie 应该保存的时长
-
getConfigOfMaxTryTimes
返回全局配置的 maxTryTimes 值,在每次创建 token 时,对其唯一性测试的最高次数(-1=不测试)- 参数:
loginParameter- /- 返回:
- /
-
hasElement
判断:集合中是否包含指定元素(模糊匹配)- 参数:
list- 集合element- 元素- 返回:
- /
-
isSupportExtra
public boolean isSupportExtra()当前 StpLogic 对象是否支持 token 扩展参数- 返回:
- /
-
createSaLoginParameter
根据当前配置对象创建一个 SaLoginParameter 对象- 返回:
- /
-
createSaLogoutParameter
根据当前配置对象创建一个 SaLogoutParameter 对象- 返回:
- /
-
getLoginDevice
已过时。请更换为 getLoginDeviceType
返回当前会话的登录设备类型- 返回:
- 当前令牌的登录设备类型
-
getLoginDeviceByToken
已过时。请更换为 getLoginDeviceTypeByToken
返回指定 token 会话的登录设备类型- 参数:
tokenValue- 指定token- 返回:
- 当前令牌的登录设备类型
-