Skip to content

사용자 안내서

yccs-26 edited this page Sep 14, 2020 · 1 revision

RABUMS (서버) : NERA(클라이언트)가 요청하는 파일에 대한 응답을 할 수 있도록 구성된 시스템이다. NERA(클라이언트) : RABUMS와 통신하는 대상이며 사용자와 직접적으로 연결되어 있는 시스템이다.

hash 함수란? 원본 데이터를 소문자, 대문자, 그리고 숫자의 혼합으로 문자열로 치환하는 함수이다. ex) "HELLO WORLD" => "SEVMTE8gV09STEQ=" => "ae1306b81859d3c99e5fa9bf29c7e3ad97965af7e4644b7802e0c00ee73c5839"

hash 함수를 사용하여 pw를 안전하게 저장한다. => HASH( HASH ( HASH(PW) ) + HASH(token) ) 로 만든 값을 userPw로 이용한다.

토큰(token)이란? 서버(RABUMS)와 클라이언트(NERA)가 서로 데이터 교환을 위해 클라이언트에 부여하는 객체이다. 세션 식별자(Session ID)라고 하기도 한다. (토큰이 유출된 경우 폐기한 후 새로운 토큰을 사용한다.)

회원인증 절차

  1. ID와 PW를 입력한다.
  2. NERA(클라이언트)가 사용자로부터 정보를 받으면 접근 허가 토큰(token)을 사용하여 정보가 맞는지 RABUMS(서버)에 확인을 요청한다.
  3. token, userId, 그리고 userPw가 RABUMS에 있는 정보와 일치하면 NERA에 응답한다.

응답 내용 : _id, userId, userName, userNumber

  • _id : RABUMS에서 관리하는 사용자들의 고유 식별 번호
  • userId : 사용자 id
  • userName : 사용자 이름
  • userNumber : 사용자 학번
  1. 옳지 않는 요청에는 메세지를 보낸다.
  • 400 : 잘못된 요청 ; 요청에 token, userId, userPw가 정상적으로 확인되지 않는다.
  • 401 : 유효하지 않은 token
  • 403 : 회원가입되어 있지 않은 회원이거나 ID나 PW가 잘못 입력되었다.
  • 500 : 서버 내부 오류
Clone this wiki locally