MSA를 구성하려는데 보안이나 이슈가 없을지 모르겠어요.
소규모 회사에요. MSA는 해보지도 않았고, 경험도 없어서 이것저것 찾아서 하고있는데 조언구할때가 없네요. 이게 맞는지를 모르겠다는..^^;;
사내 환경이 납품하는게 A솔루션, B솔루션, C솔루션이 있고, 사내 고객센터, 사내 홈페이지, 사내 직원 업무솔루션이 존재해요.
A,B,C 솔루션은 납품할때 해당 기업에 고객을 관리하는 ERP같은게 존재하고 해당 ERP에서 VIEW등으로 A,B,C 등에 로그인을 합니다. 여튼, 계속 A, B, C 를 모놀로식으로 하다보니 추후 관리가 힘들거같아 없는 지식 짜내면서 해보지도 않은 MSA를 하려고합니다.
그래서 Spring Cloud Gateway(Webflux)를 앞단에 두고, 로그인 인증 및 회원관리서버, A/B/C솔루션, 파일관리, 고객센터, 홈페이지, 업무솔루션 등을 전부 비지니스 서버로 나누고 Gateway에서 인증 및 요청에 따라 각 서버랑 통신하려고 하는데요.
구성이 GW → Auth 는 JWT 인증을 하고 로그인이 완료되면
GW → 업무비지니스는 JWT 시그니쳐 및 expire시간 이내면 업무서버에서는 Session을 생성. 이때 Session관련 회원 정보는 View로 제공. 실제 회원 테이블은 회원관리서버에 존재하구요.
여기까진 대충 되는거 같은데 이렇게 해도 되는지를 모르겠더라구요.
저혼자만 구성하고 구축하는지라 모놀리식 예전 Spring Legacy일때 아키구축했던것만 아는지라 모르는게 많네요. 새로운것도 많이 생기고 많이 바뀌었고….ㅠ 그래도 욕심은 나는지라 아무것도 모르는데 검색좀 해보니 세션공유가 필요하다하고 레디스 얘기가 나오니 또 도커가 튀어나오더라구요 ㅎ 이건 나중에 한다해도.
지금 프로젝트가 없어 조금 한가해서 이때 아니면 못하겠다해서 하고있는데 방향이 이게 맞는지 문의드리옵니다.
