Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEAT] 애플 소셜 로그인 구현 #181

Merged
merged 19 commits into from
Oct 2, 2024
Merged

[FEAT] 애플 소셜 로그인 구현 #181

merged 19 commits into from
Oct 2, 2024

Conversation

ChaeAg
Copy link
Member

@ChaeAg ChaeAg commented Sep 11, 2024

Related Issue

Key Changes

애플 소셜 로그인 로직을 구현했습니다

애플 소셜 로그인의 플로우는 다음과 같습니다.

  1. 로그인 링크에서 사용자가 애플 계정을 입력하고 로그인 하면 고유 인가 코드를 받아온다.
  2. 애플에게서 발급받은 서비스 고유 정보를 통해 client secret 을 생성한다.
  3. 생성한 client secret, 1에서 받은 사용자 고유 인가 코드, 애플 설정 관련 정보를 가지고 애플 토큰 검증 API 를 호출한다.
  4. 애플에서 access_tokenid_token 을 반환한다.
  5. id_token을 파싱하여 유저의 이메일, 소셜 아이디(고유값)을 알아낸다.
  6. 웹소소에 가입된 유저인지, 새로운 유저인지 판별하여 그에 맞는 로그인(가입) 절차를 진행한다.

병합하기 전, application.yml 파일 수정, .p8 키파일 등록 및 CD코드 수정 해두겠습니다!

To Reviewers

애플 디벨로퍼 사이트에 제 계정이 아니라 아요팀의 개인 계정으로 사용하다보니까 잦은 수정 요청이 (리다이렉트url 요런것..) 죄송스럽더라구요ㅜㅜ
그래서 애플 소셜 로그인에 refresh token 관련 로직을 추가는 하였지만 아직 테스트는 해보지 못하였습니다..ㅜㅜ
(리다이렉트 url을 이미 도메인으로 바꿨음)
배포가 완료되면 테스트 해볼 수 있을 것 같습니다..!

References

https://shxrecord.tistory.com/289
https://tyrannocoding.tistory.com/66
https://github.com/eeesnghyun/social-login/tree/main/src/main/java/com/app/sociallogin

.gitignore Show resolved Hide resolved
@ChaeAg ChaeAg marked this pull request as draft September 27, 2024 07:14
@ChaeAg ChaeAg marked this pull request as ready for review September 27, 2024 07:31
Copy link
Member

@Kim-TaeUk Kim-TaeUk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

고생하셨습니닷.

Copy link
Member

@rinarina0429 rinarina0429 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

수고하셨습니다! 카카오로그인은 controller, service가 oauth2 폴더 내에 있는게 아니라 기존의 controller, service 폴더 내에 있는 것 같은데 나중에 한 방식으로 통일시키면 좋겠네요. 중요한건 아닌 것 같아 어푸르브 하겠습니당 수고하셧으어요

@ChaeAg ChaeAg merged commit 0d95783 into dev Oct 2, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FEAT] 애플 소셜 로그인 구현
3 participants