Spring Security OAuth2 - 네이버
- 선행 과정
Spring Security
기본 설정
JWT
기본 설정
Spring Security OAuth2
기본 설정
네이버 애플리케이션
사용 API
에서 네이버 로그인을 선택합니다.
- 제공 정보 선택의 경우 이메일 주소, 별명, 프로필 사진을 선택했습니다.
로그인 오픈 API 서비스 환경
을 설정합니다.
- 환경은
PC 웹
을 선택합니다.
서비스 URL
의 경우 현재 테스트 단계이기 때문에 로컬로 진행합니다.
네이버 로그인 Callback URL
은 redirect uri
를 입력하면 됩니다.
Spring Security OAuth2
의 redirect uri
템플릿은 {baseUrl}/login/oauth2/code/{registrationId}
이므로 이에 맞 춰서 작성해줍니다.
application.yml
spring:
security:
oauth2:
client:
registration:
naver:
client-id: 내 애플리케이션 -> 애플리케이션 정보 -> Client ID
client-secret: 내 애플리케이션 -> 애플리케이션 정보 -> Client Secret
redirect-uri: http://localhost:8080/login/oauth2/code/naver
authorization-grant-type: authorization_code
scope:
- name
- email
- profile
provider:
naver:
authorization-uri: https://nid.naver.com/oauth2.0/authorize
token-uri: https://nid.naver.com/oauth2.0/token
user-info-uri: https://openapi.naver.com/v1/nid/me
user-name-attribute: response
client
- 네이버 아이디로 로그인 하기 위해 만든 애플리케이션의 정보를 입력합니다.
scope
에 제공 정보로 선택한 항목을 추가합니다.
provider
Spring Security OAuth2
의 경우 provider
에 대한 정보를 구글과 페이스북만 가지고 있습니다.
- 그렇기 때문에 수작업으로 설정을 해주어야 합니다.
실행
http://localhost:8080/oauth2/authorization/naver
로 요청합니다.
- 전체 동의 후 동의하기를 누르면 위와 같이 토큰이 발급되었음을 확인할 수 있습니다.