오늘 하루종일 삽질했지만 해결 못했다.
사건
기존
게이트웨이에서 헤더에 토큰을 넣어서 보내주고 필터에서 토큰을 까서 확인하고 있었다. 토큰값이 없거나 이상한경우는 어플리케이션단에서 체크해서 예외를 던져줬다.
변경
필터에서 토큰을 까서 확인할때 이상한 헤더값이 오거나 토큰값이 없는 경우에는 토큰을 깔 때 예외처리를 하기로 했다.
문제
수정해서 배포해보니 배포의 마지막 단계에서 actuator가 헬스체크를 해주는데 actuator 요청은 헤더에 토큰값이 없이 들어오기 때문에 헬스체크 요청을 튕겨내서 배포 실패,,,
또한 게이트웨이에서도 요청에 따라 타는 필터가 달라져서 어떤 요청은 토큰 없이 그대로 전달되고, 어떤 요청은 토큰값이 주입되어서 넘어오고 있어서 필터에서 무조건 토큰값이 없으면 throw를 하면 안된다는 사실을 뒤늦게 알았다. (쓰는 와중에 깨달음)
삽질하면서 안 사실
actuator에는 다양한 엔드포인드가 있다는 것.
나머지는 to be continued...
다음 편 보러가기 : https://cindycho.tistory.com/81
'개발 > 이게 왜 안돼?' 카테고리의 다른 글
[스프링][JPA] Custom Jpa Repository를 추가했는데 에러가 나요 (0) | 2023.08.26 |
---|---|
[Spring Boot] 헤더를 까서 필터링 할건데 actuator는 통과시키고 싶음 - (2) (0) | 2022.10.07 |
[코틀린] varargs 를 넘기고 싶은데 잘 안돼! (0) | 2022.09.26 |
[Github] 깃허브 커밋 날짜를 조작하고 싶지 않으신가요? (2) | 2022.01.02 |
[Github] 깃허브 리드미 링크 새 창에서 열기 (0) | 2022.01.01 |