Msa 환경에서 스프링 시큐리티 사용한 소셜로그인 관련하여 질문드립니다

문의 시, 사용하시는 개발환경과 디벨로퍼스 앱ID를 알려주세요.


디벨로퍼스 앱 ID : 1052838
개발 환경 : spring, spring cloud gateway, spring security, spring cloud config

안녕하세요.
현재 스프링 클라우드 활용한 msa 환경에서 시큐리티를 활용하여 auth 서버에서 카카오 정보를 통한 자체 서비스 로그인 처리를 수행하고있습니다.
로컬에서 테스트를 해보았을 때는 프론트 단에서 http://localhost:8080/oauth2/authorization/kakao로 a 태그를 통해 이동을 하게 되고 auth 서버 apllication.yaml 파일의 kakao redirect uri 또한 http://localhost:8080/oauth2/authorization/kakao로 설정을 하여 로그인 로직이 원하는대로 정상적으로 동작하는 것을 확인하였습니다. 더불어 게이트웨이 서버를 추가 한 이후에도 라우팅을 통해 게이트웨이서버/oauth2/authorization/kakao로 이동을 하여도 정상적으로 돌아가는 것을 확인하였습니다.
그런데 쿠버네티스를 활용하여 클라우드에 배포를 한 후에는 redirect uri을 첨부한 사진과 같이 쿠버네티스 서비스 이름으로 수정을 하여서 돌렸더니 정상동작하지 않는 것을 알게되었습니다. 혹시 redirect uri를 다른 주소로 해야 하는 것인지 아니면 그냥 잘못된 것인지 너무 궁금합니다. 답변 주시면 감사하겠습니다.


안녕하세요.

첨부해주신 내용은 단순히

카카오 로그인 이후, 설정하신 리다이렉트 URI로 이동했을때 해당 페이지가 없는 페이지라 발생한 문제입니다.

배포하신 시스템의 도메인과 리다이렉트 URI가 접속되는지 확인해주시면 됩니다.

저 redirect-uri: 부분은 시큐리티 내부에서 이미 정의되어 있는 {도메인}/login/oauth2/code/* 쪽으로 넘어가는거 아닌가요…?

redirect-uri: "{baseUrl}/login/oauth2/code/{registrationId}"

일반적으로 위와 같이 처리 하는데. 첨부하신 application.yml에는 도메인까지 직접 작성하신 것 아닌가요?

아 네 찾아보니 그게 정석인거 같아 그렇게 변경했습니다만
쿠버네티스 상에서 auth 서버가 url이 pod에 따라 유동적으로 변해서
카카오 developer 사이트에 입력하는 redirect uri는 뭘 입력해야할지 모르겠네요…

ingress에 설정된 host를 입력하시면 좋을것 같습니다.

정말 감사합니다!! 한번 시도해보겠습니다!!