![]() |
TRESTClient und Negotiate (Kerberos) Authentifizierung
Hallo,
ich habe schon im Internet gesucht, aber nichts gefunden. Ich möchte auf eine REST API eines ITS (Gemini von Countersoft) zugreifen. Bei uns in der Firma wird die Anmeldung am System transparent im Hintergrund via Kerberos durchgeführt. Wenn ich mit den Delphi 10 REST Komponenten darauf zugreifen will bekomme ich nur Fehlermeldungen, das die Anmeldung fehlgeschlagen ist. Es stehen leider nur folgende Autorisierungstypen zur Verfügung: NONE, SIMPLE, BASIC, OAUTH und OAUTH2 Ich bräuchte aber Negotiate mit Kerberos (notfalls auch NTLM). Wobei NTLM bei uns im Netz bald abgeschaltet werden soll :stupid: Hat jemand von Euch eine Idee? Ich habe gesehen, das die TRESTClient Ableitungen der TCustomAuthenticator verwendet. Gibt es evtl eine TKerberosAuthenticator, TNegotiateAuthenticator oder TNTLMAuthenticator Klasse, die ich nur nicht finde? Vielen Dank für Eure Antworten :thumb: Euer MaBuSE |
AW: TRESTClient und Negotiate (Kerberos) Authentifizierung
Das geht 1-2-3 :)
1. mittels Nezwerksniffer oder HTTP Proxy die Anmeldung bei einem funktionierenden Client aufzeichnen (Wireshark, Fiddler2) 2. Delphi REST Komponente anpassen (z.B. eine neue Klasse ableiten) 3. ein Kerberos Ticket über Windows API abrufen Links: ![]() ![]() ![]() Im letzten Link findet man auch etwas Sourcecode. Der letzte Schritt ist allerdings der herausfordernste. Zitat: "Ich halte Kerberos mittlerweile für eine Art weissen Wal, den jeder angeblich mal gesehen hat" |
AW: TRESTClient und Negotiate (Kerberos) Authentifizierung
Wenn Du die Möglichkeit dazu hast, dann lass die Kerberos-Transaktion von einer .net dll oder ähnlichem machen. Mit .net ist Kerberos innerhalb von wenigen Codezeilen erledigt - es ist im Framework eingebaut. Mit Delphi-Bordmitteln habe ich seinerzeit keine Chance gehabt und einen riesen Frust geschoben.
Sherlock |
AW: TRESTClient und Negotiate (Kerberos) Authentifizierung
Zitat:
Ich sehe es nicht als meine Aufgage via Reverse Engineering herauszufinden wie ein Standard Verfahren funktioniert um es dann in Delphi nachzuprogrammieren. Aus diesem Grund verwende ich ja Delphi, damit ich nicht alles zu Fuß selbst programmieren muss. Wir setzen die große (teure) Version vom RAD Studio ein und ich war nur iritiert, das so eine gebräuchliche Standardfunktion aus dem Enterprise Umfeld nicht in Delphi (Enterprise oder Architect Version) enthalten ist. Laut Feature Matrix ist das tatsächlich nicht der Fall. Feature Matrix Seite 20/27: Quelle: ![]() REST CLIENT LIBRARY AND BAAS
Schade, denn so sind die REST Funktionen in Delphi für mich unbrauchbar. |
AW: TRESTClient und Negotiate (Kerberos) Authentifizierung
Zitat:
Zitat:
Ich werde mal eine Supportanfrage bei Embarcadero eintüten. Mal sehen was passiert. |
AW: TRESTClient und Negotiate (Kerberos) Authentifizierung
Ich drück Dir die Daumen!
Sherlock |
AW: TRESTClient und Negotiate (Kerberos) Authentifizierung
Zitat:
Zitat:
Es wurde noch kein Feature Request zu dem Thema gemacht. Sprich die denken es braucht niemand. Sein Rat ist einen anzulegen. Das habe ich getan. ABER, damit die merken, dass man das auch braucht, sollten möglichst viele dem zustimmen (Bewertung). ![]() Bitte gebt mit Eure Stimme. :dp: Anmeldung mit EDN Usernamen (nicht E-Mail Adresse) und EDN Passwort. Danke für Eure Unterstützung. |
AW: TRESTClient und Negotiate (Kerberos) Authentifizierung
done ;)
Sherlock |
AW: TRESTClient und Negotiate (Kerberos) Authentifizierung
Der Feature Request wurde nun von "Reported" auf "Offen" gesetzt :-D
Der Bearbeiter ist nun nicht mehr "Internal QA" sondern "Internal Dev" Es wurde also in die Entwicklung weitergegeben. Mal sehen was passiert :thumb: |
AW: TRESTClient und Negotiate (Kerberos) Authentifizierung
Hättest doch nicht einen TNegotiateAuthenticator schreiben und jetzt schon benutzen können?
Dann gründest du eine Firma und Emba kauft dich. :stupid: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:38 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz