byworld 님의 블로그

20260403 TIL - 인증인가 개발, AWS 비용 본문

TIL

20260403 TIL - 인증인가 개발, AWS 비용

byworld 님의 블로그 2026. 4. 3. 18:49

[서론]

드디어 한 주가 끝났다! 너무 피곤했는데 차라리 이게 낫다. 좀 푹 자고 풀 컨디션에서 해야지.

 

[오늘의 추천곡] Woodz - Drowning

참 요즘도 탑 10 안에 드는 그런 노래다. 몇년 전만 하더라도 라디오 영스트리트에서 게스트하고 있었던 것이 기억나는데, 많이 유명해졌다. 우리나라에서 락을 뜨는 경우가 별로 없는데 1년이 넘게 차트에 있다니 신기하다. 

 

 

[인증인가 개발]

허브 담당이니까 허브의 MVP 수준(솔직히 이것도 못했다)을 하다가 팀원의 이탈 소식을 들었다. 유저와 인증인가를 담당하던 팀원이었다. 나는 왜 매번 팀마다 이탈이 많을까 ㅋㅋ 오히려 이걸 잘 살리면 전화위복의 기회가 될 것이다. 사실상 내가 거의 모든 도메인을 하는 것이나 마찬가지니까. 인증인가는 키클록으로 하고, 인가는 각 서비스에서 하는 로직이다.

1. 로그인 → UserService → Keycloak → JWT 발급 (sub = user UUID)
2. Client가 JWT로 요청 → Gateway
3. Gateway: JWT 파싱 → UserService /me 호출 → 유저 정보 헤더 설정
     (X-User-Id, X-User-Roles, X-User-Email 등)
4. 도메인 서비스: LoginFilter가 헤더 읽기 → UserDetailsImpl 생성 → SecurityContext 설정
5. 서비스 코드: SecurityUtil.getCurrentUserId() / @PreAuthorize("hasRole('...')")로 권한 체크

 

이런식으로 튜터님은 흐름을 짜 놓았던데, 나는 me는 추후에 구현하고, 일단 다 claim에 싣고 me와 레디스 연동으로 부하 분사을 게이트웨이단에서 할 것이다. 현재 공통 모듈에서 고치고 있고, GW, User 다 고쳐야한다. Hub나 라우터보다 이게 우선 순위인 것 같아서 최대한 빨리 내일 초반까지 하고, 나머지 재고 같은 부분은 내일 끝날때 할 것이다. routing 같은 경우는 일요일을 이용해서 다 구현을 하고, 인프라까지 갖추어 다른 서비스와 연동을 주말간 해볼 예정이다.

[AWS 비용]

AWS 비용이 무슨 5만 7천원이 나왔다. 전 프로젝트에서 한 인프라들을 끄지 않아서 그렇다. ECS가 그렇게 비싸더라... 일단 웬만한 것은 다 끄고 삭제했고, 고객센터에 간청 중이다... 잘 해결되었으면 한다.

 

[결론]

갈 길이 멀다. 하지만 위기에 강한 게 내 장점이 될 수 있게 최대한 시간 분배를 잘 해서 대응해봐야겠다. Good Luck!