修改互联网单点登录
This commit is contained in:
@@ -111,7 +111,8 @@ public class SecurityConfig
|
||||
.authorizeHttpRequests((requests) -> {
|
||||
permitAllUrl.getUrls().forEach(url -> requests.antMatchers(url).permitAll());
|
||||
// 对于登录login 注册register 验证码captchaImage 允许匿名访问
|
||||
requests.antMatchers("/login", "/register", "/captchaImage","/app/login","/websocket/**","/speech-recognition","/speech-synthesis","/cms/company/listPage","/cms/appUser/noTmlist","/getTjmhToken","/getWwTjmhToken").permitAll()
|
||||
requests.antMatchers("/login", "/register", "/captchaImage","/app/login","/websocket/**","/speech-recognition","/speech-synthesis",
|
||||
"/cms/company/listPage","/cms/appUser/noTmlist","/getTjmhToken","/getWwTjmhToken","/getWwTjmHlwToken").permitAll()
|
||||
// 静态资源,可匿名访问
|
||||
.antMatchers(HttpMethod.GET, "/", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**").permitAll()
|
||||
// 移动端公用查询,可匿名访问
|
||||
|
||||
@@ -217,4 +217,28 @@ public class OauthLoginHlwService {
|
||||
sysUser.setLoginDate(new Date());
|
||||
sysUserService.updateUserProfile(sysUser);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取互联网token
|
||||
* @param wwTokenResult
|
||||
* @return
|
||||
*/
|
||||
public String getWwTjmHlwToken(WwTokenResult wwTokenResult){
|
||||
try {
|
||||
//获取门户userInfo
|
||||
WwTyInfo portalUser = oauthClient.wwGetUserInfo(wwTokenResult);
|
||||
//匹配/创建本地用户
|
||||
String localUsername = getOrCreateLocalUser(portalUser);
|
||||
//执行原来的登录流程
|
||||
Authentication authentication = authenticateLocalUser(localUsername);
|
||||
AsyncManager.me().execute(AsyncFactory.recordLogininfor(localUsername, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success")));
|
||||
LoginUser loginUser = (LoginUser) authentication.getPrincipal();
|
||||
|
||||
storePortalToken(loginUser.getUserId(), wwTokenResult.getAccessToken());
|
||||
recordLoginInfo(loginUser.getUserId());
|
||||
return tokenService.createToken(loginUser);
|
||||
} catch (Exception e) {
|
||||
throw new ServiceException("OAuth 登录失败:" + e.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user