트러블슈팅
-
[AWS ELB 배포 문제]트러블슈팅 2023. 9. 10. 00:54
이틀동안 머리아프게했던 배포 문제.. 삽질의 삽질의 삽질의 삽질을 거듭한 뒤 해결했다 어떤 삽질을 했는지 순서대로 기록해보자 첫번째 에러 사건의 발단은 북마크 엔티티 CRD 구현 및 Jwt 코드 리팩토링을 마치고 로컬에서 테스트를 마친 후 dev에 있는 커밋들을 main에 머지하는 과정에서 일어났다. 로컬에서 잘 돌아가는 코드가 health Red 라는 상태가 나와 AWS의 ELB 페이지로 들어가 이벤트를 확인했다. 5xx 에러가 나오는걸 보아 서버 실행중 에러가 생긴것이다. 현재 StudyHub 에서는 블루/그린 배포 방식을 사용한다. 아래 그림처럼 health 상태가 Red가 되면 해당 인스턴스는 지워지고 원래 실행중인 인스턴스만 남게되기 때문에 어떤 에러로 인해 서버가 실행이 안되는지 알 수 없다...
-
[Study-Hub] Jwt 인가 + 보안관련 문제트러블슈팅 2023. 9. 8. 20:01
프로젝트를 진행하며 팀원과 함께 코드리뷰를 하던 중 부족한 부분이 많이 보여 정리해보고자 한다. 문제점 1. User 엔티티의 Id 값을 그대로 파라미터로 받아온 것 2. Jwt 인가 과정에서 로직을 잘못 작성해서 nullPointerException 에러가 발생한 것 User 엔티티의 Id 값을 파라미터로 받아오면 무슨 문제가 생길까? Study Hub 서비스에서 User 관련정보에는 이메일, 학년, 전공 등 개인정보가 다수 포함돼 있으므로 절대 노출돼서는 안된다. 만약 악성 사용자에 의해 User 엔티티의 Id 값을 담은 HttpRequest 가 탈취될 경우 악성 사용자는 Id 값을 이용해 게시글 삭제, 회원탈퇴 등을 자유롭게 할 수 있게 되는것이다. 이를 방지하기 위해 Jwt accessToken ..