Ich habe eine Webanwendung (Hostname: service.domain.com) und möchte die Kerberos-Authentifizierung verwenden, um Benutzer zu identifizieren, die bei einer Windows-Domäne angemeldet sind. Microsoft AD (Windows Server 2008 R2) stellt den Kerberos-Dienst bereit.
Der Dienst ist eine Java-Webanwendung, die die Spring Security Kerberos-Erweiterungsbibliothek zum Implementieren des SPNEGO / Kerberos-Protokolls verwendet. Ich habe in AD eine Keytab-Datei erstellt, die ein gemeinsames Geheimnis enthält, das ausreichen sollte, um Kerberos-Tickets zu authentifizieren, die von den Client-Browsern mithilfe der Webanwendung gesendet werden.
Meine Frage ist, ob für den Service-Host (service.domain.com) ein Firewall-Zugriff (TCP / UDP 88) auf KDC (kdc.domain.com) erforderlich ist oder ob die Keytab-Datei ausreicht, damit der Service-Host die Daten entschlüsseln kann Kerberos-Tickets und Authentifizierung bereitstellen?
quelle
Antworten:
Der Dienst muss nie mit dem KDC sprechen . Es benötigt eine vom KDC generierte Keytab, die Sie jedoch nach Belieben kopieren können. Sie müssen nie miteinander reden.
Eine übermäßig vereinfachte Version dessen, was meiner Meinung nach weitergeht, sieht mehr oder weniger so aus:
Einrichten des Dienstes
scp
oder auf einem USB-Stick mitgeführt, wenn Sie möchten).Client, der eine Verbindung zum Dienst herstellt
quelle