1. 修改密码新增运控系统配置
parent
c6805509ae
commit
61e35acc10
|
@ -206,14 +206,14 @@ public class TrxServiceImpl implements TrxService {
|
||||||
|
|
||||||
// 处理ukey登录用户
|
// 处理ukey登录用户
|
||||||
log.info("开始软Key登录用户入库, userId:" + userId);
|
log.info("开始软Key登录用户入库, userId:" + userId);
|
||||||
saveUserByTrx(userId, trxAuthModel.getPassword());
|
saveUserByTrx(userId, "");
|
||||||
log.info("软Key登录用户入库结束");
|
log.info("软Key登录用户入库结束");
|
||||||
// 登录
|
// 登录
|
||||||
log.info("开始软Key登录用户登录云管平台");
|
log.info("开始软Key登录用户登录云管平台");
|
||||||
log.info("用户pass:" + trxAuthModel.getPassword());
|
log.info("用户pass:" + trxAuthModel.getPassword());
|
||||||
User user = userRepository.getByUserId(userId);
|
User user = userRepository.getByUserId(userId);
|
||||||
Encryptor encryptor = new AESEncryptor();
|
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 = userServiceImpl.login(user.getAccount(), password, null, null, true);
|
||||||
login.getData().put("trxToken", trxToken);
|
login.getData().put("trxToken", trxToken);
|
||||||
log.info("软Key登录用户登录云管平台结束");
|
log.info("软Key登录用户登录云管平台结束");
|
||||||
|
@ -244,11 +244,11 @@ public class TrxServiceImpl implements TrxService {
|
||||||
log.info("开始新增天融信登录用户,userId: " + userId);
|
log.info("开始新增天融信登录用户,userId: " + userId);
|
||||||
// 新增 以userId作为account 并添加注释
|
// 新增 以userId作为account 并添加注释
|
||||||
UserBean userBean = new UserBean();
|
UserBean userBean = new UserBean();
|
||||||
if (password.isEmpty()) {
|
// if (password.isEmpty()) {
|
||||||
userBean.setPassword(userId + "CMP");
|
userBean.setPassword(userId + "CMP");
|
||||||
} else {
|
// } else {
|
||||||
userBean.setPassword(password);
|
// userBean.setPassword(password);
|
||||||
}
|
// }
|
||||||
userBean.setSex(true);
|
userBean.setSex(true);
|
||||||
userBean.setIsManager(true);
|
userBean.setIsManager(true);
|
||||||
userBean.setUserId(userId);
|
userBean.setUserId(userId);
|
||||||
|
|
|
@ -13,6 +13,7 @@ import com.bocloud.sms.model.*;
|
||||||
import com.bocloud.sms.repository.*;
|
import com.bocloud.sms.repository.*;
|
||||||
import com.bocloud.sms.service.utils.ExportUtil;
|
import com.bocloud.sms.service.utils.ExportUtil;
|
||||||
import com.bocloud.sms.service.utils.ImportExcelUtil;
|
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.service.utils.YkUtils;
|
||||||
import com.bocloud.sms.utils.FavoriteComparator;
|
import com.bocloud.sms.utils.FavoriteComparator;
|
||||||
import com.google.common.collect.Lists;
|
import com.google.common.collect.Lists;
|
||||||
|
@ -667,50 +668,62 @@ public class UserServiceImpl implements UserService {
|
||||||
// 根据userId获取运控系统用户信息
|
// 根据userId获取运控系统用户信息
|
||||||
log.info("查询当前用户信息,userId: " + id);
|
log.info("查询当前用户信息,userId: " + id);
|
||||||
JSONObject params = new JSONObject();
|
JSONObject params = new JSONObject();
|
||||||
params.put("userId", String.valueOf(id));
|
|
||||||
params.put("oldPwd", oldPassword);
|
|
||||||
params.put("newPwd", password);
|
|
||||||
//请求运控修改密码机接口
|
|
||||||
JSONObject result = ykUtils.call(YkInf.updateUserPwd, params, JSONObject.class);
|
|
||||||
if (result.getInteger("returnCode") == 1) {
|
|
||||||
log.info("运控密码修改成功");
|
|
||||||
|
|
||||||
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();
|
Encryptor encryptor = new AESEncryptor();
|
||||||
// 对原密码解密,并校验。
|
// 对原密码解密,并校验。
|
||||||
oldPassword = encryptor.decrypt(oldPassword.trim(), null);
|
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);
|
password = encryptor.decrypt(password.trim(), null);
|
||||||
Assert.isTrue(StringUtils.hasText(password), "新密码不存在。");
|
String encryptoldPassword = MessageDigestUtils.encrypt(oldPassword, MessageDigestUtils.SHA_256);
|
||||||
String encrypt = sha.encrypt(password, salt);
|
String encryptPassword = MessageDigestUtils.encrypt(password, MessageDigestUtils.SHA_256);
|
||||||
user.setPassword(encrypt);
|
log.info("查询当前用户信息,password: " + encryptoldPassword);
|
||||||
user.setLastPwdModifyDate(new Date());
|
log.info("查询当前用户信息,newPassword: " + encryptPassword);
|
||||||
userRepository.update(user);
|
params.put("userId", String.valueOf(id));
|
||||||
// 准备随机数数据
|
params.put("oldPwd", encryptoldPassword);
|
||||||
AccountSecurity security = securityRepository.getByTarget(user.getId(), Catalog.User);
|
params.put("newPwd", encryptPassword);
|
||||||
security.setSalt(salt);
|
//请求运控修改密码机接口
|
||||||
// 更新随机数
|
JSONObject result = ykUtils.call(YkInf.updateUserPwd, params, JSONObject.class);
|
||||||
securityRepository.update(security);
|
log.info("请求运控修改密码机接口返回 : " + JSONObject.toJSONString(result));
|
||||||
return new Result(true, "修改密码成功");
|
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);
|
||||||
|
|
||||||
|
// }
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
return new Result(true, "修改密码失败");
|
return new Result(false, result.getString("msg"));
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
return new Result(false, "请求运控修改密码机接口失败");
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -132,16 +132,19 @@ public class MessageDigestUtils {
|
||||||
* Test
|
* Test
|
||||||
*/
|
*/
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
String source = "0aece0ff48aafb9c481826d13ef5e3c8b74e44b4584b28a0fe499aee108227e8db8470f4b9f9ac5d2ab508a9ff84312da9f1646a8b5ed6570fd2f27790460e47";
|
// String source = "0aece0ff48aafb9c481826d13ef5e3c8b74e44b4584b28a0fe499aee108227e8db8470f4b9f9ac5d2ab508a9ff84312da9f1646a8b5ed6570fd2f27790460e47";
|
||||||
System.out.println("Source String:" + source);
|
String source = "123456";
|
||||||
System.out.println("Encrypted String:");
|
//123456 加密后的数据
|
||||||
System.out.println("Use MD5: " + MessageDigestUtils.encrypt(source, MessageDigestUtils.MD5));
|
// String source22 = "8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92";
|
||||||
System.out.println("Use SHA-1: " + MessageDigestUtils.encrypt(source, MessageDigestUtils.SHA_1));
|
// 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-256: " + MessageDigestUtils.encrypt(source, MessageDigestUtils.SHA_256));
|
||||||
System.out.println("Use SHA-384: " + MessageDigestUtils.encrypt(source, MessageDigestUtils.SHA_384));
|
// 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-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));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue