Compare commits
2 Commits
e40a1d9018
...
139ab45831
| Author | SHA1 | Date |
|---|---|---|
|
|
139ab45831 | |
|
|
cad4e6d5e0 |
|
|
@ -124,18 +124,22 @@ const RootRoutes = () => {
|
|||
console.group("jwtAuthentication");
|
||||
console.log("[Start] jwtAuthentication ------------------------------");
|
||||
|
||||
const jwtAuthURL = "/uat/esm/jwtAuthAPI.do";
|
||||
const jwtAuthURL = "/auth/token-check";
|
||||
let requestOptions = {
|
||||
method: "POST",
|
||||
};
|
||||
|
||||
EgovNet.requestFetch(jwtAuthURL, requestOptions, (resp) => {
|
||||
EgovNet.requestFetch(
|
||||
jwtAuthURL,
|
||||
requestOptions,
|
||||
(resp) => {
|
||||
if (resp === false) {
|
||||
setMounted(false);
|
||||
} else {
|
||||
setMounted(true); // 이 값으로 true 일 때만 페이지를 렌더링이 되는 변수 사용.
|
||||
}
|
||||
});
|
||||
}
|
||||
);
|
||||
|
||||
console.log("------------------------------jwtAuthentication [End]");
|
||||
console.groupEnd("jwtAuthentication");
|
||||
|
|
|
|||
|
|
@ -8,6 +8,9 @@ import com.dbnt.kcscbackend.config.common.ResponseCode;
|
|||
import com.dbnt.kcscbackend.config.common.ResultVO;
|
||||
import com.dbnt.kcscbackend.config.egov.EgovMessageSource;
|
||||
import com.dbnt.kcscbackend.config.jwt.EgovJwtTokenUtil;
|
||||
import com.dbnt.kcscbackend.config.jwt.redis.RefreshToken;
|
||||
import com.dbnt.kcscbackend.config.jwt.redis.RefreshTokenRepository;
|
||||
import io.jsonwebtoken.Claims;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.responses.ApiResponse;
|
||||
import io.swagger.v3.oas.annotations.responses.ApiResponses;
|
||||
|
|
@ -60,15 +63,7 @@ public class EgovLoginApiController extends BaseController {
|
|||
private EgovLoginService loginService;
|
||||
|
||||
private final EgovJwtTokenUtil egovJwtTokenUtil;
|
||||
|
||||
/** EgovMessageSource */
|
||||
@Resource(name = "egovMessageSource")
|
||||
EgovMessageSource egovMessageSource;
|
||||
|
||||
/** JWT */
|
||||
@Autowired
|
||||
private EgovJwtTokenUtil jwtTokenUtil;
|
||||
|
||||
private final RefreshTokenRepository refreshTokenRepository;
|
||||
|
||||
@Operation(
|
||||
summary = "회원가입",
|
||||
|
|
@ -177,8 +172,17 @@ public class EgovLoginApiController extends BaseController {
|
|||
return resultMap;
|
||||
}
|
||||
|
||||
@RequestMapping("/loginSuccess")
|
||||
public HashMap<String, Object> loginSuccess(HttpServletRequest request, HttpServletResponse response){
|
||||
return new HashMap<>();
|
||||
@PostMapping("/token-check")
|
||||
public boolean tokenCheck(HttpServletRequest request, HttpServletResponse response, @AuthenticationPrincipal UserInfo loginVO){
|
||||
String clientToken = request.getHeader("Authorization");
|
||||
RefreshToken refreshToken = refreshTokenRepository.findById(egovJwtTokenUtil.getUserSeqFromToken(clientToken)).orElse(null);
|
||||
if (refreshToken != null){
|
||||
String serverToken = refreshToken.getRefreshToken();
|
||||
if(egovJwtTokenUtil.getUserSeFromToken(clientToken).equals(egovJwtTokenUtil.getUserSeFromToken(serverToken))){
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -58,6 +58,10 @@ public class EgovJwtTokenUtil implements Serializable{
|
|||
|
||||
|
||||
//retrieve username from jwt token
|
||||
public String getUserSeqFromToken(String token) {
|
||||
Claims claims = getClaimFromToken(token);
|
||||
return claims.get("userSeq").toString();
|
||||
}
|
||||
public String getUserIdFromToken(String token) {
|
||||
Claims claims = getClaimFromToken(token);
|
||||
return claims.get("id").toString();
|
||||
|
|
@ -89,7 +93,8 @@ public class EgovJwtTokenUtil implements Serializable{
|
|||
// compaction of the JWT to a URL-safe string
|
||||
public String generateToken(UserInfo loginVO, String remoteAddr, Long sec) {
|
||||
Map<String, Object> claims = new HashMap<>();
|
||||
claims.put("id", loginVO.getUserId() );
|
||||
claims.put("userSeq", loginVO.getUserSeq());
|
||||
claims.put("id", loginVO.getUserId());
|
||||
claims.put("remoteAddr", remoteAddr);
|
||||
claims.put("userSe", loginVO.getUserSe() );
|
||||
claims.put("type", "Authorization");
|
||||
|
|
|
|||
Loading…
Reference in New Issue