다음을 통해 공유


세션 티켓

KDC는 암호화된 세션 키를 두 보안 주체 모두에 보내는 대신 클라이언트와 서버의 세션 키 복사본을 모두 클라이언트에 보냅니다. 클라이언트의 세션 키 복사본은 클라이언트의 master 키로 암호화되므로 다른 엔터티에서 암호를 해독할 수 없습니다. 서버의 세션 키 복사본은 티켓이라는 데이터 구조에 클라이언트에 대한 권한 부여 데이터와 함께 포함됩니다. 티켓은 서버의 master 키로 완전히 암호화되므로 클라이언트 또는 서버의 master 키에 액세스할 수 없는 다른 엔터티에서 읽거나 변경할 수 없습니다. 서버와 접촉할 때까지 티켓을 안전하게 저장하는 것은 클라이언트의 책임입니다.

참고

KDC는 티켓 부여 서비스만 제공합니다. 클라이언트와 서버는 각각의 master 키를 안전하게 유지할 책임이 있습니다.

 

클라이언트는 KDC의 응답을 받으면 티켓과 세션 키의 자체 복사본을 추출하여 둘 다 보안 캐시에 배치합니다. 서버와 보안 세션을 설정하기 위해 서버의 master 키로 암호화된 티켓으로 구성된 메시지와 세션 키로 암호화된 인증자 메시지를 서버에 보냅니다. 티켓과 인증자 메시지는 함께 서버에 대한 클라이언트의 자격 증명 입니다.

서버는 클라이언트에서 자격 증명을 받으면 master 키로 티켓의 암호를 해독하고, 세션 키를 추출하고, 세션 키를 사용하여 클라이언트의 인증자 메시지를 해독합니다. 모든 것이 체크 아웃되면 서버는 신뢰할 수 있는 기관인 KDC에서 클라이언트의 자격 증명을 발급했음을 알고 있습니다. 상호 인증의 경우 서버는 세션 키를 사용하여 클라이언트의 인증자 메시지에서 타임스탬프를 암호화하여 응답합니다. 이 암호화된 메시지는 클라이언트로 전송됩니다. 그런 다음 클라이언트는 메시지의 암호를 해독합니다. 반환된 메시지가 원래 인증자 메시지의 타임스탬프를 같으면 서버가 인증됩니다.

추가 혜택으로 서버는 클라이언트와 함께 사용하는 세션 키를 저장할 필요가 없습니다. 각 클라이언트는 티켓 캐시에서 서버에 대한 티켓을 관리하고 서버에 액세스할 때마다 해당 티켓을 제시해야 합니다. 서버는 클라이언트로부터 티켓을 받을 때마다 해당 master 키를 사용하여 티켓의 암호를 해독하고 세션 키를 추출합니다. 서버에 세션 키가 더 이상 필요하지 않으면 키가 삭제됩니다.

클라이언트는 이 특정 서버에 액세스할 때마다 KDC에 액세스할 필요가 없습니다. 티켓을 재사용할 수 있습니다. 티켓 도난 가능성에 대한 예방 조치로 티켓 구조에서 KDC가 지정한 만료 시간이 있습니다. 티켓이 유효한 기간은 영역에 대한 Kerberos 정책에 따라 달라집니다. 일반적으로 티켓은 일반 로그온 세션의 길이에 대해 8시간 이내로 적합합니다. 클라이언트 워크스테이션의 사용자가 로그오프하면 클라이언트 티켓 캐시가 플러시되고 모든 티켓 및 클라이언트 세션 키가 제거됩니다.