[항해99] 1주차 - 1DAY

kyuu·2022년 11월 14일
0

항해99

목록 보기
12/19
post-thumbnail

오늘 진짜 항해99의 1DAY가 시작되었다

사실상 공부는 10월 말쯤부터 시작해서 이제 2주차는 된 것 같은데
죽음의 주 100시간은 오늘부터 시작이다 .. ❗️

벌써 힘든 것 같지만 잘 버텨보겠습미다

항해99 시작주차 1주차 항해일지 <1day - TIL>

📍Today I Learn

배운 것 :

  • 미니프로젝트 계획서(S.A) 작성하기 (With.wireFrame)
  • JWT

항해99의 첫 시작 ! 미니 프로젝트

  • 프로젝트 시작 전, 먼저 프로젝트 진행 계획서를 작성한다.
  • 프로젝트 계획서(Starting Assignment)는 아래와 같은 내용으로 작성한다.
      1. 프로젝트 주제
      1. 페이지별 와이어 프레임
      1. API 명세
      1. 역할분담/체크리스트
  • 우리 조는 OTT 의 숨겨진 기똥찬 컨텐츠를 추천해준다는 컨셉으로, OTT-Planet이라는 조 이름을 지었다 💫


업로드중..

  • 처음으로 작성해 본 S.A 계획서 첫 페이지! 처음이라 꽤 오랜 시간이 걸렸다.
    다음엔 조금 더 빠르게 쓸 수 있지 않을까? 생각하고, 와이어 프레임 다루는 법은 시간 날때 틈틈히 배워봐야겠다고 생각해본다 😅

🔑 파이썬 회원가입/로그인 JWT 세션

📌 JWT란 무엇인가?

  • JSon Web TOken의 약자로, 유저를 인증하고 식별하기 위한 토큰 기반의 인증이다.
  • 토큰은 세션과 달리 서버에 저장되는게 아니라 클라이언트에 저장이 되어 세션보다는 서버에 부담을 덜 수 있다는 장점이 있다.

1️⃣. JWT를 통한 인증절차
(1) 클라이언트 사용자가 아이디,패스워드를 통해 웹 서비스 인증 요청
(2) 서버에 서명된 JWT를 생성하여 클라이언트에 응답으로 토큰을 전달해줌
(3) 클라이언트가 서버에 데이터를 추가적으로 요구할때 JWT를 HTTP header에 첨부함
(4) 서버에서 클라이언트로 온 JWT를 검증

2️⃣. JWT의 구조

  • Header : JWT에서 사용할 타입과 해시 알고리즘의 종류
  • Payload : 서버에서 첨부한 사용자 권한 정보와 데이터
  • Signature : 전자서명

3️⃣. 기존의 인증/인가 방식과 다른점?

  • 기존의 서버 기반 인증 시스템에서는, 서버측에서 유저들의 정보를 세션에 기억하고 있어야함.
  • 이 세션을 유지하기 위해서는 여러가지 방식으로 메모리/디스크/데이터베이스에 이를 담아 서버가 그 정보에 대해서 관리가 필요
  • 토큰 기반 시스템은 stateless하여 유저의 인정 정보를 서버나 세션에 담아두지 않기 때문에 인증 정보를 서버에 담아둠으로서 발생하는 많은 문제가 해소됨

4️⃣ 클레임 토큰 기반

  • JWT를 사용하는 가장 큰 이유는 클레임 토큰 기반 인증이 주는 편리함이다.
  • 일반 토큰 기반 인증은 토큰을 검증시 관련 정보를 서버에 저장해두어 항상 DB에 접속해야하고, 저장소에 저장해둔 session ID를 찾아서 검증하는 절차를 가져 다소 번거로웠다.
  • 하지만 클레임 토큰 기반의 JWT는 사용자 인증에 필요한 모든 정보를 토큰에 담고 있기 때문에 별도의 인증 저장소가 필요하지않다.
profile
엔지니어 꿈틀 개발자

0개의 댓글

관련 채용 정보