Kerberos Single-Sign-On Verständnis

Bender86

Lieutenant
Registriert
Jan. 2007
Beiträge
718
Hallo zusammen,

ich arbeite mich grade durch das Kerberos-Protokoll und versuche zu verstehen, wie dort Single Sign On realisiert wird. Ich benutze dafür grade diese Anleitung. In der Authentication Server Request steht dort der "Principal_Service" was ja eine Form von Identität des Service sein soll, den der Client verwenden möchte. Das heißt für mich, dass das Ticket Granting Ticket, in dem ja ebenfalls "Principal_Service" enthalten ist, an diesen speziellen Service gebunden ist. Das wäre ja kein Single-Sign-On mehr, weil ein Client für einen anderen Service ein neues TGT bräuchte.

Nun gibt es dort eine Erklärung, bei der ich nicht sicher bin ob ich sie richtig verstehe:

it may seem superfluous to add the Principal_service to the initial authentication request since this would be constantly set to the TGS principal i.e. krbtgt/REALM@REALM.

Heißt das, dass wenn ein Client ein "allgemeines" Ticket für Single-Sign-On bekommen möchte, die Identität des Ticket Granting Servers angibt? Kann dann ein Client mit diesem TGT beliebige Service-Tickets beantragen?

Noch eine Frage, in der Erklärung geht es weiter mit:

However, this is not the case, indeed, a user planning to use just one service during a work session, would not use the Single Sign-on, and may ask the AS directly for the ticket for this service, thus skipping the subsequent request to the TGS.

Verstehe ich das richtig, dass wenn ein Client kein Single-Sign-On verwenden möchte Schritt 3 und 4 überspringen kann und dann vom AS direkt ein Ticket für den Service bekommt?

Ok und letzte Frage: in der Erklärung steht als TGS principal "krbtgt/REALM@REALM". Kann mir jemand sagen wie sowas in "der realen" Welt beispielsweise aussähe? Da ich Kerberos noch nie praktisch eingesetzt habe fehlt mir ein bisschen das Verständnis davon, was das für eine Identität sein soll. Ist REALM sowas wie eine Domain?

So, das wars nun auch. Also so eine grobe Vorstellung habe ich von dem Tutorial, bin mir bei den genannten Punkten aber unsicher ob ich das richtig verstanden habe. Es wäre super wenn mir das jemand bestätigen kann, oder wenn ich es falsch/ungenau verstanden habe etwas erläutern könnte.
 
Zurück
Oben