Einzelnen Beitrag anzeigen

generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.415 Beiträge
 
Delphi XE5 Professional
 
#9

AW: NTLM Authentication

  Alt 14. Sep 2017, 13:09
Zitat:
Delphi-Quellcode:
procedure TFormMain.IdHTTPAuthorization(Sender: TObject; Authentication: TIdAuthentication; var Handled: Boolean);
begin
  Authentication.Username := FUsername;
  Authentication.Password := FPassword;

  MemoDebug.Lines.Append('onAuthorization: ' + Authentication.Authentication);
  // erhalte dies als Ausgabe
  // onAuthorization: NTLM TlRMTVNTUAAB7AAAB7IAAAgACAAgAA7ACgAKACgAAABET00wOTgxMERBREEwOTgxMDM=

  Handled := true;
end;
Kann jemand erkennen was ich falsche mache?
Hat jemand evtl. ein funktionierendes Beispiel?
Ich komm da nochmal auf dein Ursprungsfrage zurück.

Diesen String den du da bekommst "NTLM TlRMTVNTUAAB7AAAB7IAAAgACAAgAA7ACgAKACgAAABET00wOT gxMERBREEwOTgxMDM=" ist eine Challenge. Diese musst du nur auseinander nehmen und mit dem Benutzer/Passwort eine Antwort berechnen. Diese schickst du dann an den Server zurück.

Das ist etwas im Link erklärt den ich zuerst geschickt hatte.
NTLM ist ein Challenge/Response verfahren, welche nicht das Passwort an den Server überträgt.

Die Felder Authentication.Username und Authentication.Pass greifen hier nicht, da Indy an dieser Stelle nicht mit diesem Verfahren (NTLM) umgehen kann.
Du kannst das etwas mit BASIC und DIGEST Authentifizierung vergleichen.
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat