💪 Today I Learned
로그인 인증 및 유지 방법
Cookie / Session
- Cookie : 클라이언트의 저장소 중 하나
- Session : 서버의 저장소
session ID
사용 시 API 요청할 때마다 아이디와 패스워드를 함께 보내지 않아도 되는 1차원적인 해결한다. 하지만 서버에서 관리해줘야 할 것이 늘어나 서버 부하의 문제가 있다.
JWT (Jason Web Token)
- Header : meta-data
- Payload : real data (중요 정보 제외)
- Signature : Header, Payload, Secret key를 묶어 암호화
서버 부하를 해결했으나 토큰이 탈취될 경우 보안상의 문제가 있다. 이것은 payload
에 유효기간을 설정해 해커가 탈취할 수 있는 시간을 한정적으로 막으면 된다.
OAuth 2.0
- 인증 관련 프로토콜
여러 웹/앱을 사용하다 보면 회원가입 창에 소셜 로그인 기능이 있는 경우가 많다. 이것들은 모두 OAuth
를 사용한 것인데 JWT와 비슷하게 access token을 이용한다.
🏃 한마디
소프트 스퀘어드 5주차 수업을 들으며 인증 관련해서 알아두어야 할 점이 많다고 느꼈다. API 설계 시 이 모든 것들을 고려해서 validation
처리를 해줘야하기 때문에 저번주 과제를 많이 수정해야겠다.