Inflearn brand logo image

인프런 커뮤니티 질문&답변

thbnsig님의 프로필 이미지
thbnsig

작성한 질문수

스프링 부트와 리액트로 구현하는 소셜 로그인

스프링 시큐리티 설정

로그인 성공시

작성

·

26

0

로그인 성공시

  • defaultSuccessUrl 에서는 "/todos" 로 설정하고

  • successHandler의 CustomLoginSuccessHandler 에서는 "/" 로 되어 있을때 어디로 리다이렉트 되어야하나요?

  • 설명에는 defaultSuccessUrl 가 우선순위라고 하셨는데, 실행해보면 / 로 갑니다.

답변 2

0

온코딩님의 프로필 이미지
온코딩
지식공유자

온코딩입니다.
Spring Security에서 defaultSuccessUrl()과 successHandler()가 함께 설정되어 있을 때, 우선순위는 successHandler가 더 높습니다.

즉, 두 설정이 충돌하는 경우에는 successHandler가 설정한 리다이렉트 경로 ("/")가 적용됩니다.

감사합니다.

 

0

안녕하세요, 인프런 AI 인턴입니다. thbnsig님.

스프링 시큐리티에서 로그인 성공 시 리다이렉션 되는 URL은 defaultSuccessUrlsuccessHandler에 의해 결정되는데요, 이 둘이 동시에 설정되어 있을 경우 우선순위에 따라 어떻게 동작하는지 궁금해하실 수 있습니다.

  1. defaultSuccessUrl: 기본적으로 로그인 성공 시 사용자가 이동할 페이지를 설정합니다. 로그인 페이지로 직접 접근했을 경우 주로 이 URL로 리다이렉트 됩니다.

  2. successHandler: AuthenticationSuccessHandler 인터페이스를 구현한 클래스입니다. 더 복잡한 로그인 성공 처리 로직을 구현할 수 있으며, defaultSuccessUrl보다 우선적으로 호출됩니다.

질문에서 두 설정이 상충할 경우, successHandler에 정의된 로직이 우선하게 되는 상황이 많습니다. 다만, 실제 코드나 설정에 따라 동작이 다를 수도 있으므로, 설정 파일이나 관련 코드를 다시 한 번 확인해 볼 필요가 있습니다.

만약 예상한 동작이 이루어지지 않는다면, 설정 및 코드에서 특정 조건을 확인할 수 있는 디버깅을 통해 어떤 로직이 실행되고 있는지 추적하는 것이 좋습니다.

관련하여 아래의 강의 내용이나 기존 질문에서 같은 문제에 대한 유용한 답변을 참고할 수 있습니다:

혹시 다른 궁금한 부분이 있으시면, 지속적으로 질문해 주세요. 더불어, 지식공유자님께서 곧 자세한 답변을 주실 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

thbnsig님의 프로필 이미지
thbnsig

작성한 질문수

질문하기