기업회원 사용자와 일반 사용자의 통합 인증 시스템 구현 및 문제 해결

금은체리·2024년 6월 9일
0

저희 시스템에서는 사용자와 기업 사용자 간의 인증 절차를 다루는데, /auth/login 경로를 통한 일반 사용자 로그인은 잘 작동하였으나, /auth/cp-login 경로를 통한 기업 사용자 로그인 시 JWT 토큰이 헤더에 포함되지 않는 문제가 발생했습니다. 이로 인해 기업 사용자는 시스템 리소스에 접근할 수 없는 문제가 있었습니다.

해결 과정

  1. 문제 진단: 기존 JwtAuthenticationFilter 클래스를 분석한 결과, 필터가 /auth/login 경로에만 적용되어 있었음을 확인했습니다.
  2. 코드 수정: JwtAuthenticationFilterrequiresAuthentication 메서드를 오버라이드하여 /auth/login/auth/cp-login 두 경로 모두에서 필터가 작동하도록 조건을 추가했습니다.
  3. 테스트 및 검증: 수정 후 로컬 및 스테이징 환경에서 경로별 인증 흐름을 테스트하여 모든 경로에서 JWT 토큰이 정상적으로 헤더에 포함되는 것을 확인했습니다.

기술적 성과

이 변경으로 인해, 시스템의 인증 로직이 한결 간결해졌으며, 보안 레이어의 일관성이 향상되었습니다. 또한, 다양한 인증 경로에 대한 지원이 가능해져 시스템의 확장성과 유지관리가 용이해졌습니다. 이 경험을 통해 스프링 시큐리티와 JWT 기반 인증 시스템에 대한 깊은 이해를 가지게 되었음을 보여주며, 실제 운영 환경에서 발생할 수 있는 문제를 신속하게 해결할 수 있는 능력을 강조합니다.

결론

이 프로젝트를 통해 저는 복잡한 인증 시스템에서의 문제를 식별하고 해결함으로써, 안정적인 사용자 인증 흐름을 보장하는 것의 중요성을 다시 한번 깨달았습니다.

profile
전 체리 알러지가 있어요!

0개의 댓글