[Spring Boot] 카카오 OAuth2 소셜 로그인 구현 중 오류 (authorization_request_not_found, invalid_token_response)

조성우·2024년 7월 15일
0

Spring Boot

목록 보기
10/12
post-thumbnail

카카오 OAuth2 소셜 로그인 구현 중 발생한 오류를 정리하였다.


1. [authorization_request_not_found]

http://localhost:8080/oauth2/authorization/kakao 에 접속하여 소셜 로그인을 시도했더니 발생하는 오류였다.

레퍼런스도 많이 뒤져보고, 아래에 보이는 OAuth2LoginAuthenticationFilter.java 코드를 읽으며 디버깅도 시도했지만 도무지 원인을 알 수 없었다.

그런데 문제는...

Kakao Developers에서 Redirect URI를 http://127.0.0.1 로 설정한 것 때문이었다...

해결 방법

스프링 부트 환경 설정 파일에서는 http://localhost 로 적었기 때문에 Kakao Developers의 Redirect URI를 이와 일치시켜 오류를 해결하였다.

(몇 시간을 썼는지 모르겠다...)


2. [invalid_token_response]

[invalid_token_response]
An error occurred while attempting to retrieve the OAuth 2.0 Access Token Response: 401 Unauthorized: [no body]

위 오류는 인증 서버로 클라이언트를 인증할 때 사용되는 인증 방법이 카카오는 'POST' 방식이라서 발생하는 오류이다.

해결 방법

application.yml 파일을 사진에 보이는 것처럼

client-authentication-method: client_secret_post

client_secret_post로 설정하면 오류가 해결된다 (Spring Security 6 이전은 post로!)

참고로 네이버는 디폴트 값인 client_secret_basic이라고 한다.


client-authentication-method에 관한 공식 문서의 내용이다.

1개의 댓글

comment-user-thumbnail
2024년 7월 23일

1번 오류는 로드 밸런서로 서버 여러 개 띄워도 발생하더라구요 ㅠㅠ

답글 달기