카카오 로그인 OIDC

우선 카카오 로그인 OIDC 지원에 감사합니다.

다름이 아니라, 현재 로그인은 Firebase Auth 를 이용하고있는데, 카카오 로그인 시 custom token 으로 로그인을 진행중입니다.
OIDC 지원소식에 기존 방식을 OIDC 를 사용하도록 변경하는 중 문제가 발생하여 문의드립니다.

Firebase 에서 OIDC 지원이 되지 않아서, Google Cloud 의 Identity Platform 을 통해서 카카오 OIDC 연결 작업을 하고 있습니다.
카카오 OIDC 활성화를 위해서 가이드에 안내된대로 활성화 작업과 필요한 설정을 마치고 추가적으로 client secret 도 생성했습니다.

clientId: REST API KEY
clientSecret: CLIENT_SECRET
issuer: ‘https://kauth.kakao.com

로 설정하고, Authorization Code Flow 를 사용하도록 설정해서 responseType 을 ‘code’ 로 설정하여 요청하는데,

카카오 로그인까지는 정상적으로 완료가 되고, 그 후 응답이 아래와 같이 반환됩니다.

error=invalid_client&error_description=Bad%20client%20credentials&error_code=KOE010

혹시 잘못된 설정이 있는지, 또는 추가 설정이 필요한지 궁금합니다.

안녕하세요.

KOE010 오류는 client secret기능을 활성화 하였지만
토큰 요청 시, 파라메터로 유효한 client_secret 값이 넘어오지 않았을 때 발생하는 오류 입니다…

Authorization Code Flow 설정 시, 클라이언트 보안 비밀번호 항목을 설정 하셨을까요?

안녕하세요. 빠른 답변 고맙습니다!

네. GCP Identity Platform 이라는 서비스에서 에서 OIDC provider 등록할 때 Code Flow 방식과 Implicit Flow 두가지 중 하나를 선택하게 되어있는데 Code Flow 선택 시 Client Secret 값이 필수값이라서 카카오에서 발급받은 값으로 설정 해놓은 상태입니다.
관련해서 구글에도 문의중인 상태입니다!

추가적인 설정은 필요 없는걸로 이해하면 될까요?

좀 더 정확한 확인을 위해 앱 ID 부탁드립니다.


앱ID
https://developers.kakao.com/ 의 내 애플리케이션>앱 설정>요약 정보 : 기본정보에 있는 앱 ID
숫자로된 ID 입니다

ex) 123456

앱 ID 공유 드립니다!

691188

입니다.

로그를 살펴보니 접근토큰 발급 시, client_id 값이 client_id 파라메터로 전달되어야 하나 Authorization 헤더로 넘어오고 있습니다.

이 부분 확인 부탁드립니다.

네네! 확인 감사합니다.

@woody.ho 안녕하세요. 스펙 관련 문의 드립니다.

OIDC 스펙문서를 보던 중 Token Endpoint 의 Client Authentication 항목에서

HTTP Basic authentication 과 parameter 방식 두가지 방법을 기술하고있는데, 혹시 후자만 구현이 된걸까요?

잘못 이해한 부분이 있을 수 있습니다. 양해를 구합니다.

감사합니다.

참고문서

https://openid.net/specs/openid-connect-core-1_0.html#TokenEndpoint
https://datatracker.ietf.org/doc/html/rfc6749#section-3.2
https://datatracker.ietf.org/doc/html/rfc6749#section-2.3

안녕하세요.

현재 카카오 로그인은 authorization_code 유형으로만 지원되므로 기본인증과 같은 유형의 처리는 지원하지 않고 있습니다.