AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Einloggen mit idhttp auf https-Server
Thema durchsuchen
Ansicht
Themen-Optionen

Einloggen mit idhttp auf https-Server

Ein Thema von MathiasE · begonnen am 28. Okt 2013 · letzter Beitrag vom 8. Nov 2013
Antwort Antwort
MathiasE

Registriert seit: 28. Okt 2013
5 Beiträge
 
#1

AW: Einloggen mit idhttp auf https-Server

  Alt 28. Okt 2013, 15:14
blöde Frage: wird das Skript nicht eben von der Seite verwendet, auf der ich mich einloggen will? Ich dachte, ich poste nur die Anmeldedaten in die Felder und rufe den "submit" Button auf - quasi das gleiche, wie wenn ich mich händisch anmelde. Oder liege ich da falsch?

Danke
  Mit Zitat antworten Zitat
mquadrat

Registriert seit: 13. Feb 2004
1.113 Beiträge
 
Delphi XE2 Professional
 
#2

AW: Einloggen mit idhttp auf https-Server

  Alt 28. Okt 2013, 15:19
Nein, du emulierst ja nicht die Eingaben, sondern den gesamten Browser. Also von den Eingaben bis hin zum fertigen http-Request.
  Mit Zitat antworten Zitat
Sougetsu

Registriert seit: 18. Feb 2009
20 Beiträge
 
#3

AW: Einloggen mit idhttp auf https-Server

  Alt 30. Okt 2013, 18:01
Moin,

theoretisch ist es einfach ein post zu basteln.
bei der login source könnte dein delphi code evtl. so aussehen:
Code nicht getestet, alles auf eigene Gefahr.

Delphi-Quellcode:
procedure TForm1.btn1Click(Sender: TObject);
var
  PostDataStream : TStringStream;
  MYIOHandler: TIdSSLIOHandlerSocketOpenSSL;
  MyMultiPartFormDataStream:TIdMultipartFormDataStream;
begin
  //Voraussetzungen für SSL erzeugen
  MYIOHandler:=TIdSSLIOHandlerSocketOpenSSL.Create(nil);
  MYIOHandler.SSLOptions.Method:=sslvTLS1_2; // Method anpassen an die welche vom Server unterstützt wird.
  MYIOHandler.SSLOptions.Mode:=sslmUnassigned; //Akzeptiert alle Zertifikate egal ob signiert oder nicht, sollte behandelt werden damit Zertifikate auf Gültigkeit etc. geprüft wird.
  MyMultiPartFormDataStream:=TIdMultipartFormDataStream.Create; //Hier einen Stream erzeugen der nachher die Formulardaten enthält.
  MyMultiPartFormDataStream.AddFormField('user',username); //Das sollte klar sein
  MyMultiPartFormDataStream.AddFormField('pass',password); //Das auch
  MyMultiPartFormDataStream.AddFormField('submit','Anmelden'); //Falls geprüft wird ob der reguläre Button da war
  MyMultiPartFormDataStream.AddFormField('logintype','login'); //Auch selbsterklärend
  MyMultiPartFormDataStream.AddFormField('pid','28110'); //Gute Frage, bleibt die pid immer gleich oder ändert sie sich nach jedem Request?
  MyMultiPartFormDataStream.AddFormField('redirect_url',''); //Auch unbekannt wofür das ist
  MyMultiPartFormDataStream.AddFormField('tx_felogin_pi1[noredirect]','0'); //Hier auch
  MyMultiPartFormDataStream.AddFormField('e','10001'); //Hier auch, ändern sich die Werte mal?

  IdHTTP1.Create(nil);
  IdHTTP1.IOHandler:=MYIOHandler; // Der Kompo das SSL mitgeben damit es eine SSL Verbindung aufbauen kann.
  IdHTTP1.AllowCokies:=true; //Standardeinstellungen vornehmen wie Cookies und Redirects.
  IdHTTP1.HandleRedirect:=true;
  PostDataStream := TStringStream.Create('');
try
//Connect
      IdHTTP1.Post('https://kb.zumtobel.com/de.html', MyMultiPartFormDataStream, PostDataStream);
      Memo1.Text := PostDataStream.DataString;
    end;
finally
  MyMultiPartFormDataStream.Free;
  PostDataStream.Free;
  MYIOHandler.Free;
end;
end;
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.014 Beiträge
 
Delphi 2009 Professional
 
#4

AW: Einloggen mit idhttp auf https-Server

  Alt 30. Okt 2013, 18:12
Ein empfehlenswertes Werkzeug zum Aufzeichnen der POST Request/Response für das Login ist Fiddler, das einfach als Proxy benutzt wird.
Michael Justin
  Mit Zitat antworten Zitat
CCRDude

Registriert seit: 9. Jun 2011
678 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Einloggen mit idhttp auf https-Server

  Alt 31. Okt 2013, 07:11
@Sougetsu: Du hast aber schon gelesen, das da noch Javascript aufgerufen wird, sehr wahrscheinlich für das, wo Du schreibst "das dürfte klar sein"?

@Thema: da es sich um Typo3 handelt, würde ich eher vorschlagen, nach einer RPC-Schnittstelle für dieses CMS zu suchen. Die ist dann hoffentlich auch ordentlich dokumentiert. Z.B. das hier?
  Mit Zitat antworten Zitat
Sougetsu

Registriert seit: 18. Feb 2009
20 Beiträge
 
#6

AW: Einloggen mit idhttp auf https-Server

  Alt 31. Okt 2013, 22:11
oh stimmt hast recht, den Javascript Part hab ich nicht voll gelesen, da der von der form eigtl. nicht mitgesendet wird.
Dadurch ist mir die eine variable darin entfallen, die wie ich vermute den public key des rsa darstellt!?

die Stelle wo ich geschrieben habe, das dürfte klar sein, bezog sich nur auf username und password, nicht auf die anderen Objekte.
  Mit Zitat antworten Zitat
MathiasE

Registriert seit: 28. Okt 2013
5 Beiträge
 
#7

AW: Einloggen mit idhttp auf https-Server

  Alt 7. Nov 2013, 13:19
Danke für die Antworten!

Ich versuche gerade den RSA Key zu erstellen bzw. Benutzername und Passwort zu verschlüsseln (was das javascript macht). Habe mir das alles ein bisschen einfacher vorgestellt
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:30 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-2025 by Thomas Breitkreuz