Freigeben über


Ticket-Granting Service Exchange

Nachdem ein Ticket gewährende Ticket (TGT) und Sitzungsschlüssel für den Client eingerichtet wurden, kann der Client einen separaten Sitzungsschlüssel und ein separates Ticket für den Dienst anfordern.

So fordern Sie ein Ticket für einen anderen Service an

  1. Der Kerberos-Client auf der Arbeitsstation des Benutzers fordert Anmeldeinformationen für den Dienst an das Key Distribution Center (KDC), eine Meldung vom Typ KRB_TGS_REQ (Kerberos Ticket-Granting Service Request). Diese Nachricht besteht aus der Identität des Diensts, für den der Client Anmeldeinformationen anfordert, einer Authentifikator-Nachricht, die mit dem neuen Anmeldeschlüssel des Benutzers Sitzungsschlüsselsverschlüsselt ist, und der TGT, der vom exchange -Authentifizierungsdienstabgerufen wurde.
  2. Wenn der KDC eine KRB_TGS_REQ empfängt, entschlüsselt der KDC das TGT mit seinem geheimen Schlüssel und extrahiert den Anmeldesitzungsschlüssel des Benutzers.
  3. Der KDC verwendet den Anmeldeschlüssel Sitzungsschlüssel, um die Authentifikatornachricht des Benutzers zu entschlüsseln und auszuwerten. Wenn der Authentifikator den Test bestanden hat, extrahiert der KDC die Autorisierungsdaten des Benutzers aus dem TGT und erstellt einen Sitzungsschlüssel für den Benutzer, der für den angeforderten Server freigegeben werden soll.
  4. Der KDC verschlüsselt eine Kopie des Dienstsitzungsschlüssels mit dem Anmeldesitzungsschlüssel des Benutzers.
  5. Der KDC bettet eine weitere Kopie des Dienstsitzungsschlüssels in ein Ticket zusammen mit den Autorisierungsdaten des Benutzers ein und verschlüsselt das Ticket mit dem Masterschlüssel des Servers.
  6. Der KDC sendet diese Anmeldeinformationen zurück an den Client, indem er mit einer Nachricht vom Typ KRB_TGS_REP (Kerberos Ticket-Granting Dienstantwort) antwortet.
  7. Wenn der Client die Antwort empfängt, entschlüsselt er den Dienstsitzungsschlüssel mit dem Anmeldesitzungsschlüssel des Benutzers und speichert den Dienstsitzungsschlüssel im Ticketcache.
  8. Der Client extrahiert das Ticket auf den Server und speichert das Ticket im Ticketcache.