diff --git a/i-taxsso-core/src/main/java/com/dxhy/SaveCookieController.java b/i-taxsso-core/src/main/java/com/dxhy/SaveCookieController.java index 3a3185e..9b4b535 100644 --- a/i-taxsso-core/src/main/java/com/dxhy/SaveCookieController.java +++ b/i-taxsso-core/src/main/java/com/dxhy/SaveCookieController.java @@ -21,7 +21,7 @@ import javax.servlet.http.HttpServletResponse; @Slf4j public class SaveCookieController { - @Value("${dxhy.sso.redirect_url:''}") + @Value("${oauth.singleLogin:''}") private String redirectUrl; /** diff --git a/itaxBase-admin/src/main/java/com/dxhy/itax/config/ItaxAdminConfig.java b/itaxBase-admin/src/main/java/com/dxhy/itax/config/ItaxAdminConfig.java index 3733ca4..1191bb5 100644 --- a/itaxBase-admin/src/main/java/com/dxhy/itax/config/ItaxAdminConfig.java +++ b/itaxBase-admin/src/main/java/com/dxhy/itax/config/ItaxAdminConfig.java @@ -81,6 +81,11 @@ public class ItaxAdminConfig { private String pwdAesKey; + @Value("${oauth.singleLogin}") + private String lxOauth; + + @Value("${oauth.whitelist}") + private String whitelist; diff --git a/itaxBase-admin/src/main/java/com/dxhy/itax/modules/common/controller/WebController.java b/itaxBase-admin/src/main/java/com/dxhy/itax/modules/common/controller/WebController.java index ed20e23..40a303b 100644 --- a/itaxBase-admin/src/main/java/com/dxhy/itax/modules/common/controller/WebController.java +++ b/itaxBase-admin/src/main/java/com/dxhy/itax/modules/common/controller/WebController.java @@ -115,9 +115,6 @@ public class WebController { @Autowired private OATokenService oaTokenService; - @Value("${oauth.whitelist}") - private String whitelist; - private Set urlSet = new HashSet(); private final String firCount = "1"; @@ -224,6 +221,11 @@ public class WebController { response.sendRedirect(url); } + @RequestMapping("/sso/singleLogin") + public void singleLogin(HttpServletResponse response) throws IOException { + response.sendRedirect(itaxAdminConfig.getLxOauth()); + } + @RequestMapping("/singleLogin") public void reOA(@RequestParam Map params,HttpServletResponse response) throws IOException { Object code = params.get("code"); @@ -389,6 +391,14 @@ public class WebController { @RequestBody LoginModel loginModel) { String username = loginModel.getDxhyu(); log.info("用户{},登录开始", username); + + String name = AESUtil.aesDecrypt(username); + log.info("用户{},解密后用户名是{}", username, name); + if (StringUtils.isBlank(itaxAdminConfig.getWhitelist()) || !Arrays.asList(itaxAdminConfig.getWhitelist()).contains(name)){ + log.info("用户{},登录失败,未配置白名单", name); + return new ReturnT(FAIL_CODE, "请使用统一认证方式登陆,临时使用请联系管理员开通白名单"); + } + boolean ifRem = (loginModel.getIfRemember() != null && "on".equals(loginModel.getIfRemember())) ? true : false; @@ -636,9 +646,9 @@ public class WebController { if (xxlUser == null) { returnT = Result.error(11001, "未登录"); if(ConfigureConstant.STRING_1.equals(itaxAdminConfig.userCenterType())){ - returnT.put("redirectUrl",itaxAdminConfig.getRedirectUrl()); + returnT.put("redirectUrl",itaxAdminConfig.getLxOauth()); }else { - returnT.put("redirectUrl",itaxAdminConfig.getOmpRedirectUrl()); + returnT.put("redirectUrl",itaxAdminConfig.getLxOauth()); } return returnT; } else { diff --git a/itaxBase-admin/src/main/java/com/dxhy/itax/modules/management/controller/SysUserController.java b/itaxBase-admin/src/main/java/com/dxhy/itax/modules/management/controller/SysUserController.java index 90792dc..cb706a2 100644 --- a/itaxBase-admin/src/main/java/com/dxhy/itax/modules/management/controller/SysUserController.java +++ b/itaxBase-admin/src/main/java/com/dxhy/itax/modules/management/controller/SysUserController.java @@ -33,6 +33,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; +import java.net.URLEncoder; import java.nio.charset.StandardCharsets; import java.util.*; @@ -273,9 +274,10 @@ public class SysUserController { } public static void main(String[] args) throws UnsupportedEncodingException { - String ysq = AESUtil.aesEncrypt("ysq"); - String s = AESUtil.aesEncrypt("admin@123"); - System.out.println("dxhyu="+ysq+"&dxhyp="+s); + String ysq = URLEncoder.encode(AESUtil.aesEncrypt("shunhe"), "UTF-8"); + String s = URLEncoder.encode(AESUtil.aesEncrypt("admin@1234"), "UTF-8"); + System.out.println("http://10.18.90.125:10000/itaxAdmin/otherLogin?dxhyu="+ysq+"&dxhyp="+s); + System.out.println("http://10.18.90.124:10000/itaxAdmin/otherLogin?dxhyu="+ysq+"&dxhyp="+s); }