은버지 스터디
소셜 로그인
소셜 사인 인 (Social Sign-in) 또는 소셜 사인 온 (Social Sign-on)이라고도 하는 소셜 로그인은 소셜 네트워킹 사이트의 정보를 이용해 타사 애플리케이션과 플랫폼에 손쉽게 로그인할 수 있는 프로세스를 말한다 계정을 만들 필요 없이 편리한 방법을 제공하여 로그인 및 등록 경험을 간소화할 목적으로 개발되었다 소셜 인증이 이점은 편리함이다 하지만 데이터 보안 위험을 초래하기도 하기 때문에 보안에 주의해야 한다
소셜 로그인 구현
소셜 로그인을 구현해 보았다 카카오, 네이버, 구글 3가지를 도전해 보기로 했는데 시간 안에는 카카오밖에 구현을 하지 못했다 소셜 로그인 로직은 먼저 프런트에서 소셜에 로그인을 해서 확인받아 인가 코드를 받고 그 인가 코드를 백엔드한테 준다 그럼 백엔드에서 소셜한테 프론트에서 받아온 인가코드를 주고 소셜은 유효성 검증을 한 뒤에 일치하면 백엔드에게 토큰을 준다 백엔드는 소셜에서 받은 토큰으로 유저정보를 활용해서 서버 전용 토큰을 발행하고 그 토큰을 프런트에게 넘겨주고 사용자 로그인을 시킨다 프런트는 토큰을 확인하고 로그인이 완료되었으니 사이트를 이용할 수 있게 해 준다
일단 로직은 금방 이해가 갔는데 구현하는 것은 오래 걸렸다 먼저 사용할 카카오 api 문서를 정독한 뒤에 UI 기본틀을 만들고 기능구현을 시작했다 kakao api 문서를 정독했음에도 그것을 코드로 나의 코드로 옮기고 만드는 것은 너무나 달랐다 카카오로 인가코드를 받는 것은 잘 따라갔지만 이 인가코드로 백이랑 협의 보는 것은 딴 나라 이야기였다 그래도 백이랑 합의를 보아 로그인이 됐을 때는 너무 만족스러웠다
후기
소셜 로그인할 때 고민했던 것은 로그아웃 백엔드 쪽에 카카오톡 로그아웃이 없어서 그럼 로그아웃은 어디서 하는가 고민했다 아무리 생각해도 소셜 로그인 로직을 보았을 때 백엔드에서 하는 것이 맞는데.... 했는데 구현이 안 돼있던 것이 맞았다 나중에 시간 날 때 네이버랑 구글 소셜 로그인도 만들어봐야지
'TIL & 일지' 카테고리의 다른 글
TIL, 7.17 (0) | 2023.07.18 |
---|---|
TIL, 7.13-16 (0) | 2023.07.16 |
TIL, 07.11 (0) | 2023.07.12 |
TIL, 07.10 (0) | 2023.07.11 |
TIL, 07.08-09 (0) | 2023.07.10 |
댓글