728x90
OAuth2AuthorizedClientManager

- OAuth2AuthorizedClient 를 전반적으로 관리하는 인터페이스
- OAuth2AuthorizedClientProvider 로 OAuth 2.0 클라이언트에 권한 부여
- Client Credentials Flow
- Resource Owner Password Flow
- Refresh Token Flow
- OAuth2AuthorizedClientService 나 OAuth2AuthorizedClientRepository 에 OAuth2AuthorizedClient 저장을 위임한 후 OAuth2AuthorizedClient 최종 반환
- 사용자 정의 OAuth2AuthorizationSuccessHandler 및 OAuth2AuthorizationFailureHandler 를 구성하여 성공/실패 처리를 변경할 수 있다.
- invalid_grant 오류로 인해 권한 부여 시도가 실패하면 이전에 저장된 OAuth2AuthorizedClient가 OAuth2AuthorizedClientRepository 에서 제거된다
특징


- ClientRegistrationRepository: ClientRegistration 객체를 관리
- OAuth2AuthorizedClientRepository, OAuth2AuthorizedClientService : OAuth2AuthorizedClient 객체를 관리
- ClientCredentialsOAuth2AuthorizedClientProvider, PasswordOAuth2AuthorizedClientProvider, RefreshTokenOAuth2AuthorizedClientProvider를 각각 구현한 클래스가 DefaultRefreshTokenResponseClient, DefaultPasswordTokenResponseClient, DefaultClientCredentialsTokenResponseClient이고, 구현한 클래스에서 내부적으로 RestTemplate을 통해 실제 인증을 한다.
TEST

728x90
'스프링 시큐리티 OAuth2 > OAuth 2.0 Client - oauth2Client()' 카테고리의 다른 글
| DefaultOAuth2AuthorizedClientManager - Refresh Token 권한 부여 구현하기 (0) | 2023.02.22 |
|---|---|
| DefaultOAuth2AuthorizedClientManager - Client Credentials 권한 부여 구현하기 (0) | 2023.02.21 |
| DefaultOAuth2AuthorizedClientManager - Resource Owner Password 권한 부여 구현하기 (0) | 2023.02.20 |
| OAuth2AuthorizedClient 이해 및 활용 (0) | 2023.01.27 |
| OAuth2ClientConfigurer 초기화 이해 (0) | 2023.01.27 |