package tech.powerjob.server.auth.login;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
/**
|
* 第三方登录服务
|
*
|
* @author tjq
|
* @since 2024/2/10
|
*/
|
public interface ThirdPartyLoginService {
|
|
/**
|
* 登陆服务的类型
|
* @return 登陆服务类型,比如 PowerJob / DingTalk
|
*/
|
LoginTypeInfo loginType();
|
|
/**
|
* 生成登陆的重定向 URL
|
* @param httpServletRequest http请求
|
* @return 重定向地址
|
*/
|
String generateLoginUrl(HttpServletRequest httpServletRequest);
|
|
/**
|
* 执行第三方登录
|
* @param loginRequest 上下文
|
* @return 登录地址
|
*/
|
ThirdPartyUser login(ThirdPartyLoginRequest loginRequest);
|
|
/**
|
* JWT 登录的回调校验
|
* @param username 用户名称
|
* @param tokenLoginVerifyInfo 二次校验信息
|
* @return 是否通过
|
*/
|
default boolean tokenLoginVerify(String username, TokenLoginVerifyInfo tokenLoginVerifyInfo) {
|
return true;
|
}
|
}
|