내가 누군지 알아? 여기 내 명함 봐봐 !
인증은 사용자의 신원을 검증하는 행위로서 보안 프로세스에서 첫 번째 단계이다.
ex) 회원가입, 로그인
당신의 신분은 확인 되었지만, 20대만 출입 가능합니다.
사용자에게 특정 리소스나 기능에 액세스할 수 있는 권한을 부여하는 프로세스를 뜻함.
ex) 게시판에서 다른 사람이 쓴 글을 나는 수정할 수 없다.
인증과 인가는 한번에 쓰일 수도 있다.
회사에 출근하면 찍는 지문 인식기는 내가 누구인지도 인식하면서, 내가 회사 출입문을 통과할 수 있도록 회사 내부 접근을 인가하기도 한다.
인증은 인가로 이어질 수 있지만, 인가는 인증으로 이어지지 않을 수도 있다.
편의점에서 구매한 버스카드는 내가 누구인지에 대한 인증 정보는 담고 있지 않지만, 잔액이 충분하다면 얼마든지 버스 탑승을 인가받을 수 있다.
ex1)
방문자가 회사 건물에 방문했다고 가정하자.
인증 ( Authentication ) 이란, 방문자가 자신이 회사 건물에 들어 갈 수있는지 확인 받는 과정이다.
본인이 회사 건물에 등록되어 있는 정직원일 수도 있고, 누군가로 인해 인증 받을 수 도 있다.
인가 ( Authorization ) 이란, 방문자가 회사 건물에 방문했을 때, 허가된 공간에만 접근 가능하다.
개인마다 건물내 허가된 공간이 다르다.
관리자라면 건물내 다양한 공간에 대한 접근 권한이 있을 것이다.
반면에 방문자일 경우, 허용된 공간에만 접근 가능하다.
이런 접근 권한을 관리하는 것이 인가 이다.
ex2)
편의점에서 담배를 사기 위해
신분증 검사를 하는 행위는 "인증"
신분증을 보고 살수 있는 나이인지 없는 나이인지를 확인하는 과정이 "인가"