Spring Security OAuth2 - 네이버

appti·2022년 5월 28일
0

Spring Security OAuth2 - 네이버

  • 선행 과정
    • Spring Security 기본 설정
    • JWT 기본 설정
    • Spring Security OAuth2 기본 설정

네이버 애플리케이션

  • 애플리케이션 이름을 지정합니다.

  • 사용 API에서 네이버 로그인을 선택합니다.
    • 제공 정보 선택의 경우 이메일 주소, 별명, 프로필 사진을 선택했습니다.

  • 로그인 오픈 API 서비스 환경을 설정합니다.
    • 환경은 PC 웹을 선택합니다.
    • 서비스 URL의 경우 현재 테스트 단계이기 때문에 로컬로 진행합니다.
    • 네이버 로그인 Callback URLredirect uri를 입력하면 됩니다.
    • Spring Security OAuth2redirect 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로 요청합니다.

  • 제공 정보로 선택한 항목이 나타납니다.

  • 전체 동의 후 동의하기를 누르면 위와 같이 토큰이 발급되었음을 확인할 수 있습니다.
profile
안녕하세요

0개의 댓글