개발 무지렁이

[Spring Boot] OAuth2와 카카오 로그인을 위한 의존성 추가 및 설정작업 본문

Backend/스프링부트

[Spring Boot] OAuth2와 카카오 로그인을 위한 의존성 추가 및 설정작업

Gaejirang-e 2022. 12. 21. 14:54

OAuth2




AccessToken을 발급 및 전달하여
안전하게 서비스를 이용할 수 있게 하는 인터페이스
(🎟️ AccessToken: 부분적인 서비스만을 허용하는 비밀번호)
- User: 우리의 서비스(Mine) + 연동된 서비스(Their)를 받는다.
- Mine: 우리의 서비스(Mine)에 그들의 서비스(Their)를 연동하기 위해 사용자(User)의 ID/Password를 받는 것이 아니라
        그들의 서비스(Their)에게서 AccessToken을 받는다.
- Their: 우리의 서비스(Mine)에 AccessToken을 발급해주고, 이를 통해 승인하여 부분적인 서비스를 이용하게 해준다.

카카오 로그인 연동하기

[https://developers.kakao.com]

(1) 내 애플리케이션 -> 애플리케이션 추가하기
(2) 카카오 로그인 -> 활성화 설정 -> ON
(3) 동의항목 -> 설정 (필수동의 or 선택동의)
(4) 카카오 로그인 -> Redirect URL

http://localhost:8010/login/oauth2/code/kakao

[build.gradle]

implementation 'org.springframework.boot:spring-boot-starter-oauth2-client'

[application.yml]

spring:
  profiles:
    active: dev, base-addi
  security:
    oauth2:
      client:
        registration:
          kakao:
            clientId:
            scope: profile_nickname, profile_image, account_email
            client-name: Kakao
            authorization-grant-type: authorization_code
            redirect-uri: http://localhost:8010/login/oauth2/code/kakao
            client-authentication-method: POST
        provider:
          kakao:
            authorization-uri: https://kauth.kakao.com/oauth/authorize
            token-uri: https://kauth.kakao.com/oauth/token
            user-info-uri: https://kapi.kakao.com/v2/user/me
            user-name-attribute: id

[.gitignore]

application-base-addi.yml

[application-base-addi.default.yml]

spring:
  security:
    oauth2:
      client:
        registration:
          kakao:
            clientId: [여기에 여러분의 카카오앱의 REST KEY를 넣어주세요.]
Comments