스프링 시큐리티 OAuth2/OAuth 2.0 Client Fundamentals

자동설정에 의한 초기화 과정 이해

webmaster 2023. 1. 15. 15:05
728x90

초기화 과정

  • OAuth2ImportSelector가 로드되면서, 분기에 의해 참에 해당하는 설정 클래스를 Load 한다.
    • 현재는 OAuth2ClientConfiguration을 로드한다.
  • OAuth2ClientConfiguration는 OAuth2CLientWebMvcImportSelector를 OAuth2CLientWebMvcImportSelector는 OAuth2ClientWebMvcSecurityConfiguration을 로드한다.
  • OAuth2ClientWebMvcSecurityConfiguration는 DefaultOAuth2AuthorizedClientManager, HandlerMethodArgumentResolver를 로드한다.

SpringBoot을 초기화 과정

  • OAuth2ClientAutoConfiguration(자동 설정 클래스)이 OAuth2ClientRegistrationRepositoryConfiguration 클래스에서 InMemoryClientRegistrationRepositor에서 ClientRegistraion들을 설정하는데 이 ClientRegistraion은 application.yml 설정이나, 클래스 설정을 통해 할 수 있다.
  • 인증 서버가 승인한 정보가 OAuth2AuthorizedClient에 저장을 하기 때문에 해당 클래스에서 User 정보를 참조해서 다양한 활용이 가능하다.
728x90