Page 1 of 1

Login-Fernbedienung

Posted: Fri 26. Jun 2020, 16:53
by mhagge
Hallo zusammen,

irgendwie stehe ich auf dem Schlauch, vielleicht kann mir einer ja mal einen Stups in die richtige Richtung geben. Und zwar möchte ich den Login zum Keyhelp fernbedienen. Hintergrund ist, dass ich mehrere Keyhelp-Server habe, meinen Kunden aber einen zentralen Login anbieten möchte. Der Plan ist also, den Login über ein eigenes Formular durchzuführen und dann im Hintergrund anhand des eingegebenen Benutzernamens zu entscheiden, auf welchem Keyhelp-Server der Login dann "wirklich" durchgeführt wird (Zuordnung Benutzername -> Keyhelp-Srver ist geklärt und hier kein Problem)

Benutzername und Passwort sollen dann per PHP-Curl an die "richtige" Keyhelp-Instanz durchgereicht werden. Da scheitert es allerdings. Mit folgendem Schnipsel habe ich es probiert:

Code: Select all

        $loginUrl = 'https:/kehelpserver';
	$var = "username=keyhelpuser&password=keyhelppass";
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, $loginUrl);
	curl_setopt($ch, CURLOPT_USERAGENT,
		"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/604.3.5 (KHTML, like Gecko) Version/11.0.1 Safari/604.3.5");
	curl_setopt($ch, CURLOPT_POST, 1);
	curl_setopt($ch, CURLOPT_POSTFIELDS, $var);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	$store = curl_exec($ch);


	print_r ($store);
Hier fehlt natürlich noch der redirect zum richtigen Keyhelp-Server, allerdings klappt hier der Login schon nicht. Der Benutzername wird anscheinend richtig übergeben, das Passwort allerdings nicht.

Wie gesagt: hat evtl. jemand eine Anregung (oder das evtl. schon mal realisiert)?

Re: Login-Fernbedienung

Posted: Fri 26. Jun 2020, 18:10
by Tobi
Ich meine du brauchst zusätzlich eine gültige Session ID um dich einloggen zu können.

Re: Login-Fernbedienung

Posted: Fri 26. Jun 2020, 18:52
by mhagge
Ja, das wäre dann der 2. Schritt beim "sichtbaren" Weiterleiten auf das Panel. Allerdings kriege ich schon keine Session-ID, weil der Login nicht klappt

Re: Login-Fernbedienung

Posted: Fri 26. Jun 2020, 20:09
by Tobi
Ich habe nochmal in meinen Quellcode geguckt.
Es gibt da noch ein Feld "submit" mit dem Wert "1".
Das musst du auch mitschicken.

Dann sollte der Login klappen.

Re: Login-Fernbedienung

Posted: Fri 26. Jun 2020, 20:40
by OlliTheDarkness
Tobi wrote: Fri 26. Jun 2020, 20:09 Ich habe nochmal in meinen Quellcode geguckt.
Es gibt da noch ein Feld "submit" mit dem Wert "1".
Das musst du auch mitschicken.

Dann sollte der Login klappen.
Korrekt, das selbe wollte ich grad auch schreiben aber Tobi war schneller.

Auf dieses kleine Detail hatte Alex in deinem älteren Beitrag in der Vergangenheit bereits hingewiesen.

Re: Login-Fernbedienung

Posted: Sun 28. Jun 2020, 13:24
by mhagge
Da konnte ich mich sogar dran erinnern, dass es das Thema schon mal gab. Aber irgendwie habe ich es über die Suche nicht mehr gefunden...

Wie auch immer, funktioniert

Die Weiterleitung ist dann übrigens recht leicht

Code: Select all

    $info = curl_getinfo($ch);
    header('Location: '.$info['redirect_url']);
In $info sind dann eine ganze Menge Infos über die Curl-Verbindung, unter anderem die redirect_url - und da steht die vollständige URL zum Weiterleiten drin, inklusive Session-ID (das funktioniert sogar mit aktivierter 2FA, dann wird halt auf das Formular zur Eingabe des 2FA-Codes verwiesen)