Section 4. 모의 면접

Kim·2022년 12월 14일
0

Retrospect

목록 보기
9/11
post-thumbnail

이번에도 어김없이 Section의 마지막 날, 항상 있는 기술 면접을 봤다.
모의 면접이긴 하지만 답변을 준비하면서 느낀 것은 이번 Section에 대한 이해가 완벽하지 않다는 것이다. 지난 section에서도 개념 정리가 되지 않았다고 느꼈는데, 지난 section부터 개념 정리를 다시 해야할 것 같다.


인증과 인가의 차이에 대해 설명해 주세요.

인증은 애플리케이션을 사용하는 사용자가 본인임을 증명하는 절차입니다.
애플리케이션을 정상적으로 수행하려면 사용자를 식별하기 위한 정보가 필요한데, 이를 크레덴셜이라 합니다. 회원가입과 로그인 기능이 크레덴셜이라 할 수 있고, 로그인을 할 때 입력하는 패스워드는 아이디를 증명하기 위한 크레덴셜이 됩니다.

인가는 인증이 정상적으로 수행된 사용자에게 권한을 부여해서 애플리케이션의 특정 리소스에 접근할 수 있게 허가하는 과정입니다.
반드시 인증 과정 이후에 수행되어야 하며, 일반적으로 역할 형태로 권한이 부여됩니다.

세션을 간단하게 설명해 주세요.

웹사이트에서 로그인을 시도할 때, 정확한 아이디와 비밀번호를 입력했다면 서버는 인증에 성공했다고 판단할 것입니다.
쇼핑몰 사이트를 이용하면, 로그인에 성공하고 상품을 장바구니에 넣을 때 로그인을 다시 할 필요가 없습니다.
왜냐하면, 서버가 로그인에 성공함으로써 이전에 인증된 사용자라고 판단했기 때문입니다.

세션은 이렇게 사용자가 인증에 성공한 상태를 말합니다.
사용자가 인증에 성공하면, 세션을 구분할 수 있는 세션 아이디가 만들어집니다. 클라이언트 쪽에 세션 성공을 증명할 수단으로 세션 아이디를 전달하게 됩니다.
그리고 로그인을 유지하기 위해서 쿠키를 사용하는데, 세션 아이디는 쿠키에 저장됩니다.
쿠키를 통해 세션 아이디가 서버에 전달되고, 세션 스토어에 전달받은 세션이 존재한다면 서버는 접근이 가능하다고 판단합니다.

가상머신과 Docker의 차이에 대해 설명해 주세요.

가상머신과 도커는 작동원리에 차이가 있습니다.
가상머신의 경우, 가상머신을 만들고 실행하는 과정에서 많은 자원을 필요로 합니다.
반면에 도커는 하나의 컴퓨터에 여러 개의 컨테이너를 띄워도 크게 무리가 가지 않습니다. 그리고 도커 이미지는 보통 애플리케이션 단위로 만들어져 있어, 가상머신과 달리 운영체제를 설치하지 않아도 됩니다.

가상머신의 구성 요소에는 운영체제가 존재합니다. 반면에 도커 컨테이너의 구성 요소에는 포함되어 있지 않고, 도커 플랫폼 위에 컨테이너가 올라가 있으며 그 아래에 호스트 운영체제가 존재합니다.
도커는 애플리케이션을 컨네이너화하여 실행하는 것이 목적이므로, 컨테이너에 운영체제를 올려 사용하지 않습니다.

0개의 댓글