코드잇 스프린트 4기
15주 차 위클리 페이퍼
1. SEO가 무엇인지 설명하고, 개선을 위해 어떤 작업을 할 수 있을지 설명해 주세요.
SEO(Search Engine Optimization; 검색 엔진 최적화)
구글, 네이버와 같은 포털 사이트에서 특정 키워드를 검색했을 때 상위 순위를 차지할 수 있도록 하는 방법.
SEO 개선 방법
시맨틱 태그(Semantic Tag)
<aside>, <section>, <article>, <header>, <nav>, <main>, <footer> ...
메타 태그(Meta Tag)
<title>, <description>, <robots> ...
오픈 그래프 태그(Open Graph Tag)
<meta property="og:??">, <meta property="twitter:??"> ...
이미지 태그 alt 속성
<img src="/벚꽃.jpg" alt="벚꽃" />
2. 세션 기반 인증과 토큰 기반 인증을 비교해서 설명해 주세요.
세션 기반 인증
사용자의 인증 정보를 서버의 세션 저장소에 저장하는 방식. 요청마다 세션 정보를 함께 전송하여 서버에서 가지고 있는 세션 정보와 비교하는 방식이다.
세션의 기간 만료, 로그아웃 시 서버에서 보관 중인 세션을 만료 처리한다.
토큰 기반 인증
인증 토큰을 사용하는 방식. JWT(JSON Web Token)을 많이 사용한다. 로그인 시 서버에서 토큰을 만들어서 클라이언트에 보내주고 세션과 다르게 토큰을 서버에서 저장하지 않는다.
세션 vs 토큰
비용
사이즈 측면에서 세션이 토큰보다 가볍다. 즉, 토큰 방식이 더 많은 네트워크 트래픽을 사용한다.
보안
서버에서 세션 정보를 가지고 있기 때문에 언제든 세션 정보를 무효화 할 수 있기 때문에 세션이 보안 측면에서 조금 더 유리하다.
확장성
토큰은 서버의 비밀 키를 가지고 있으면 서로 다른 서버에서 토큰을 인증할 수 있어서 확장성이 좋다.
RESTful API
세션 기반은 서버에서 상태를 가지고 있기 때문에 stateful하다. stateless한 특성이 REST에 더 부합하기 때문에 토큰 기반이 더 적합하다.
출처
https://hudi.blog/session-based-auth-vs-token-based-auth/
감사합니다.
'코드잇 스프린트 4기 > 위클리 페이퍼' 카테고리의 다른 글
코드잇 스프린트 14주 차 위클리 페이퍼 (0) | 2024.03.31 |
---|---|
코드잇 스프린트 13주 차 위클리 페이퍼 (1) | 2024.03.23 |
코드잇 스프린트 12주 차 위클리 페이퍼 (1) | 2024.03.22 |
코드잇 스프린트 9주 차 위클리 페이퍼 (1) | 2024.02.24 |
[WEB] CSR, SSR, SSG (0) | 2024.02.17 |
댓글