diff --git a/chsm-common/src/main/java/com/sunyard/chsm/service/TmkService.java b/chsm-common/src/main/java/com/sunyard/chsm/service/TmkService.java index 5074ba6..cbd8843 100644 --- a/chsm-common/src/main/java/com/sunyard/chsm/service/TmkService.java +++ b/chsm-common/src/main/java/com/sunyard/chsm/service/TmkService.java @@ -26,6 +26,7 @@ import org.bouncycastle.asn1.x509.SubjectPublicKeyInfo; import org.bouncycastle.jcajce.provider.asymmetric.ec.BCECPublicKey; import org.bouncycastle.jce.provider.BouncyCastleProvider; import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.Assert; import org.springframework.util.ObjectUtils; import org.springframework.util.StringUtils; @@ -47,6 +48,7 @@ public class TmkService { private final SpDeviceMapper spDeviceMapper; private final ParamConfMapper paramConfMapper; + @Transactional public void initTmk() { boolean tmkInit = isTmkInit(); Assert.isTrue(!tmkInit, "主密钥已经初始化"); @@ -149,6 +151,7 @@ public class TmkService { return Pair.of(device.getId(), CodecUtils.encodeBase64(publicKey.getEncoded())); } + @Transactional public void importTmk(Long deviceId, String encTmk) { boolean tmkInit = isTmkInit(); Assert.isTrue(!tmkInit, "主密钥已经初始化"); @@ -323,7 +326,7 @@ public class TmkService { private boolean enableSoftDevice; private byte[] softEncTmk; - public synchronized boolean isTmkInit() { + public synchronized boolean isTmkInitCached() { if (tmkInit) { return true; } @@ -332,6 +335,11 @@ public class TmkService { return tmkInit; } + public boolean isTmkInit() { + ParamConf conf = paramConfMapper.selectByKey(ParamConfKeyConstant.TMK_INIT); + return conf != null && String.valueOf(true).equals(conf.getValue()); + } + public boolean isEnableSoftDevice() { ParamConf conf = paramConfMapper.selectByKey(ParamConfKeyConstant.ENABLE_SOFT_DEVICE); return conf != null && String.valueOf(true).equals(conf.getValue()); @@ -356,10 +364,10 @@ public class TmkService { check.setValue(CodecUtils.encodeHex(hash)); check.setKey(ParamConfKeyConstant.TMK_CHECK_VALUE); check.setCreatTime(LocalDateTime.now()); - paramConfMapper.insert(conf); + paramConfMapper.insert(check); } else { check.setValue(CodecUtils.encodeHex(hash)); - paramConfMapper.updateById(conf); + paramConfMapper.updateById(check); } } diff --git a/chsm-web-manage/src/main/java/com/sunyard/ssp/modules/user/controller/ScUserController.java b/chsm-web-manage/src/main/java/com/sunyard/ssp/modules/user/controller/ScUserController.java index 966fff5..8057123 100644 --- a/chsm-web-manage/src/main/java/com/sunyard/ssp/modules/user/controller/ScUserController.java +++ b/chsm-web-manage/src/main/java/com/sunyard/ssp/modules/user/controller/ScUserController.java @@ -58,6 +58,7 @@ import java.util.HashSet; import java.util.LinkedList; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.Set; import java.util.stream.Collectors; @@ -108,8 +109,15 @@ public class ScUserController { @RequestMapping(value = "/info",method = RequestMethod.GET) public Result getUserInfo(){ - ScUser u = securityUtil.getCurrUser(); + if (CollectionUtils.isNotEmpty(u.getRoles())) { + long count = u.getRoles().stream().map(ScRole::getId) + .filter(it -> Objects.equals(it, 1L)) + .count(); + if (count >= 1) { + u.setId(1L); + } + } return new ResultUtil().setData(u); } diff --git a/chsm-web-manage/src/main/java/com/sunyard/ssp/modules/user/serviceimpl/ScUserServiceImpl.java b/chsm-web-manage/src/main/java/com/sunyard/ssp/modules/user/serviceimpl/ScUserServiceImpl.java index 4059043..a216d9e 100644 --- a/chsm-web-manage/src/main/java/com/sunyard/ssp/modules/user/serviceimpl/ScUserServiceImpl.java +++ b/chsm-web-manage/src/main/java/com/sunyard/ssp/modules/user/serviceimpl/ScUserServiceImpl.java @@ -62,7 +62,7 @@ public class ScUserServiceImpl extends ServiceImpl impleme List list=baseMapper.findByUsername(username); if(list!=null&&list.size()>0){ ScUser user = list.get(0); - if (username.contains("admin")) { + if (username.contains("rootadmin")) { user.setId(1L); } if(CommonConstant.DEFAULT_USER_ROOT_ID.equals(user.getId())){