로그인 & 회원가입

Seunghyunkim1·2020년 4월 19일
0

wecode

목록 보기
14/25

모든 페이지 노노

scrum 방식

일의 card ticket 정해서 무슨일을 할지 정하기

trello

만들때 무엇을 만들어야할지 card들 작성

http stateless 로그인 회원가입

로그인 - 개념

백엔드와의 협업

나와야될 키워드가 있다.

프론트
브라우저에서 로그인관리를 어떻게할수있는지
서로의 통신 (http)을 통해서 구체적으로 어떻게 이루어지는지
포스트맨으로 api를 코드치기전에 테스트를 해보고 테스트를 제대로할수있는지 확인해얗ㅁ
token , jwt 개념확실시

token 생성 프론트 관리는 백엔드에서한다.

  1. access token 왜필요한가

    • 접근권한, 로그인관리.
      브라우저에서 로그인페이지와 메인페이지 마이페이지
      사용자가 브라우저에 접속
      만약에 로그인을 안한상태에서 마이페이지접근 -> 튕겨나옴
      메인페이지에 갔을때 로그인이 필요없으니까 -> 바로접근가능
      로그인페이지도 접근가능

    마이페이지같은데서 브라우제에 접근하는 사용자가 로그인이 됏는지 안됏는지 중요함!!

    브라우저에서는 상태를 관리하고있지않다. http통신은 프론트와 백엔드가 통신하는 것이므로 stateless 상태를 유지하고있지않다.?

    로그인을 하고나서, 로그인 api를보낸순간 응답을 받을수잇지만
    로그인에서 마이페이지로갓을때 나에대한 정보를 가지고오는 엔드포인트를 통해서 나의 모든 정보를 받아야한다. 이다음 http통신엣 ㅓ 내 유저정보를 알수없다.?
    통신마다 내가 누구인지 백엔드에게 알려줘야한다. api를 호출하는 주체는 프론트다 백엔드가 아님. 백엔드는 어떤정보가 필요한지 알려면 프론트에서 지금 로그인 유무에대해서 저장을 해야한다. 저장에 대한 권한이 들어있는 토큰을 가지고 관리를 한다.
    왜필요하냐
    http통신은 stateless라서 api를 호출할때 어쩔때는 내가 누군지에대한 저옵를 백엔드를 줘야하고 상품정보를 필요할때는 내정보를 줄필요가없다. api통신은 상태를 유지하고있지않다.(로그인상태유지않함)
    백엔드에게 나 누구야라고 보여주기위해서 토큰을 줘야함.

    아이디 비번을 매번주면 보안성취약. 값자체를 가지고있으면 위험

    유저정보가 숨겨서 들어갈만한 정보 -> 토큰


    프론트 - 아이디 비번 로그인버튼 정보작성후 버튼이벤트
    로그인엔드포인트로 백엔드에게 전송
    http바디에 아이디정보, 비번정보를 백엔드에게넘김 (요청)

    백엔드에서는 디비(테이블) 유저정보의 테이블 -> 정보를 확인한다. -> 맞다고 확인되면 프론트에게 access token을 응답한다.

jwt.io jwt방식으로 토큰을 만들어서 전송
아이디 정보(실제사용자의 ㅈ ㅓㅇ보가안리ㅏ 유저테이블에서 생기는 자동생성되는 데이터(유니크)를 주고받음 ex) user_id = 1 을 전송
보안에 중요할거같은것들 넣으면 아노댐

로그인- 사용자정보가 필요한 api 에서는??

jwt를 받앗을떄 프론트에서 가지고있다가 다음 apifmf wjsekfgkfEo
access token
api저장
로컬스토리지
세션
쿠키
spa 보다 jwt사용많이함

마이페이지 정보

요청 토큰으로 ex id :1
응답 json (객체모양) 프론트는 제이슨데이터를 가지고 하나씩 접근해서 보여준다. 특정 api를가지고 사용자저옵를 보여준다.

도메인 naver.com wecode.com

/페이보릿 토큰

0개의 댓글