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

hangs0908님의 프로필 이미지
hangs0908

작성한 질문수

스프링 시큐리티 OAuth2

OAuth2AuthorizedClient 이해 및 활용

임시 코드 요청시 Redirect에 대해 질문 드립니다

작성

·

403

·

수정됨

0

client registration의 redirect uri는 인가 서버로부터 임시코드를 발급받고, redirect uri로 임시 코드를 리다이렉트 시키는데,

강사님께서

redirect uri를 http://localhost:8081/client 로 설정하였고,

ClientController의 매핑주소도 위와 같은 주소로 설정하였습니다. 여기서 궁금한점이 있습니다.

 

임시 코드를 발급한 시점에 저 리다이렉트 주소로 콜백하게 되는데, 이 시점에 clientcontroller에 저 매핑주소가 호출되어야 할텐데

  1. 왜 token 발급시에 컨트롤러가 호출되는지

  2. 그리고 redirect uri가 token 발급시 콜백 주소도 해당되는건가요?? 엑세스 토큰 발급후에도 http://localhost:8081/client

    여기로 호출되어서 의문이 듭니다.

답변 1

0

정수원님의 프로필 이미지
정수원
지식공유자

임시코드를 발급한 시점에 리다이렉트되는 것이 맞지만 컨트롤러를 호출하지 않습니다.

인가서버가 임시코드를 발급한 다음 클라이언트에게 리다이렉트 하게 되면 내부적으로 시큐리티의 필터를 호출하게 되고 임시코드를 가지고 인가서버에 토큰발급을 요청하게 됩니다.

인가서버가 토큰을 발급하게 되면 클라이언트로 리다이렉트 하게 되고 다시 시큐리티의 토큰을 처리하는 필터를 호출합니다.

토큰처리 필터는 토큰을 인가서버에 전달해서 사용자의 정보를 요청하게 되는 흐름으로 진행됩니다.

최종적으로 사용자의 정보를 통해 인증에 성공하면 성공 했을 때 지정한 페이지로 이동하게 됩니다.

임시코드와 토큰 발급은 스프링의 컨트롤러가 호출되는 것과는 직접적인 관련이 없습니다.

http://localhost:8081/client 은 인가서버가 클라이언트로 응답을 주기 위한 콜백 url 이므로 임시코드나 토큰발급 모두 포함 될 수 있습니다.

해당 강의를 통해 임시코드와 토큰 발급을 처리하는 필터를 이해 하는게 중요할 것 같습니다.

 

hangs0908님의 프로필 이미지
hangs0908

작성한 질문수

질문하기