Package com.elitesland.ystdms.sys.feign
Interface JwtAuthClient
- All Superinterfaces:
JwtAuthApi
@FeignClient(name="${yst.service.system:yst-dms2-newsys}",
path="/api/v1/jwt")
public interface JwtAuthClient
extends JwtAuthApi
JWT认证Feign客户端
其他业务域通过Feign调用newsyc-core获取JWT服务
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.elitesland.ystdms.sys.api.JwtAuthApi
JwtAuthApi.UserInfoResponse -
Method Summary
Modifier and TypeMethodDescriptiongenerateJwtByUserId(UUID userId) 根据用户主键签发对外访问 JWT 字符串(规则与JwtAuthApi.generateJwtByUsername(String)一致,不含密码校验)。 仅限受信任的服务间调用,请配合网络与权限控制使用。generateJwtByUsername(String username) 根据登录账号签发对外访问 JWT 字符串(规则与登录成功后的 accessToken 一致,不含密码校验)。 仅限受信任的服务间调用,请配合网络与权限控制使用。generateToken(JwtTokenRequest request) 生成JWT令牌generateTokenForCurrentUser(Integer expiration) 基于当前登录用户上下文生成 HS256(对称密钥)JWT获取当前登录用户信息hasPermission(String permission) 检查当前用户权限parseToken(JwtValidationRequest request) 解析JWT令牌refreshToken(JwtValidationRequest request) 刷新JWT令牌validateToken(JwtValidationRequest request) 验证JWT令牌
-
Method Details
-
generateToken
@PostMapping("/generate") ApiResult<JwtTokenResponse> generateToken(@RequestBody JwtTokenRequest request) Description copied from interface:JwtAuthApi生成JWT令牌- Specified by:
generateTokenin interfaceJwtAuthApi- Parameters:
request- 令牌生成请求- Returns:
- 令牌响应
-
generateTokenForCurrentUser
@PostMapping("/generate/current") ApiResult<JwtTokenResponse> generateTokenForCurrentUser(@RequestParam(value="expiration",required=false) Integer expiration) Description copied from interface:JwtAuthApi基于当前登录用户上下文生成 HS256(对称密钥)JWT- Specified by:
generateTokenForCurrentUserin interfaceJwtAuthApi- Parameters:
expiration- 过期时间(秒),可选;不传则使用默认配置- Returns:
- 令牌响应
-
generateJwtByUsername
@PostMapping("/generate/by-username") ApiResult<String> generateJwtByUsername(@RequestParam("username") String username) Description copied from interface:JwtAuthApi根据登录账号签发对外访问 JWT 字符串(规则与登录成功后的 accessToken 一致,不含密码校验)。 仅限受信任的服务间调用,请配合网络与权限控制使用。- Specified by:
generateJwtByUsernamein interfaceJwtAuthApi- Parameters:
username- 登录账号- Returns:
- JWT 字符串
-
generateJwtByUserId
@PostMapping("/generate/by-user-id") ApiResult<String> generateJwtByUserId(@RequestParam("userId") UUID userId) Description copied from interface:JwtAuthApi根据用户主键签发对外访问 JWT 字符串(规则与JwtAuthApi.generateJwtByUsername(String)一致,不含密码校验)。 仅限受信任的服务间调用,请配合网络与权限控制使用。- Specified by:
generateJwtByUserIdin interfaceJwtAuthApi- Parameters:
userId- 用户主键- Returns:
- JWT 字符串
-
validateToken
@PostMapping("/validate") ApiResult<JwtValidationResponse> validateToken(@RequestBody JwtValidationRequest request) Description copied from interface:JwtAuthApi验证JWT令牌- Specified by:
validateTokenin interfaceJwtAuthApi- Parameters:
request- 验证请求- Returns:
- 验证响应
-
parseToken
@PostMapping("/parse") ApiResult<JwtValidationResponse> parseToken(@RequestBody JwtValidationRequest request) Description copied from interface:JwtAuthApi解析JWT令牌- Specified by:
parseTokenin interfaceJwtAuthApi- Parameters:
request- 解析请求- Returns:
- 解析响应
-
refreshToken
@PostMapping("/refresh") ApiResult<JwtTokenResponse> refreshToken(@RequestBody JwtValidationRequest request) Description copied from interface:JwtAuthApi刷新JWT令牌- Specified by:
refreshTokenin interfaceJwtAuthApi- Parameters:
request- 包含原token的请求- Returns:
- 新的令牌
-
getCurrentUser
Description copied from interface:JwtAuthApi获取当前登录用户信息- Specified by:
getCurrentUserin interfaceJwtAuthApi- Returns:
- 当前用户信息
-
hasPermission
@GetMapping("/user/permission") ApiResult<Boolean> hasPermission(@RequestParam("permission") String permission) Description copied from interface:JwtAuthApi检查当前用户权限- Specified by:
hasPermissionin interfaceJwtAuthApi- Parameters:
permission- 权限标识- Returns:
- 是否拥有权限
-