One of member of OCE's microservices-architecture components. Identity & Access Management conforming to OAuth2 and JWT spec and provides Web GUI for managing organizations, users, and permission scopes. REST APIs allows your application easily converted to MSA-style services accessing underlying back-end services through token-based security.
현재 한 페이지에 여러 개의 비동기로 ajax로 call이 되고 있습니다.
예로 한 페이지에 5개가 call이 되는 과정에서
시간이 3번째 call에서 refresh가 된 경우 나머지 2개가 error가 납니다.
이때 나머지 2개가 비정상적으로 접속 한 것인지, 3번째가 refresh가 되어 invalid가 된 건지
Smart e-Form서버에서는 알 수가 없는 문제가 발생합니다.
그래서 refresh token을 생성(New R2)할 때 기존에 가지고 있는 old refresh token(R1)을 같이 저장을 하여 index잡아주시면
refresh되고 유효시간 내(예로 약 60초, properties 설정으로) 에 이전 refresh로 호출된 경우 새롭게 발급하시지 말고
이전 새롭게 발급된(New R2) token으로 넘겨주시는 로직으로 처리를 해주셨음 합니다.
요구사항
현재 한 페이지에 여러 개의 비동기로 ajax로 call이 되고 있습니다. 예로 한 페이지에 5개가 call이 되는 과정에서 시간이 3번째 call에서 refresh가 된 경우 나머지 2개가 error가 납니다.
이때 나머지 2개가 비정상적으로 접속 한 것인지, 3번째가 refresh가 되어 invalid가 된 건지 Smart e-Form서버에서는 알 수가 없는 문제가 발생합니다.
그래서 refresh token을 생성(New R2)할 때 기존에 가지고 있는 old refresh token(R1)을 같이 저장을 하여 index잡아주시면 refresh되고 유효시간 내(예로 약 60초, properties 설정으로) 에 이전 refresh로 호출된 경우 새롭게 발급하시지 말고 이전 새롭게 발급된(New R2) token으로 넘겨주시는 로직으로 처리를 해주셨음 합니다.
관리법
config.properties 파일의 다음의 항목이 있습니다.
위 프로퍼티 중 security.jwt.secret 는 파기되었습니다. #1
security.jwt.oldrefreshtoken.timeout 프로퍼티는 동일 리프레쉬 토큰 발급 대기시간입니다.
60 초로 설정했으므로 60초 이내에 동일한 리프레쉬 토큰 요청이 올 경우 재발급 하지 않고 이전 새롭게 발급된 리프레쉬 토큰을 발급합니다.