Mit Kerberos wurde ein Protokoll entwickelt, um das Problem der sicheren Authentifizierung in unsicheren Netzwerken zu lösen. Hierfür ist neben dem Client und dem Service allerdings eine dritte Instanz nötig: ein Kerberos Server. Er ist auch als Key Distribution Center (KDC) bekannt und umfasst die beiden Komponenten Authentication Server (AS) und Ticket Granting Server (TGS). Der Name hat seinen Grund, denn es kommen bei Kerberos tatsächlich Tickets zum Einsatz, die zwischen dem Client und einem Service ausgetauscht werden. Passwörter wandern hierbei nicht mehr über das Netzwerk.
Um eindeutig als Teilnehmer einer Kerberos-Session identifiziert werden zu können, müssen Benutzer, Hosts und Services über einen Eintrag in der Datenbank des KDC verfügen. Diese Einträge werden auch als Kerberos-Principals bezeichnet und enthalten unter anderem das Passwort des Kerberos-Teilnehmers. Der Kerberos-Server kann ein Ticket nur dann ausstellen, wenn ein entsprechendes Principal für den Teilnehmer existiert. Ein Principal wird in der Form "primary/instance@REALM" dargestellt. Der primary ist bei Benutzern üblicherweise der Benutzername, bei Hosts oder Services lautet dieser entweder "host" oder enthält den Namen des Services. Die instance ist bei Hosts und Services identisch mit dem Rechnernamen, entfällt in den meisten Fällen allerdings für einen Benutzer. Der Realm ist dabei die Menge der Principals, die Teil einer gemeinsamen Kerberos-Datenbank sind. Üblicherweise wird der Realm in Großbuchstaben dargestellt.
In diesem Artikel steht die Praxis im Vordergrund, weshalb wir darauf verzichten, den kompletten Kerberos-Ticket-Austausch bis ins Detail zu untersuchen, und stattdessen auf die entsprechende Dokumentation [1] verweisen, die den gesamten Vorgang sehr bildlich beschreibt.
Kerberos-basierte Anwendungen verwenden in den meisten Fällen das Generic Security Services Application Program Interface (GSS-API) [2][3].
...Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.