개인 노트 정리) 프론트엔드 개발자가 알아야 하는 CS 지식 - 웹(Web) - OAuth
2023. 4. 11. 20:57ㆍ개인노트-인강
프론트엔드 웹 개발의 모든 것 초격차 패키지 Online.
프론트엔드 개발자가 알아야 하는 CS 지식 Ch 01. 웹(Web)
# OAuth
OAuth(오어스)는 실질적으로 다양한 웹서비스를 개발할 때, 자주 사용되는 기술로서 이해할 수 있습니다.
특히 내가 만든 서비스를 사용자의 입장에서 다양한 편의성이 높은 기능을 제공하기 위해서 효과적으로 사용할 수 있습니다.
OAuth란?
- OAuth란, Google 로그인 기능을 떠올리면 간단합니다.
- 웹 서버에 Google 비밀번호를 제공하지 않고도, Google 계정의 일부 접근 권한을 부여할 수 있습니다.
- 실제로 많은 애플리케이션에서는 SNS (Google, Facebook 등) 간편 로그인 기능을 제공합니다.
## 안전하지 않은 인증 방식 예시
- 안전하지 않은 SNS 로그인 방식을 생각해 보겠습니다.
- 아래 경우에서는 사용자가 서버에게 Google 아이디와 패스워드를 알려주어야 합니다.
위처럼 구글 계정 정보가 웹 서버로 간다는 점에서 보안적인 측면의 문제가 발생할 수 있습니다.
그래서 토큰방식을 이용해 볼 수 있습니다.
## Access Token 이용하기
- 사용자가 설정한 권한에 대해서만 Google 정보에 접근할 수 있도록 합니다. (장점)
- 바로 Access Token을 이용하는 것입니다.
- 이러한 과정을 어떻게 효율적으로 구성할 수 있을지 고려해 봅니다.
## OAuth 2.0 구성 요소
- OAuth 2.0의 핵심 구성 요소는 다음과 같습니다.
## OAuth 2.0 동작 예시 (개발자 = Client 입장에서)
'개인노트-인강' 카테고리의 다른 글
개인 노트 정리) 프론트엔드 개발자가 알아야 하는 CS 지식 - 컴퓨터 구조 - 컴퓨터 구조 기초 (0) | 2023.04.13 |
---|---|
개인 노트 정리) 프론트엔드 개발자가 알아야 하는 CS 지식 - 웹(Web) - JWT(JSON Web Token) (0) | 2023.04.12 |
개인 노트 정리) 프론트엔드 개발자가 알아야 하는 CS 지식 - 웹(Web) - REST API (0) | 2023.04.09 |
개인 노트 정리) 프론트엔드 개발자가 알아야 하는 CS 지식 - 웹(Web) - HTTP (0) | 2023.04.09 |
개인 노트 정리) 프론트엔드 개발자가 알아야 하는 CS 지식 - 웹(Web) - 쿠키(Cookie)와 세션(Session) (0) | 2023.04.07 |