Назад | Перейти на главную страницу

Зачем Kerberos нужен сервер выдачи билетов?

Наверное, это что-то фундаментальное, но я не могу найти определенного утверждения. Почему KDC не может пройти аутентификацию, а затем предоставить билет службы напрямую. Это о безопасности или производительности или о чем-то другом? Поскольку пользователи не входят в систему каждый раз, когда запрашивают услугу, и, предположительно, они будут оставаться в системе в течение длительного времени, AS не кажется таким загруженным. Почему их нужно разделять?

Спасибо вам обоим за то, что вы указали, что KDC - это всего лишь одна машина. Я прочитал еще немного и понял, почему это необходимо для протокола. То, что я упоминал ранее, возможно. Поскольку AS и TGS используют одну и ту же базу данных, AS может предоставлять билеты службы, но она используется для пользователей, которым требуется только одна служба (но это нарушает единый вход). Я не мог понять, что именно TGT удерживает людей в системе.

Кроме того, сервисные билеты, предоставляемые TGS, должны быть доставлены на сервер приложений за две минуты. Хотя TGT имеют более длительный срок службы, и их можно воспроизводить повторно

Благодаря прекрасному руководство Вот

Когда вы получаете билет изначально (запрашивая его в KDC), вы получаете обратно TGT или билет для выдачи билетов. Затем он используется для связи с сервером выдачи билетов для запроса заявки или других билетов.

В каждой системе, с которой я имел личный опыт, KDC и TGS были одной и той же машиной, фактически одним и тем же приложением. Однако 100% моего опыта связаны с сервисами MIT и Heimdal с открытым исходным кодом. В этом случае, опять же по моему опыту, обе службы выполняются в одном двоичном файле.

Я считаю, что это сделано для обеспечения избыточности - теоретически вы могли бы иметь кучу TGS и кучу KDC (поскольку у них разные рабочие нагрузки), хотя я никогда не видел установки, где каждый KDC не был бы одновременно TGS и наоборот. .