类 SecurityContext
java.lang.Object
com.elitesland.ystdms.sys.security.SecurityContext
Security 上下文工具类
提供从 JWT Token 中获取用户信息的能力,以及通过 Feign 获取扩展信息
-
构造器概要
构造器 -
方法概要
修饰符和类型方法说明static voidclear()getAllOu()获取所有公司信息static <T> Tstatic SysEmployeeDTO获取当前登录用户的员工信息static SysOrgRespRpcDTO获取当前用户所属的组织信息获取当前用户所属的公司信息static StringgetDept()获取部门static SysEmployeeDTOgetEmployee(String username) 获取指定用户的员工信息static SysEmployeeDTOgetEmployeeByUserId(UUID userId) 根据 userId 获取员工信息static SysUserDTO获取外部系统的用户信息static org.springframework.security.oauth2.jwt.JwtgetJwt()static SysOrgRespRpcDTO获取指定ID的组织信息static String获取原始令牌字符串 优先返回已解析的JWT令牌,如果不存在则返回原始令牌字符串getRoles()获取角色列表static Stringstatic String获取Token类型static String获取用户ID(从JWT的subject中获取)static String获取用户名static booleanhasToken()判断是否有令牌(无论是解析后的JWT还是原始令牌)static boolean判断当前是否已认证(有有效的JWT或有外部系统用户信息)static voidsetExternalUser(SysUserDTO user) 设置外部系统的用户信息 当JWT解析失败(外部系统的令牌)时,通过Feign获取用户信息后设置static voidsetJwt(org.springframework.security.oauth2.jwt.Jwt jwt) static voidsetRawToken(String token) 设置原始令牌字符串 用于JWT解析失败时仍能将令牌传递给Feign调用static void设置 SecurityContextService 实例 通过配置类手动调用
-
构造器详细资料
-
SecurityContext
public SecurityContext()
-
-
方法详细资料
-
setSecurityContextService
设置 SecurityContextService 实例 通过配置类手动调用 -
setJwt
public static void setJwt(org.springframework.security.oauth2.jwt.Jwt jwt) -
getJwt
public static org.springframework.security.oauth2.jwt.Jwt getJwt() -
setRawToken
设置原始令牌字符串 用于JWT解析失败时仍能将令牌传递给Feign调用- 参数:
token- 原始JWT令牌字符串
-
setExternalUser
设置外部系统的用户信息 当JWT解析失败(外部系统的令牌)时,通过Feign获取用户信息后设置- 参数:
user- 外部系统用户信息
-
getExternalUser
获取外部系统的用户信息- 返回:
- 外部系统用户信息,如果不存在则返回null
-
getRawToken
获取原始令牌字符串 优先返回已解析的JWT令牌,如果不存在则返回原始令牌字符串- 返回:
- 令牌字符串,如果都没有则返回null
-
hasToken
public static boolean hasToken()判断是否有令牌(无论是解析后的JWT还是原始令牌) -
clear
public static void clear() -
getSubject
-
getUserId
获取用户ID(从JWT的subject中获取) -
getUsername
获取用户名 -
getDept
获取部门 -
getRoles
获取角色列表 -
getTokenType
获取Token类型 -
isAuthenticated
public static boolean isAuthenticated()判断当前是否已认证(有有效的JWT或有外部系统用户信息) -
getClaim
-
getCurrentEmployee
获取当前登录用户的员工信息- 返回:
- 员工信息,如果未登录或查询失败则返回 null
-
getEmployee
获取指定用户的员工信息- 参数:
username- 用户名- 返回:
- 员工信息,如果查询失败则返回 null
-
getEmployeeByUserId
根据 userId 获取员工信息 -
getCurrentOrg
获取当前用户所属的组织信息- 返回:
- 组织信息,如果未登录或查询失败则返回 null
-
getOrg
获取指定ID的组织信息- 参数:
orgId- 组织ID- 返回:
- 组织信息,如果查询失败则返回 null
-
getCurrentOu
获取当前用户所属的公司信息- 返回:
- 公司信息列表,如果未登录或查询失败则返回 null
-
getAllOu
获取所有公司信息- 返回:
- 公司信息列表,如果查询失败则返回 null
-