Commit 32e02a49 authored by fangxinjiang's avatar fangxinjiang

Merge remote-tracking branch 'origin/MVP1.5.2' into MVP1.5.2

parents 73477ea4 5a694292
package com.yifu.cloud.plus.v1.yifu.auth.config;
public class CASproperties {
/**
* 当前应用程序的baseUrl(注意最后面的斜线)
*/
public static String CLIENT_SERVER_NAME = "https://qas-mvp-1.worfu.com/";
/**
* 当前应用程序的登陆界面
......@@ -16,15 +12,7 @@ public class CASproperties {
*/
public static String CAS_SERVER_PATH = "http://192.168.1.62:8443/cas";
/**
* CAS登陆服务器地址
*/
public static String CAS_SERVER_LOGIN_PATH = "http://192.168.1.62:8443/cas/login";
/**
* CAS登出服务器地址
*/
public static String CAS_SERVER_LOGOUT_PATH = "http://192.168.1.62:8443/cas/logout";
public static String SPRING_SECURITY_CAS_SERVER = "http://192.168.1.62:8443/cas/v1/tickets";
}
......@@ -3,6 +3,8 @@ package com.yifu.cloud.plus.v1.yifu.auth.filter;
import cn.hutool.crypto.Mode;
import cn.hutool.crypto.Padding;
import cn.hutool.crypto.symmetric.AES;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.yifu.cloud.plus.v1.yifu.auth.config.CASproperties;
import com.yifu.cloud.plus.v1.yifu.common.core.util.Common;
import com.yifu.cloud.plus.v1.yifu.common.security.token.CasAuthenticationToken;
......@@ -51,12 +53,9 @@ public class PasswordDecoderFilter extends UsernamePasswordAuthenticationFilter
throw new AuthenticationServiceException("Authentication method not supported: " + request.getMethod());
} else {
AbstractAuthenticationToken authRequest;
String result = request.getParameter("cas");
String username = this.obtainUsername(request);
username = username != null ? username : "";
username = username.trim();
if (Common.isNotNull(result)) {
String casResult = request.getParameter("cas");
if (Common.isNotNull(casResult)) {
String ldapName = "";
try {
RestTemplate restTemplate = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
......@@ -64,18 +63,35 @@ public class PasswordDecoderFilter extends UsernamePasswordAuthenticationFilter
MultiValueMap<String,Object> wholeForm = new LinkedMultiValueMap<>();
wholeForm.add("service", CASproperties.CLIENT_LOGIN_PAGE);
HttpEntity<MultiValueMap<String,Object>> entity = new org.springframework.http.HttpEntity<>(wholeForm,headers);
ResponseEntity<String> obj = restTemplate.exchange(CASproperties.SPRING_SECURITY_CAS_SERVER + "/" + result, HttpMethod.POST, entity, String.class);
ResponseEntity<String> obj = restTemplate.exchange(CASproperties.SPRING_SECURITY_CAS_SERVER + "/" + casResult, HttpMethod.POST, entity, String.class);
if (obj.getStatusCode().value() == 200) {
String st = obj.getBody();
log.info("Successful service ticket request: " + st);
wholeForm.clear();
wholeForm.add("service", CASproperties.CLIENT_LOGIN_PAGE);
wholeForm.add("ticket", st);
obj = restTemplate.getForEntity(CASproperties.CAS_SERVER_PATH + "/p3/serviceValidate?service=" + CASproperties.CLIENT_LOGIN_PAGE + "&ticket=" + st + "&format=JSON"
, String.class,CASproperties.CLIENT_LOGIN_PAGE,st,"JSON");
log.info("cas返回用户信息》》》",JSON.toJSONString(obj));
if(obj.getStatusCode().value() == 200){
try {
JSONObject result = JSON.parseObject(obj.getBody());
ldapName = result.getJSONObject("serviceResponse").getJSONObject("authenticationSuccess").getString("user");
}catch (Exception var6){
throw new AuthenticationServiceException("验证失败!统一用户中心未正确获得用户信息!");
}
}
}
} catch (Exception e) {
log.error(e.getMessage());
throw new AuthenticationServiceException("验证失败!");
}
authRequest = new CasAuthenticationToken(username, null);
authRequest = new CasAuthenticationToken(ldapName, null);
} else {
String username = this.obtainUsername(request);
username = username != null ? username : "";
username = username.trim();
String password = this.obtainPassword(request);
password = password != null ? decryptAES(password) : "";
authRequest = new UsernamePasswordAuthenticationToken(username, password);
......
......@@ -3492,6 +3492,7 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
List<TInsuranceEkp> ekpList;
for (int i = 0; i < distinctList.size(); i++) {
param = distinctList.get(i);
param.setFlag(CommonConstants.ONE_STRING);
// 必填校验
if (StringUtils.isBlank(param.getEmpName())){
param.setErrorMessage(InsurancesConstants.EMP_NAME_NOT_EMPTY);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment