누가 액세스하고 있는지를 확인하는 인증
서버에 액세스하고 있는 사람이 권한을 가졌는지 확인하기 위해 아래 정보 사용
(1) 패스워드
(2) 원타임 토큰 : 본인만이 가지고 있는 기기 등에 표시. 한번 쓰고 버린다
(3) 전자 증명서 : 본인만 가진 정보
(4) 바이오 매트릭스 : 지문, 홍채 등 신체 정보
(5) IC 카드 : 본민만 가진 정보
HTTP/1.1의 인증 방법
(1) BASIC 인증
(2) DIGEST 인증
(3) SSL 클라이언트 인증
(4) 폼 베이스 인증
웹 서버와 대응하고 있는 클라이언트 사이에서 이뤄지는 인증 방식
일반적인 웹 사이트에서 요구되는 보안 등급에 미치지 못해, 거의 사용되지 않는다.
챌린지 리스폰스 방식을 사용하는 인증 방식
BASIC과 다르게 패스워드를 직접 보내지 않는다!
유저 ID와 패스워드가 도난당했을 때, 제 3자가 위장하는 경우를 방지한다.
HTTPS의 클라이언트 인증서를 이용하는 방식.
인증이 필요한 리소스의 리퀘스트가 발생
: 서버는 클라이언트에게 클라이언트 증명서 요구 메세지 송신
유저는 송신 클라이언트 증명서를 선택.
: 클라이언트는 클라이언트 증명서를 메시지로 송신
서버는 클라이언트 증명서를 검증
: 검증이 정확하다면 클라이언트 공개키 취득. 이후 HTTPS에 의한 암호 개시
클라이언트가 서버 상의 웹 애플리케이션에 자격 정보를 송신하여 검증 결과에 따라 인증하는 방식
: HTTP 프로토콜로 정의된 인증 방식 X
: 웹 애플리케이션에 따라 제공 인터페이스나 인증 방법이 다양하다
웹 사이트 인증 기능의 요구 레벨 충족하는 표준 존재 X
: 웹 애플리케이션 별 각각 구현하는 폼 베이스 인증 사용 필요
: 공통 사양이 결정되어 있지 않으므로, 다양한 폼 베이스 방식 존재
문제
(1) 자격 정보 교환 방법이 표준화되어 있지 않다
(2) 자격 정보의 서버 보존 방법이 표준화되어 있지 않다