5.4. Specifications for the AS and TGS Exchanges (Spezifikationen für AS- und TGS-Austausche)
5.4. Specifications for the AS and TGS Exchanges (Spezifikationen für AS- und TGS-Austausche)
Overview (Überblick)
Dieser Abschnitt definiert die Nachrichtenstrukturen für den Authentication Service (AS, Authentifizierungsdienst) und den Ticket-Granting Service (TGS, Ticketvergabedienst). Diese Austausche teilen sich eine gemeinsame Nachrichtenstruktur mit geringfügigen Variationen.
5.4.1. KRB_KDC_REQ Definition
Die Anforderungsnachrichtenstruktur wird zwischen AS und TGS gemeinsam genutzt:
Common Structure (Gemeinsame Struktur)
Sowohl KRB_AS_REQ als auch KRB_TGS_REQ verwenden die KDC-REQ-Struktur mit:
pvno– Protocol version number (Protokollversionsnummer, 5)msg-type– Message type (Nachrichtentyp, AS-REQ oder TGS-REQ)padata– Pre-authentication data (Pre-Authentifizierungsdaten, Sequenz)req-body– Request body (Anfragetext mit detaillierten Parametern)
Request Body (KDC-REQ-BODY)
Enthält:
kdc-options– Flags für angeforderte Optionencname– Client name (Clientname, in TGS-REQ optional)realm– Service realm (Dienst-Realm)sname– Service name (Dienstname, optional)from– Requested start time (angeforderte Startzeit, optional)till– Requested end time (angeforderte Endzeit)rtime– Requested renew-till time (angeforderte renew-till-Zeit, optional)nonce– Zufallswert zum Replay-Schutzetype– Requested encryption types (angeforderte Verschlüsselungstypen, Sequenz)addresses– Client addresses (Clientadressen, optional)enc-authorization-data– Encrypted authorization data (verschlüsselte Autorisierungsdaten, optional)additional-tickets– Additional tickets (zusätzliche Tickets, optional, für TGS-REQ)
KDC Options Flags
Verfügbare Optionen umfassen unter anderem:
- FORWARDABLE, FORWARDED
- PROXIABLE, PROXY
- ALLOW-POSTDATE, POSTDATED
- RENEWABLE, RENEWABLE-OK
- ENC-TKT-IN-SKEY
- RENEW, VALIDATE
- sowie weitere
5.4.2. KRB_KDC_REP Definition
Die Antwortnachrichtenstruktur wird zwischen AS und TGS gemeinsam genutzt:
Common Structure (Gemeinsame Struktur)
Sowohl KRB_AS_REP als auch KRB_TGS_REP verwenden die KDC-REP-Struktur:
pvno– Protocol version number (Protokollversionsnummer, 5)msg-type– Message type (Nachrichtentyp, AS-REP oder TGS-REP)padata– Pre-authentication data (optional)crealm– Client realm (Client-Realm)cname– Client name (Clientname)ticket– Das ausgestellte Ticketenc-part– Encrypted part of reply (verschlüsselter Teil der Antwort)
Encrypted Part (EncKDCRepPart)
Enthält (für den Client verschlüsselt):
key– Session key (Sitzungsschlüssel)last-req– Last request information (Information zur letzten Anfrage)nonce– Aus der Anfrage (zur Zuordnung)key-expiration– Ablauf des Clientschlüssels (optional)flags– Ticket flags (Ticket-Flags)authtime– Zeitpunkt der Erstauthentifizierungstarttime– Beginn der Ticketgültigkeit (optional)endtime– Ablaufzeit des Ticketsrenew-till– Ablauf bei erneuerbaren Tickets (optional)srealm– Service realm (Dienst-Realm)sname– Service name (Dienstname)caddr– Client addresses (optional)encrypted-pa-data– Encrypted pre-auth data (optional)
Processing Requirements (Verarbeitungsanforderungen)
Request Processing (Anfrageverarbeitung)
- Struktur der Anfrage validieren
- Pre-Authentifizierung prüfen
- Richtlinien und Einschränkungen prüfen
- Session Key erzeugen
- Ticket mit passenden Flags ausstellen
- Antwort für den Client verschlüsseln
Reply Processing (Antwortverarbeitung)
- Antwort mit dem passenden Schlüssel entschlüsseln
- Übereinstimmung des nonce prüfen
- Session Key und Ticket extrahieren
- Ticketeigenschaften validieren
- Für spätere Verwendung speichern
Differences Between AS and TGS (Unterschiede zwischen AS und TGS)
AS Exchange (AS-Austausch)
- Client authentifiziert sich mit dem langfristigen Schlüssel
- Pre-Authentifizierung ist oft erforderlich
- Stellt das initiale TGT aus
TGS Exchange (TGS-Austausch)
- Client authentifiziert sich mit dem TGT
- Verwendet den Session Key aus dem TGT
- Stellt Diensttickets aus
- Unterstützt Ticket-Erneuerung und -Validierung
Reference (Referenz)
Vollständige Nachrichtenspezifikationen finden sich in RFC 4120 Abschnitt 5.4.