Hallo.
Ich habe folgendes Problem:
Ein PHP-Interface erlaubt einem Nutzer (sofern aktiviert), das Einloggen in das System mit 1
URL.
Diese
URL sei vereinfacht www.example.com/login.php?secretkey=<...>
Der Secretkey enthält den Benutzernamen und das Passwort in einer serverspezifischen Verschlüsselung. Die Daten sind somit nicht ohne Zusatzinformation zu entschlüsseln.
Da aber der Secretkey (sofern Salt nicht geändert wird) aber zum Einloggen ausreicht, ist es als eine geheime Information anzusehen.
Solange ich die geheime
URL von meinem (Annahme: nicht gehackten) Heim-PC aufrufe, ist alles OK. Das Problem besteht, wenn ein Nutzer die geheime
URL von einem fremden PC aufruft (was man eigentlich nicht tun sollte). Die
URL wäre im Verlauf und somit kann der Einloggvorgang selbst von einem unerfahrenen User durchgeführt werden.
Meine Fragen:
1. Gibt es mit einer Delphi-Application eine Möglichkeit, eine geheime
URL aufzurufen, die nicht gespeichert wird (Ausnahme: wenn PC mit Keylogger infiziert), aber trotzdem die nachfolgenden Webseiten (die durch ein HTTP-Redirect hergeholt werden) mit dem Standardbrowser behandelt werden können?
Oder bessere Variante:
2. Gibt es mit einer Delphi-Application eine Möglichkeit, ein
HTML-Formular (mit Benutzername und Passwort) auszufüllen, ABER die nachfolgenden Webseiten mit dem Standardbrowser zu behandeln? (Man müsste dem Browser irgendwie das Formular-Ausfüllen beibringen --> Problem: Browser soll beliebig sein!)
Hat jemand eine Idee? Ich befürchte aber, dass das nicht so möglich sein wird.
Die Anwendung könnte die Benutzerdaten verschlüsselt im Anhang besitzen und sie mithilfe einer Hardware-ID entschlüsseln; anschließend das
HTML-Formular ausfüllen (=einloggen). Damit würde der automatische Einloggvorgang, der PC gebunden wäre, nicht auf fremden PCs durchgeführt werden.
Gruß
blackdrake