일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 재귀함수
- Hackerrank
- 코딩테스트
- 자바스크립트
- 개발자의 책장
- 최강의 인생
- Algorithms
- array.push()
- 프로그래머스
- 코플릿
- join
- Developer_JoyKim
- node.js
- JavaScript
- 코드스테이츠
- 알고리즘
- 코딩공부
- array
- 블록체인
- Where
- array.slice()
- 배열
- 정규표현식
- Programmers
- 역행자
- 개발자_조이킴
- MySQL
- for문
- SQL
- select
- Today
- Total
CodingSpace
[NodeJS/Express] passport 미들웨어로 Google OAuth 2.0 구현하기 (1) 본문
[NodeJS/Express] passport 미들웨어로 Google OAuth 2.0 구현하기 (1)
개발자_조이킴 2022. 12. 23. 21:00Intro.
웹 서비스를 사용하다보면 회원가입을 하지 않아도
구글 계정으로 로그인하여 서비스를 사용한 경험이 있을 것이다.
(요즘에는 구글 계정으로 로그인해도 회원가입을 하는게 나을 정도로 추가 절차가 많은 느낌이지만...)
이러한 인증 방식을 OAuth 2.0 라고 하며
흔히 소셜 로그인(Social Login)이라고 부르기도 한다.
이번 글에서는 Passport 미들웨어를 사용해
Google 소셜 로그인 기능을 구현하는 과정을 담았다.
개발언어와 프레임워크는 각각 node.js와 express을 사용했다.
Description.
1. Google 소셜 로그인 API 키 발급 받기
1.1. Google 개발자 사이트
https://console.cloud.google.com/projectselector2/apis/dashboard?pli=1&supportedpurview=project
Google 클라우드 플랫폼
로그인 Google 클라우드 플랫폼으로 이동
accounts.google.com
1.2. 프로젝트 만들기
프로젝트 만들기를 클릭한다.
프로젝트 이름을 입력한 후 만들기를 클릭한다.
1.3. 사용자 인증 정보 탭 클릭
사용자 인증 정보 탭 클릭 후
동의 화면 구성 클릭
User Type을 외부로 선택한 후
만들기 클릭
다음으로 앱 정보들을 차근차근 기입해줍니다.
실 서비스를 구축하는 것이 아닌
OAuth 로그인 기능을 구현하는 것이 목적이므로
앱 도메인에 tistory 주소를 사용했습니다:)
다음으로 OAuth 로그인을 했을 때
Google에서 제공하는 정보 범위에 대해서 설정해주는 단계입니다.
간단하게 Google 계정의 이메일 주소와 이름 등의 정보가 포함된 개인정보만
제공되도록 설정해줍니다.
저장 후 계속 버튼을 클릭합니다.
사용자 인증 정보 만들기 → OAuth 클라이언트 ID를 클릭합니다.
애플리케이션 유형은 "웹 애플리케이션"으로 선택합니다.
그리고 승인된 리디렉션 URI에
http://localhost:3333/api/oauth/google/callback
을 기입합니다.
Google 인증 절차가 마친 후 요청이 전달되는 endpoint 입니다.
마지막으로 만들기 버튼을 클릭합니다.
클라이언트 키와 비밀번호가 성공적으로 생성되었다.
이제 Google 소셜 로그인 기능을 구현하러 가자!
References.
구글 소셜 로그인 API 키 발급 방법 - TraderHaru
구글 소셜 로그인 기능을 구현하기 위해 API키를 발급 받는 방법에 대해 그림과 함께 상세하게 설명 해 두었습니다. 구글 OAuth 키 발급에 시간을 낭비하지 말자!!
www.traderharu.com
- node.js + express 이미지 출처: https://velog.io/@gidong_e/Node.js-Express
[Node.js] Express
이전 시간에 Node.js HTTP 모듈에 대해 배웠고, 오늘은 Express 모듈에 대해 설명해보려고 한다.expressjs.com/ko/ 에서 설명하는 바는 다음과 같다."Express는 웹 및 모바일 애플리케이션을 위한 일련의 강력
velog.io
'Back-End > NodeJS' 카테고리의 다른 글
[Jest] 에러 해결 - ReferenceError: You are trying to `import` a file after the Jest environment has been torn down (2) | 2023.05.28 |
---|---|
[NodeJS/Express] req.body에 undefined가 발생했을 때 (0) | 2022.12.22 |
[NodeJS/Express] express-validator 라이브러리를 이용한 유효성 검사 구현 (0) | 2022.12.21 |
[NodeJS/Express] 미들웨어로 에러 처리 (0) | 2022.12.21 |