Wie kann ich ein Kerberos-Ticket mit Delphi bekommen?
-
20-08-2019 - |
Frage
Gibt es Beispiele, die zeigen, wie Delphi den Active Directory-Kerberos-Server ruft ein Ticket TGT / Normal-Ticket anfordern?
. Hintergrund: das Ticket zur Authentifizierung an einen Web-Service erforderlich ist, die vertraulichen Informationen austauscht
Edit: ein kurzes Quellcode Beispiel wäre sehr hilfreich. Ich habe die JEDI Windows Security Code Library denen gefunden wird, sehr beeindruckend. Ich bin nicht sicher, ob es Unterstützung für Kerberos enthält.
Lösung
Nach diesen sollten Sie in der Lage sein, erhalten eine mit dem InitializeSecurityContext Fenster API-Aufruf.
Andere Tipps
Lesen Sie zuerst Kerberizing Anwendungen mithilfe von Security Support Provider-Schnittstelle erhalten die allgemeine Idee. InitializeSecurityContext
wird wie folgt beschrieben:
Initiiert einen Sicherheitskontext von Erzeugen eines Sicherheitstoken, das muss an den Server übergeben werden. Das Anwendung, die diese Funktion verwendet, ist ein SSPI Client bezeichnet.
Auf Msdn, kann die Liste der SSPI-Funktionen finden sich in Authentifizierungsfunktionen .
Für tatsächlichen Beispiel-Code finden Sie Win32 Proben SSPI . Sie wahrscheinlich feststellen, client.cpp nützlich zu sein. Ein weiteres ähnliches Beispiel ist GssClient.c . Beiden Code sind sie in einer Schleife laufen, weil das Gespräch in Gang hält, wenn SEC_I_CONTINUE_NEEDED
zurückgeführt wird.