|
@@ -1,128 +0,0 @@
|
|
|
-package com.dragoninfo.dcuc.authweb.business;
|
|
|
-
|
|
|
-import cn.hutool.http.HttpRequest;
|
|
|
-import com.dragoninfo.dcuc.authweb.config.DcucAuthWebConfig;
|
|
|
-import com.dragoninfo.dcuc.authweb.enums.HwTokenResultEnum;
|
|
|
-import com.dragoninfo.dcuc.authweb.vo.hwtoken.HwTokenCheckReqContentVO;
|
|
|
-import com.dragoninfo.dcuc.authweb.vo.hwtoken.HwTokenCheckReqVO;
|
|
|
-import com.dragoninfo.dcuc.authweb.vo.hwtoken.HwTokenCheckRespContentVO;
|
|
|
-import com.dragoninfo.dcuc.authweb.vo.hwtoken.HwTokenCheckRespVO;
|
|
|
-import com.dragonsoft.duceap.commons.util.date.DateConst;
|
|
|
-import com.dragonsoft.duceap.commons.util.date.DateUtils;
|
|
|
-import com.dragonsoft.duceap.commons.util.json.JsonUtils;
|
|
|
-import lombok.extern.slf4j.Slf4j;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.stereotype.Service;
|
|
|
-
|
|
|
-import java.util.Collections;
|
|
|
-import java.util.List;
|
|
|
-
|
|
|
-/**
|
|
|
- * @author huangzqa
|
|
|
- * @date 2021/3/30
|
|
|
- **/
|
|
|
-@Slf4j
|
|
|
-@Service
|
|
|
-public class HwIdentityBusiness {
|
|
|
-
|
|
|
- @Autowired
|
|
|
- private DcucAuthWebConfig dcucAuthWebConfig;
|
|
|
-
|
|
|
- /**
|
|
|
- * 校验令牌
|
|
|
- *
|
|
|
- * @param userToken 用户令牌
|
|
|
- * @param appToken 应用令牌
|
|
|
- * @return 是否有效
|
|
|
- */
|
|
|
- public boolean checkToken(String userToken, String appToken) {
|
|
|
-
|
|
|
- HwTokenCheckReqVO hwTokenCheckReqVO = new HwTokenCheckReqVO();
|
|
|
-
|
|
|
- HwTokenCheckReqContentVO hwTokenCheckReqContentVO = new HwTokenCheckReqContentVO();
|
|
|
- hwTokenCheckReqContentVO.setAppToken(appToken);
|
|
|
- hwTokenCheckReqContentVO.setUserToken(userToken);
|
|
|
- hwTokenCheckReqContentVO.setMessageId(DateUtils.getDateFormat(DateConst.DB_STORE_DATE));
|
|
|
- hwTokenCheckReqContentVO.setEsn(dcucAuthWebConfig.getHwIdentityEsn());
|
|
|
-
|
|
|
- hwTokenCheckReqVO.setContent(Collections.singletonList(hwTokenCheckReqContentVO));
|
|
|
-
|
|
|
- HwTokenCheckRespVO hwTokenCheckRespVO = sendRequest(hwTokenCheckReqVO);
|
|
|
-
|
|
|
- List<HwTokenCheckRespContentVO> content = hwTokenCheckRespVO.getContent();
|
|
|
-
|
|
|
- String validValue = HwTokenResultEnum.VALID.getValue();
|
|
|
- for (HwTokenCheckRespContentVO hwTokenCheckRespContentVO : content) {
|
|
|
- String usercheckResult = hwTokenCheckRespContentVO.getUsercheckResult();
|
|
|
- String appcheckResult = hwTokenCheckRespContentVO.getAppcheckResult();
|
|
|
-
|
|
|
- if (!usercheckResult.equals(validValue)) {
|
|
|
- return false;
|
|
|
- }
|
|
|
-
|
|
|
- if (!appcheckResult.equals(validValue)) {
|
|
|
- return false;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- return true;
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 校验用户令牌
|
|
|
- *
|
|
|
- * @param userToken 用户令牌
|
|
|
- * @return 是否有效
|
|
|
- */
|
|
|
- public boolean checkUserToken(String userToken) {
|
|
|
-
|
|
|
- HwTokenCheckReqVO hwTokenCheckReqVO = new HwTokenCheckReqVO();
|
|
|
-
|
|
|
- HwTokenCheckReqContentVO hwTokenCheckReqContentVO = new HwTokenCheckReqContentVO();
|
|
|
- hwTokenCheckReqContentVO.setAppToken("");
|
|
|
- hwTokenCheckReqContentVO.setUserToken(userToken);
|
|
|
- hwTokenCheckReqContentVO.setMessageId(DateUtils.getDateFormat(DateConst.DB_STORE_DATE));
|
|
|
- hwTokenCheckReqContentVO.setEsn(dcucAuthWebConfig.getHwIdentityEsn());
|
|
|
-
|
|
|
- hwTokenCheckReqVO.setContent(Collections.singletonList(hwTokenCheckReqContentVO));
|
|
|
-
|
|
|
- HwTokenCheckRespVO hwTokenCheckRespVO = sendRequest(hwTokenCheckReqVO);
|
|
|
-
|
|
|
- List<HwTokenCheckRespContentVO> content = hwTokenCheckRespVO.getContent();
|
|
|
-
|
|
|
- String validValue = HwTokenResultEnum.VALID.getValue();
|
|
|
- for (HwTokenCheckRespContentVO hwTokenCheckRespContentVO : content) {
|
|
|
- String usercheckResult = hwTokenCheckRespContentVO.getUsercheckResult();
|
|
|
-
|
|
|
- if (!usercheckResult.equals(validValue)) {
|
|
|
- return false;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- return true;
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 发送请求
|
|
|
- *
|
|
|
- * @param hwTokenCheckReqVO 请求
|
|
|
- * @return 返回值
|
|
|
- */
|
|
|
- private HwTokenCheckRespVO sendRequest(HwTokenCheckReqVO hwTokenCheckReqVO) {
|
|
|
- String reqJson = JsonUtils.toJSONString(hwTokenCheckReqVO);
|
|
|
-
|
|
|
- log.info("Token check req :{}", reqJson);
|
|
|
-
|
|
|
- String url = dcucAuthWebConfig.getHwIdentityUrl() + "/tacs/tokencheck";
|
|
|
-
|
|
|
- log.info("Token check req url:{}", reqJson);
|
|
|
- String postResp = HttpRequest.post(url)
|
|
|
- .body(reqJson)
|
|
|
- .header("Message-Type", "tokencheck")
|
|
|
- .execute()
|
|
|
- .body();
|
|
|
- log.info("Token check resp :{}", postResp);
|
|
|
-
|
|
|
- return JsonUtils.parseObject(postResp, HwTokenCheckRespVO.class);
|
|
|
- }
|
|
|
-}
|