본문 바로가기

완료

자동 로그인

Hide_D2020.05.13 10:21조회 수 904댓글 2

    • 글자 크기

시대가 어느땐데 아직도 자동 로그인이 안됩니까

계정 하나당 기기 3개까진 자동로그인 되게 합시다.

로그인에 자동로그인을 기본값이 체크, 원할때 체크하지 않게 하기로.

 

 

(1) 서버측 request, 클라이언트 response 방식으로 HASH(token | nonce) 값 비교해서 자동 로그인 구현.

(2) state 보관과 관련된 구현이 안되어있으니 일단 API 요청은 자르고, 웹 요청만 수행하고 서버별 메인 페이지로 보내는 것으로

 

(3) 자동 로그인 상세 동작

[1] requireLogin의 Fallback 페이지를 auto_login.php?redirect=페이지&nonce=숫자로 설정

- 만약 auto_login_token 테이블에 해당 유저의 token의 valid_to를 확인해서 기간을 초과했다면 토큰 폐기 후 메인페이지로

[2] 토큰이 아직 유효하다면 auto_login_token 테이블에 해당 유저의 user_id, token, nonce 재설정. (nonce를 서버측에서 재설정하는 것에 유의)

[3] 클라이언트는 uri를 분석하여 token과 nonce를 재 조합하여 j_auto_login.php로 전송

[4] 서버는 테이블의 user_id, token, nonce가 모두 일치하는지 확인하고, 일치하면 로그인 성공처리, 실패하면 토큰 폐기

[5] 로그인 성공하면 클라이언트에서 location을 수정하여 redirect 페이지로 바로 이동

- 일단은 requireGameLogin은 redirect 후에 페이지 내부에서 처리함

 

(4) 일반 로그인 상세 동작

[1] 아이디/비밀번호로 로그인 (j_login.php)

[2] 로그인 성공 시 auto_login_token이 넉넉한지 확인하고, 초과했다면 가장 valid_to가 오래된 것부터 삭제

- 넉넉함의 기준은 3개   데스크탑, 폰, 태블릿(?)

[3] 새 토큰 발급, j_login.php의 응답값에 토큰을 추가

- valid_to는 로그인 기준 3개월 예상

[4] 토큰을 localStorage에 저장

 

(5) 예상되는 문제점

- 자동 로그인 토큰은 유효하지만 카카오톡 로그인 재인증이 필요한 경우

- 작성안은 API 자체로는 stateless하지 않아 세션 관리가 필요. 세션 없이 작동하려면 token을 OpenAPI 구현과 비슷하게 영구 토큰, 로그인 토큰의 2단계로 분리해야함.

    • 글자 크기
v0.24 버그 확인/수정 현황 (by Hide_D) 종횡가 전략 너프 (by Hide_D)

댓글 달기

댓글 2
  • Hide_D글쓴이
    2020.6.27 02:13 댓글추천 0비추천 0

    곰곰히 생각해보면 그냥 JWT 써도 되긴 한다.

  • Hide_D글쓴이
    2021.11.8 04:25 댓글추천 0비추천 0

    새로운 API 규격에 맞춰서 구현

     

    reqNonce -> loginByToken 핑퐁.

     

    로그인 동시 지원 수는 10개.

    지원 기간은 7일이나, 만료 2일 이내일 때 자동 갱신.

     

    자동 로그인 후 로그아웃 시 토큰 해제

번호 분류 제목 글쓴이 최근 수정일 날짜 조회 수
공지 토론중 갠톡, 단톡 등에서 설명하였던 내용을 모두 적어둡니다.18 Hide_D 2023.04.25 2023.02.05 312
공지 완료 시나리오 제안 시 구성 방법에 대해 안내합니다. (22-03-13) Hide_D 2022.03.13 2022.03.13 983
공지 완료 마이너 서버 요청 가이드 갓세정 2022.06.28 2018.12.03 2418
공지 완료 신규 시나리오 제안 가이드 갓세정 2018.07.16 2018.05.30 2897
완료 자동 로그인2 Hide_D 2021.11.08 2020.05.13 904
64 완료 종횡가 전략 너프2 Hide_D 2021.11.13 2021.10.24 697
63 완료 36기 전 필수 패치1 Hide_D 2021.11.14 2021.10.06 809
62 완료 NPC 군주 거병 후 이동 로직 변경1 Hide_D 2021.11.16 2021.10.17 472
61 완료 자율사령턴 포상금액 정책으로 제한가능하도록 건의2 평민킬러 2021.11.16 2021.10.21 603
60 완료 37기 전 패치1 Hide_D 2021.11.18 2021.11.16 236
59 완료 수비자 획득 숙련도 감소 Hide_D 2021.11.26 2021.11.26 182
58 완료 NPC 빙의의 경우에 중반 이전 빙의 & 끝까지 살아남았다면 유산 포인트 부여 Hide_D 2021.09.19 2021.09.19 366
57 완료 보병의 3등급병종 추가를 건의합니다.4 평민킬러 2021.11.29 2021.11.06 431
56 완료 서버시간 위치 이동 건의2 Per 2021.12.09 2020.08.20 966
55 완료 [게시판 이용 관련] 휴대폰으로 회원가입시 자동가입방지문자가 곤-란!7 헹이 2021.12.09 2018.09.24 1037
54 완료 거병했을시 거병위치도 공개하기 건의6 SARS 2021.12.09 2018.06.28 885
53 완료 애니집결 9차 수정본(맞나) dwfef 2021.11.05 2021.11.05 301
52 완료 38기 전 필수 패치 Hide_D 2021.12.17 2021.11.30 219
51 완료 전특 변경 필요.1 Hide_D 2021.11.25 2021.09.16 467
50 완료 39기 전 필수 패치 (일부 연기)1 Hide_D 2022.01.06 2021.12.21 273
49 완료 40기 내 필수 패치 Hide_D 2022.02.05 2022.01.18 226
48 완료 도구 훈련/사기 유니크, 장비매매 탁주 청주, 성격. 수치의 갭1 사스케 2022.02.23 2022.02.07 138
47 완료 유산포인트 천통 베팅5 Hide_D 2021.12.21 2021.12.16 174
46 완료 신규 시나리오 이세계 무쌍2 갓세정 2022.03.10 2022.03.08 151
첨부 (0)