oauth2Login() - Spring MVC 인증 객체 참조
Authentication
public void method(Authentication authentication){...}oauth2Login()으로 인증을 받게 되면 Authentication은OAuth2AuthenticationToken타입의 객체로 바인딩 된다.principal 에는
OAuth2User타입 또는OidcUser타입의 구현체가 저장된다.DefaultOAuth2User는/userInfo엔드포인트 요청으로 받은 User 클레임 정보로 생성된 객체이다.DefaultOidcUser는OpenID Connect인증을 통해 ID Token 및 클레임 정보가 포함된 객체이다.

@AuthenticationPrincipal
public void method(@AuthenticationPrincipal OAuth2User principal or OidcUser principal){...}AuthenticationPrincipalArgumentResolver클래스에서 요청을 가로채어 바인딩 처리를 한다.Authentication을
SecurityContext로부터 꺼내 와서 Principal 속성에OAuth2User또는OidcUser타입의 객체를 저장한다.
예제 코드
/userInfo 엔드포인트 요청
/userInfo 엔드포인트 요청"/user"

"/oauth2User"

"/oidcUser"

OpenID Connect 인증
OpenID Connect 인증"/user"

"/oauth2User"

"/oidcUser"

이전 ↩️ - OAuth 2.0 Client(oauth2Login) - OpenID Connect 로그아웃
다음 ↪️ - OAuth 2.0 Client(oauth2Login) - API 커스텀 - Authorization BaseUrl & Redirection BaseUrl
Last updated