[TIL_27] 인증 & 인가 (1)

구민기·2021년 12월 8일
0

TIL_WECODE_Fondation_React

목록 보기
10/10
post-thumbnail

인증(Authentication)

인증은 유저의 identification을 확인하는 절차이다.
로그인 절차라고 생각하면 될것같다.

로그인 절차

  1. id 및 password 생성
  2. password를 암호화해서 DB에 저장 (회원가입)
  3. 유저가 id 와 password 를 입력 (로그인 시도)
  4. 유저가 입력한 password를 암호화 한 후 DB에 암호화된 비밀번호와 비교
  5. 일치하면 로그인 성공
  6. 로그인을 성공하면 response로 유저에게 access token을 전송
  7. 유저는 로그인 성공 후 다음부터는 request를 서버에 전송할때 access token을 첨부해서 로그인 성공여부를 서버에 알려준다.

JWT(JSON Web Tokens)

위에서 말한 access token을 생성하는 기술 중 하나가 JWT이다.
유저 정보를 담은 JSON 데이터를 암호화해서 주고 받는 방법이다.

인가(Authorization)

인증은 유저의 정보가 일치하는지 판단하는 절차이고,
인가는 유저의 권한을 확인하는 절차이다.

이 과정도 JTW 를 이용해서 권한을 확인하다.

Authorization 절차

  1. 인증 절차를 통해 access token을 생성하고 받는다.
  2. 유저가 request를 보낼때 access token을 보낸다.
  3. 서버에서 유저가 보낸 access token을 복호화해서 그 안에 있는 유저의 정보를 얻는다.
  4. 유저 정보를 사용해서 DB에서 해당 유저의 권한(permission)을 확인한다.
  5. 권한을 가지고 있으면 해당 요청을 정상적으로 처리한다.
  6. 권한이 없으면 에러메세지를 보낸다.

0개의 댓글