server9 [Server] OAuth의 개념 및 프로세스 OAuth란?먼저 OAuth의 정의부터 살펴보면 다음과 같다. OAuth(”Open Authorization”)는 인터넷 사용자들이 비밀번호를 제공하지 않고,다른 웹사이트 상의 자신들의 정보에 대해 웹사이트나 애플리케이션의 접근 권한을 부여할 수 있는 공통적인 수단으로 사용되는, 접근 위임을 위한 개방형 표준이다. 여러 웹을 살펴보다 보면 Google, Kakao, Naver 등 외부 소셜 계정을 기반으로간편하게 회원가입 및 로그인을 할 수 있는 웹 애플리케이션이 많이 존재한다.이를 통해 간편하게 로그인을 할 수 있고, 연동되는 외부 애플리케이션에서 제공하는 기능을 간편하게 사용할 수 있다는 장점도 존재한다.예를 들어 Google로 소셜 로그인을 진행하면 Api를 통해 연동된 계정의 Google Cale.. 2024. 9. 8. [Server] What is JWT ( Json Web Token ) JWT ( Json Web Token)현대 웹서비스에서는 토큰을 사용하여 사용자들의 인증 작업을 처리하는 것이 가장 좋은 방법이다. 현재 토큰 기반 인증 시스템에서 가장 많이 사용되는 것이 JWT이다.먼저 JWT는 Json Web Token의 약자로 Json객체를 이용해서 토큰 자체의 정보를 저장하고 있는 웹 토큰이다. JWT는 토큰 자체를 정보로 사용하는 Self-Contained 방식으로 정보를 안전하게 전달한다. 이는 암호화된 토큰으로 복잡하고 읽을 수 없는 문자열 형태로 저장되어 있다. JWT 구조JWT는 Header, Payload, Signature의 3 부분으로 이루어지며, Json 형태인 각 부분은 Base64Url로 인코딩 되어 표현된다. 또한 각각의 부분을 이어 주기 위해 ' . ' .. 2024. 8. 26. [Server] 토큰 기반 인증 & 세션 기반 인증 Authentication (인증) / Authorization (인가) 세션 기반 인가와 토큰 기반 인가에 대해 알아보기 이전에 먼저, 인증과 인가가 무엇인지부터 알아야 할 필요가 있다. 인증과 인가를 같거나 비슷한 개념이라고 생각하는 사람들이 많을 텐데, 엄밀하게는 서로 다른 개념이다. 인증과 인가는 시스템의 자원을 적절하고 유효한 사용자에게 전달하고 공개하는 방법이다. Authentication (인증)인증은 쉽게 말하자면, 로그인을 뜻한다.클라이언트가 자기 자신이라고 주장하고 있는 사용자가 맞는지를 검증하는 과정이다. 예를 들어 로그인 화면에서 내가 아이디와 패스워드를 입력해 제출하면, 서버에서는 내가 입력한 아이디와 패스워드에 대해 유효한 사용자가 맞는지 확인한다.이와 같은 로그인 과정을 인증.. 2024. 8. 26. 이전 1 2 다음