diff --git a/bocloud.sms.service/src/main/java/com/bocloud/sms/service/TrxServiceImpl.java b/bocloud.sms.service/src/main/java/com/bocloud/sms/service/TrxServiceImpl.java index 218f861..1b88e3f 100644 --- a/bocloud.sms.service/src/main/java/com/bocloud/sms/service/TrxServiceImpl.java +++ b/bocloud.sms.service/src/main/java/com/bocloud/sms/service/TrxServiceImpl.java @@ -206,14 +206,14 @@ public class TrxServiceImpl implements TrxService { // 处理ukey登录用户 log.info("开始软Key登录用户入库, userId:" + userId); - saveUserByTrx(userId, trxAuthModel.getPassword()); + saveUserByTrx(userId, ""); log.info("软Key登录用户入库结束"); // 登录 log.info("开始软Key登录用户登录云管平台"); log.info("用户pass:" + trxAuthModel.getPassword()); User user = userRepository.getByUserId(userId); Encryptor encryptor = new AESEncryptor(); - String password = encryptor.encrypt(trxAuthModel.getPassword(), null); + String password = encryptor.encrypt(userId + "CMP", null); login = userServiceImpl.login(user.getAccount(), password, null, null, true); login.getData().put("trxToken", trxToken); log.info("软Key登录用户登录云管平台结束"); @@ -244,11 +244,11 @@ public class TrxServiceImpl implements TrxService { log.info("开始新增天融信登录用户,userId: " + userId); // 新增 以userId作为account 并添加注释 UserBean userBean = new UserBean(); - if (password.isEmpty()) { - userBean.setPassword(userId + "CMP"); - } else { - userBean.setPassword(password); - } +// if (password.isEmpty()) { + userBean.setPassword(userId + "CMP"); +// } else { +// userBean.setPassword(password); +// } userBean.setSex(true); userBean.setIsManager(true); userBean.setUserId(userId); diff --git a/bocloud.sms.service/src/main/java/com/bocloud/sms/service/UserServiceImpl.java b/bocloud.sms.service/src/main/java/com/bocloud/sms/service/UserServiceImpl.java index c180b7e..16569be 100644 --- a/bocloud.sms.service/src/main/java/com/bocloud/sms/service/UserServiceImpl.java +++ b/bocloud.sms.service/src/main/java/com/bocloud/sms/service/UserServiceImpl.java @@ -13,6 +13,7 @@ import com.bocloud.sms.model.*; import com.bocloud.sms.repository.*; import com.bocloud.sms.service.utils.ExportUtil; import com.bocloud.sms.service.utils.ImportExcelUtil; +import com.bocloud.sms.service.utils.MessageDigestUtils; import com.bocloud.sms.service.utils.YkUtils; import com.bocloud.sms.utils.FavoriteComparator; import com.google.common.collect.Lists; @@ -667,50 +668,62 @@ public class UserServiceImpl implements UserService { // 根据userId获取运控系统用户信息 log.info("查询当前用户信息,userId: " + id); JSONObject params = new JSONObject(); + Encryptor encryptor = new AESEncryptor(); + // 对原密码解密,并校验。 + oldPassword = encryptor.decrypt(oldPassword.trim(), null); + password = encryptor.decrypt(password.trim(), null); + String encryptoldPassword = MessageDigestUtils.encrypt(oldPassword, MessageDigestUtils.SHA_256); + String encryptPassword = MessageDigestUtils.encrypt(password, MessageDigestUtils.SHA_256); + log.info("查询当前用户信息,password: " + encryptoldPassword); + log.info("查询当前用户信息,newPassword: " + encryptPassword); params.put("userId", String.valueOf(id)); - params.put("oldPwd", oldPassword); - params.put("newPwd", password); + params.put("oldPwd", encryptoldPassword); + params.put("newPwd", encryptPassword); //请求运控修改密码机接口 JSONObject result = ykUtils.call(YkInf.updateUserPwd, params, JSONObject.class); - if (result.getInteger("returnCode") == 1) { - log.info("运控密码修改成功"); + log.info("请求运控修改密码机接口返回 : " + JSONObject.toJSONString(result)); + if(org.apache.commons.lang3.StringUtils.isNotEmpty(JSONObject.toJSONString(result))){ + if (result.getInteger("returnCode") == 1) { + log.info("运控密码修改成功"); + return new Result(true, result.getString("msg")); +// String path = User.class.getSimpleName() + "_" + id; +// try (AutoCloseLock lock = lockFactory.getACLock(path)) { +// Assert.isTrue(lock.acquire(10, TimeUnit.SECONDS), "请求超时"); +// Assert.isTrue(id.equals(requestContext.getTarget()), "非法请求"); +// User user = userRepository.query(id); +// Assert.notNull(user, "用户信息不存在!"); +// String salt = UUID.randomUUID().toString(); +// // 加密 +// SHAEncryptor sha = new SHAEncryptor(); +// Encryptor encryptor = new AESEncryptor(); +// // 对原密码解密,并校验。 +// oldPassword = encryptor.decrypt(oldPassword.trim(), null); +// Assert.isTrue(StringUtils.hasText(oldPassword), "旧密码不存在"); +// Result checkResult = this.check(id, oldPassword); +// if (checkResult.isFailed()) { +// return checkResult; +// } +// // 对前端传过来的密码进行解密 +// password = encryptor.decrypt(password.trim(), null); +// Assert.isTrue(StringUtils.hasText(password), "新密码不存在。"); +// String encrypt = sha.encrypt(password, salt); +// user.setPassword(encrypt); +// user.setLastPwdModifyDate(new Date()); +// userRepository.update(user); +// // 准备随机数数据 +// AccountSecurity security = securityRepository.getByTarget(user.getId(), Catalog.User); +// security.setSalt(salt); +// // 更新随机数 +// securityRepository.update(security); - String path = User.class.getSimpleName() + "_" + id; - try (AutoCloseLock lock = lockFactory.getACLock(path)) { - Assert.isTrue(lock.acquire(10, TimeUnit.SECONDS), "请求超时"); - Assert.isTrue(id.equals(requestContext.getTarget()), "非法请求"); - User user = userRepository.query(id); - Assert.notNull(user, "用户信息不存在!"); - String salt = UUID.randomUUID().toString(); - // 加密 - SHAEncryptor sha = new SHAEncryptor(); - Encryptor encryptor = new AESEncryptor(); - // 对原密码解密,并校验。 - oldPassword = encryptor.decrypt(oldPassword.trim(), null); - Assert.isTrue(StringUtils.hasText(oldPassword), "旧密码不存在"); - Result checkResult = this.check(id, oldPassword); - if (checkResult.isFailed()) { - return checkResult; - } - // 对前端传过来的密码进行解密 - password = encryptor.decrypt(password.trim(), null); - Assert.isTrue(StringUtils.hasText(password), "新密码不存在。"); - String encrypt = sha.encrypt(password, salt); - user.setPassword(encrypt); - user.setLastPwdModifyDate(new Date()); - userRepository.update(user); - // 准备随机数数据 - AccountSecurity security = securityRepository.getByTarget(user.getId(), Catalog.User); - security.setSalt(salt); - // 更新随机数 - securityRepository.update(security); - return new Result(true, "修改密码成功"); +// } + + } else { + return new Result(false, result.getString("msg")); } - - } else { - return new Result(true, "修改密码失败"); + }else { + return new Result(false, "请求运控修改密码机接口失败"); } - } @Override diff --git a/bocloud.sms.service/src/main/java/com/bocloud/sms/service/utils/MessageDigestUtils.java b/bocloud.sms.service/src/main/java/com/bocloud/sms/service/utils/MessageDigestUtils.java index ef0b947..8766cbd 100644 --- a/bocloud.sms.service/src/main/java/com/bocloud/sms/service/utils/MessageDigestUtils.java +++ b/bocloud.sms.service/src/main/java/com/bocloud/sms/service/utils/MessageDigestUtils.java @@ -132,16 +132,19 @@ public class MessageDigestUtils { * Test */ public static void main(String[] args) { - String source = "0aece0ff48aafb9c481826d13ef5e3c8b74e44b4584b28a0fe499aee108227e8db8470f4b9f9ac5d2ab508a9ff84312da9f1646a8b5ed6570fd2f27790460e47"; - System.out.println("Source String:" + source); - System.out.println("Encrypted String:"); - System.out.println("Use MD5: " + MessageDigestUtils.encrypt(source, MessageDigestUtils.MD5)); - System.out.println("Use SHA-1: " + MessageDigestUtils.encrypt(source, MessageDigestUtils.SHA_1)); +// String source = "0aece0ff48aafb9c481826d13ef5e3c8b74e44b4584b28a0fe499aee108227e8db8470f4b9f9ac5d2ab508a9ff84312da9f1646a8b5ed6570fd2f27790460e47"; + String source = "123456"; + //123456 加密后的数据 +// String source22 = "8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92"; +// System.out.println("Source String:" + source); +// System.out.println("Encrypted String:"); +// System.out.println("Use MD5: " + MessageDigestUtils.encrypt(source, MessageDigestUtils.MD5)); +// System.out.println("Use SHA-1: " + MessageDigestUtils.encrypt(source, MessageDigestUtils.SHA_1)); System.out.println("Use SHA-256: " + MessageDigestUtils.encrypt(source, MessageDigestUtils.SHA_256)); - System.out.println("Use SHA-384: " + MessageDigestUtils.encrypt(source, MessageDigestUtils.SHA_384)); - System.out.println("Use SHA-512: " + MessageDigestUtils.encrypt(source, MessageDigestUtils.SHA_512)); +// System.out.println("Use SHA-384: " + MessageDigestUtils.encrypt(source, MessageDigestUtils.SHA_384)); +// System.out.println("Use SHA-512: " + MessageDigestUtils.encrypt(source, MessageDigestUtils.SHA_512)); - System.out.println("MD5 Salt: " + MessageDigestUtils.encryptWithSalt(source, "sxp", MessageDigestUtils.MD5)); +// System.out.println("MD5 Salt: " + MessageDigestUtils.encryptWithSalt(source, "sxp", MessageDigestUtils.MD5)); } }