동작 모식도 : OAuth2 코드 방식
각각의 필터가 동작하는 주소 (관습)
- OAuth2AuthorizationRequestRedirectFilter
/oauth2/authorization/서비스명
/oauth2/authorization/naver
/oauth2/authorization/google
- OAuth2LoginAuthenticationFilter : 외부 인증 서버에 설정할 redirect_uri
/login/oauth2/code/서비스명
/login/oauth2/code/naver
/login/oauth2/code/google
OAuth2 인증 및 동작을 위한 변수들
변수 설정만 진행하면 OAuth2AuthorizationRequestRedirectFilter -> OAuth2LoginAuthenticationFilter -> OAuth2LoginAuthenticationProvider 까지의 과정을 추가 설정하지 않아도 자동으로 진행한다.
따라서 사용자는 UserDetailsService와 UserDetails만 구현하면 된다.
- application.properties
spring.security.oauth2.client.registration.서비스명.client-name=
spring.security.oauth2.client.registration.서비스명.client-id=
spring.security.oauth2.client.registration.서비스명.client-secret=
spring.security.oauth2.client.registration.서비스명.redirect-uri=
spring.security.oauth2.client.registration.서비스명.authorization-grant-type=
spring.security.oauth2.client.registration.서비스명.scope=
spring.security.oauth2.client.provider.서비스명.authorization-uri=
spring.security.oauth2.client.provider.서비스명.token-uri=
spring.security.oauth2.client.provider.서비스명.user-info-uri=
spring.security.oauth2.client.provider.서비스명.user-name-attribute=
참고
- OAuth2AuthorizationRequestRedirectFilter
- OAuth2LoginAuthenticationFilter
- OAuth2LoginAuthenticationProvider
출처
https://www.devyummi.com/page?id=66927d904d26bd7985ef5b5a
'Spring Security > OAuth2' 카테고리의 다른 글
스프링 OAuth2 클라이언트 세션 6 : 네이버 소셜 로그인 신청 (0) | 2025.01.08 |
---|---|
스프링 OAuth2 클라이언트 세션 5 : SecurityConfig 등록 (0) | 2025.01.08 |
스프링 OAuth2 클라이언트 세션 4 : OAuth2 변수 역할 (0) | 2025.01.07 |
스프링 OAuth2 클라이언트 세션 2 : 프로젝트 생성 및 의존성 추가 (0) | 2025.01.07 |
스프링 OAuth2 클라이언트 세션 1 : 실습 목표 및 간단한 동작 원리 (0) | 2025.01.05 |