123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- package com.gihon.sso.service;
- import java.util.List;
- import com.gihon.sso.entity.vo.LoginUser;
- import com.gihon.sso.entity.vo.SsoToken;
- import com.gihon.sso.entity.vo.TokenVal;
- import com.gihon.sso.entity.vo.UserInfo;
- /**
- * 管理Token
- *
- * @author baihe
- *
- */
- public interface TokenService {
- final static String TOKEN_PRE = "SSO_TOKEN_";// 存储 用户账号,过期时间,resfresh_token
- final static String USER_TOKEN_STORE = "SSO_USER_TOKEN_STORE";// 按照用户账号存储 token和refreshtoken
- final static String REFRESH_TOKEN_PRE = "SSO_TOKEN_REFRESH_";// 存储token,过期时间,用户账号
- final static String USER_STORE = "SSO_USER_STORE";
- final static long TOKEN_EXPIRED = 1000 * 60 * 60 * 24L;// 24小时
- final static long REFRESH_TOKEN_EXPIRED = 1000 * 60 * 60 * 72L;// 72小时
- final static long EXIPRED_MORE = 1000 * 60;
- String getUserName(String securityToken);
- /**
- * 创建token
- *
- * @param userInfo
- * @return
- */
- SsoToken createToken(UserInfo userInfo, int moduleType);
- /**
- * 刷新Token
- *
- * @param refreshToken
- * @return
- */
- SsoToken refreshToken(String refreshToken);
- /**
- * 获取Token信息
- *
- * @param token
- * @return
- */
- UserInfo checkToken(LoginUser loginUser);
- /**
- * 检测token有效并获取到用户信息
- *
- * @param token
- * @return
- */
- UserInfo checkTokenInfo(String token);
- /**
- * 可以账号多地点登录时候的Token
- *
- * @param token
- * @return
- */
- List<TokenVal> getTokenByAccount(String account);
- /**
- * 获取token
- *
- * @param token
- * @return
- */
- TokenVal getTokenVal(String token);
- /**
- * 清理Token
- *
- * @param token
- */
- void clearToken(String token);
- /**
- * 自动清理 token信息
- *
- * @param refreshToken
- * @param account
- */
- void autoClearRefreshToken(String refreshToken, String account);
- /**
- * 通过账号获取用户信息
- *
- * @param account
- * @return
- */
- UserInfo getUserInfo(String account);
- }
|