본문 바로가기
IT/javascript

OAuth(Open Authorization)란?

by 뉴코딩맨 2023. 5. 9.
OAuth는 Open Authorization의 약어로, 사용자의 인증 및 인가를 위한 프로토콜입니다. 웹 서비스와 애플리케이션 간에 API를 공유할 수 있도록 하는 보안 인증 기술 중 하나입니다. 이 프로토콜은 사용자가 다른 서비스에서 자신의 데이터를 공유할 수 있도록 허용하는 것과 관련이 있습니다.

 

 
OAuth는 보안을 유지하면서 웹 애플리케이션과 API 서버 사이에서 사용자 인증 정보를 안전하게 전달하는 것을 목적으로 합니다. 일반적으로 OAuth는 사용자가 자신의 계정 정보(이메일 주소 및 비밀번호)를 직접 공유하지 않아도 인증을 처리할 수 있도록 합니다. 대신, OAuth는 사용자의 계정 정보가 포함된 인증 토큰을 발급하고, 이를 사용하여 API에 접근할 수 있도록 합니다.
 
OAuth는 일반적으로 두 가지 종류의 토큰을 사용합니다. Access Token은 API에 액세스하기 위한 인증 토큰으로, 일반적으로 수명이 짧습니다. 이 토큰은 사용자 인증 후 API에 액세스하는 데 사용됩니다. Refresh Token은 Access Token의 수명을 연장하는 데 사용됩니다. Access Token이 만료될 때마다, Refresh Token은 새로운 Access Token을 발급받을 수 있습니다.

 

 
OAuth는 일반적으로 3가지 역할을 수행합니다. 첫째, 클라이언트 애플리케이션은 사용자가 인증 서버에 로그인하도록 유도합니다. 둘째, 인증 서버는 사용자에게 인증 정보를 요청하고, 인증된 사용자에 대한 Access Token 및 Refresh Token을 발급합니다. 마지막으로, 클라이언트 애플리케이션은 Access Token 및 Refresh Token을 사용하여 API 서버에 액세스할 수 있습니다.
 
OAuth는 현재 많은 웹 서비스 및 애플리케이션에서 널리 사용되고 있습니다. Facebook, Twitter, Google, Microsoft 등과 같은 대규모 인터넷 기업도 OAuth를 사용하여 API에 대한 인증을 처리합니다. 또한, OAuth는 애플리케이션 및 서비스를 개발하는 개발자들에게 API를 공유하고자 하는 고객들에게 강력한 보안 인증 방법을 제공합니다.
 

'IT > javascript' 카테고리의 다른 글

HTTP 쿠키(HTTP cookie)란?  (1) 2023.05.14
UUID(Universally Unique Identifier)란?  (0) 2023.05.10
REST(Representational State Transfer) API 란?  (0) 2023.05.08
자바스크립트 class super  (0) 2023.04.24
자바스크립트 class extends  (0) 2023.04.24

댓글