[Token (8주차 주제)]
핵심 키워드 🎯
Token : 어떤 서비스를 이용할 때 사용자 구분 & 인증을 도와주는 것 like 입장권
사용자 인증 방식
oAuth : 다양한 플랫폼 환경에서 권한 부여를 위한 산업 표준 프로토콜
역할 : 외부서비스에서도 인증을 가능하게 함.
장점 : 인증정보를 따로 남길 필요없이 토큰만으로도 인증 가능
단점 : 보안 취약
Cookie : 클라이언트가 어떠한 웹사이트를 방문할 경우, 그 사이트가 사용하고 있는 서버를 통해 클라이언트의 브라우저에 설치되는 작은 기록 정보 파일
역할 및 장점 : 쿠키를 통해 클라이언트 로그인 상태 유지
단점 : 유출과 조작을 당할 위험이 존재
JWT(JSON Web Token) : 인증에 필요한 정보들을 암호화한 토큰
oAuth와 Cookie의 단점을 해결가능
역할 : 토큰을 기반으로 다른 시스템에 접근 및 권한 공유
장점 :
인증정보에 대한 별도의 저장소가 필요 없음
토큰이 한번 발급되면 유효기간 만료까지 계속 사용 가능,
모바일 어플리케이션 환경에서 잘 동작함
로그인 과정
클라이언트 → Server ) ID, PW 전송
Server) ID, PW정보가 DB에 등록되어있는지 확인
Server→ 클라이언트) Jwt, userIdx발급
Jwt 토큰 : 우리서비스의 사용자라는 인증서 & 사용자 구분
userIdx(user index) : 몇번째 사용자인지를 의미함
사용자 별 정보를 DB에 유지, 관리하는 방법
기본적으로 jwt사용 ⇒ 각 사용자별로 정보를 저장 & 관리
‼️주의사항
과제 피드백 기반 진행입니다
- 한명씩 본인의
과제를 발표
하는 시간 그리고 해온
과제에 대한 피드백
을 하는 시간 (ex:전 이렇게 생각해서 이런 부분 다르게 해왔는데 저것도 괜찮은 것 같아요!)이
무조건 기반
이 되어야 합니다!
부가적으로
워크북에서 제공되는 키워드 혹은 강의에서 들은 디테일 적인 부분
에서 더 토의해봐도 좋을 것 같습니다
1. 8주차 수업 후기 📢
8주차
수업을 듣고 서로 느낀 점을 이야기해주세요!
핵심 키워드에 대해 완벽하게 이해했는지? 혹시 이해가 안 되는 부분은 뭐였는지? 서로 이야기해주세요!
2. 실습 체크리스트 ✅
[ ]
실제 Flo앱과 흡사하게 만들었나요? - 단지 비슷해서만 되는게 아닙니다! 디자인을 실제 퍼블리싱하는 과정을 연습하는 것이기 때문에 다른 사람이 볼때 정말 플로어플인지 아닌지 헷갈릴 정도로 만들었는지 확인해주세요!
[ ] JWT(userIdx)를 적절하게 활용하였나요?
[ ]
RoomDB의 UserDAO를 적절히 활용하였나요?
[ ]
RoomDB 데이터 베이스에 User Like 테이블이 전부 잘 저장이 되어 있나요?
[ ]
플로앱에 맞게 커스텀이 적절히 되어있나요?(챌린지
🔥)
FLO 클론코딩 실습 설명 페이지