- 한 번의 시스템 인증을 통하여 접근하고자 하는 다양한 정보시스템에 재인증 절차 없이 접근할 수 있도록 하는 통합 로그인 솔루션이다.
- 사용자가 한 번만 인증하면 네트워크의 모든 자원에 접속할 수 있게 하는 것이다.
- 운영비용 감소
- 보안성 강화
- 사용자 편의성 증가 (비밀번호 암기/분실 위험 감소)
- 중앙집중 관리를 통한 효율적 관리 가능
- SSO 서버가 단일실패지점(SPoF): ID/PW 노출 시 전체시스템 위험
- SSO 서버 침해 시 모든 서버의 보안 침해 가능
- SSO 개발 및 운영비용 발생
- 자원별 관한관리 미비
- 클라이언트/서버 모델에서 동작하며 대칭키 암호기법에 바탕을 둔 티켓 기반 인증 프로토콜이며 동시에 KDC이다.
- 커버로스는 분산 환경을 위한 SSO의 한 예이며, 혼합 네트워크를 위한 사실상의 표준이다.
- 광범위한 보안 능력을 통합하며, 유연성과 확장성을 제공한다.
- 기업 접근 통제를 위해 필요한 확장성, 투명성, 안전성, 보안을 가진다.
- 사용자에게 동일한 계정정보로 여러 서비스를 받을 수 있게 한다. 즉, 티켓이 지정된 유효기간 내에만 있다면 티켓을 사용하여 동일한 서버에서 여러 가지의 응용 서비스를 제공 받을 수 있다.
- 사용하는 이유는 주체들이 직접 통신하기에는 서로 충분히 신뢰하지 않기 때문이다.
구성요소 | 내용 | 설명 |
---|---|---|
KDC (key Distribution Center) | ◾ 키 분배 서버 ◾ 모든 사용자와 서비스의 비밀키를 보관 ◾ 신뢰할 수 있는 제 3의 기관으로서 티켓을 생성, 인증서비스를 제공 ◾ 사용자의 패스워드는 비밀키로 변환된다. 이 비밀키로 주체와 KDC 사이에서 민감한 데이터를 전송하기 위해 사용되며, 사용자의 인증 목정을 위해서도 사용된다. | TGS와 AS로 구성 |
AS (Authentication Service) | ◾ 실질적인 인증을 수행 ◾ 사용자에 대한 인증을 수행한다. | |
TGS (Ticket Granting Service) | ◾ 티켓 부여 서비스 | |
Ticket | ◾ 사용자에 대해 신원과 인증을 확인하는 토큰 ◾ 사용자가 다른 주체와 통신할 때마다 패스워드를 입력하지 않게 도와준다. |
① 커버로스는 모든 사용자의 패스워드를 알고 있고, 중앙집중식 데이터베이스에 그 패스워드를 저장하고 있는 인증 서버(AS)를 이용한다.
② AS는 각 서버와 유일한 비밀키를 공유한다.
③ TGS는 AS에게 인증 받은 사용자에게 티켓을 발행한다. 그래서 사용자는 AS에게 티켓 승인 티켓을 요청한다.
④ 사용자가 새 서비스를 요청할 때마다 클라이언트는 자신을 인증하는 티켓을 이용하여 TGS에 접속한다.
⑤ 클라이언트는 각 서비스-승인 티켓을 보관하고 특정 서비스가 필요할 때마다 해당 티켓을 사용하여 클라이언트의 사용자를 서버에게 인증시킨다.
⑥ 타임스탬프를 이용한 시간제한을 두어, 다른 사람이 티켓을 복사하여 나중에 그 사용자인 것처럼 위장하여 티켓을 사용하는 것을 막는다.
- KDC는 실패 단일 지점(SPOF, Single Poing Of Failure) 이 될수 있다.
- 만약 KDC에 문제가 발생하면 누구도 리소스에 접근할 수 없게 된다.
- 비밀키는 사용자의 워크스테이션에 임시로 저장되며, 침입자가 암호화된 키를 획득하는 것이 가능하다는 것을 의미한다.
- 패스워드 추측 공격에 취약하다. 사전공격이 발생하고 있어도 알지 못한다.