특징
특정 URL예시
const googleAuthUrl ='<https://accounts.google.com/o/oauth2/v2/auth?'+>
'client_id=YOUR_CLIENT_ID&' + //client_id
'redirect_uri=http://localhost:3000/auth/google/callback&' +//redirect_uri
'response_type=code&' +
'scope=profile email';
이 예시의 내용이 Resource Server의 내용과 같으면 동작하고 불 일치하면 동작을 안 한다.
과정
리프레시 토큰
OAuth2 변수
application.properties
spring security.oauth2.client.registration.서비스이름.client-name=naver
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=authorization_code
spring.security.oauth2.client.registration.서비스 이름.scope=name, email ///가져올 항목
#provider
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= 응답 데이터 변수
이렇게 uri는 여기다가 써주고 OAuth2가 이 주소들을 로그인할때 거치기 때문에 따로 Redirect URI 빼고는 컨트롤러 거치는 과정이 필요없다.