HTTPS Session

  • Hallo liebe Community

    Bezüglich eines Tools, habe ich mir vorerst ein paar Gedanken gemacht was für Probleme alles gelöst werden müssen um dies hinzubekommen. Grundsätzlich sollte dies alles mit AutoIt machbar sein denke ich - wahrscheinlich auch am schnellsten :)

    Nun wie dem auch sei. Eines der Anforderungen ist die, dass HTTP POST's/GET's notwendig gemacht werden können müssen - um gewisse Probleme zu lösen. Aber dazu kommt - leider - das auf dem Webseite auf der diese Operationen durchgeführt werden müssen, eine Session notwendig ist. Nun frage ich mich, ob ich einen kleinen Browser im Tool integrieren kann, auf der sich der User vorerst einloggt um eine gültige HTTP Session zu generieren? Danach wäre es möglich die HTTP POST/GET Befehle erfolgreich abzusetzten und gültige Resultate geliefert zu bekommen.

    Habt ihr bereits Erfahrungen gemacht?

    Bisher habe ich noch keine einzige Zeile code. Ich bin noch in der "Proof of Conecept" Phase. Nicht nur was das obige anbelagt, sondern auch darüber wie überhaupt das Protokoll für den Aufbau der Session aussieht und wie die HTTP POST/GET Parameter überhaupt aussehen - für meine Problemstellung. Aber das kann ich Schritt für Schirtt analysieren. Hierzu denke ich beispielsweise mit dem Firefox Addon "LiveHTTPHeaders" zu arbeiten. Oder habt ihr auch hier einige Tipps?

    Vielen Dank schonmal für alle eure Antworten im vorraus.

    Gruss, Kaioshin

  • Stichwort ist die WinHTTP.au3
    Hier ein Beispiel, schnell im Wordpad & ohne Live Http Headers getippt, keine Garantie auf vollständig- oder richtigkeit.

    [autoit]

    #include <WinHttp.au3>
    Local $hSession, $hConnect, $sUser, $sPass

    [/autoit][autoit][/autoit][autoit]

    $sUser = 'test'
    $sPass = 'test'

    [/autoit][autoit][/autoit][autoit]

    $hSession = _WinHttpOpen()
    $hConnect = _WinHttpConnect($hSession, 'demos.9lessons.info')

    [/autoit][autoit][/autoit][autoit]

    ; HTTP Get
    $SHTML = _WinHttpSimpleRequest($hConnect, 'GET', '/login.php')

    [/autoit][autoit][/autoit][autoit]

    ; HTTP Post
    $SHTML = _WinHttpSimpleRequest($hConnect, 'POST', '/welcome.php', Default, 'username=' & $sUser & '&password=' & $sPass, 'http://demos.9lessons.info/login.php')

    [/autoit][autoit][/autoit][autoit]

    ; Quelltext in SciTE Console ausgeben
    ConsoleWrite($SHTML & @CRLF)

    [/autoit]
  • Hallo SEuBo

    Danke für deine Unterstützung. Mir ist zu meinem Fall noch was anderes aufgefallen. Wenn ich eine neue Session kreiere (beispielsweise mit einem anderen Browser), verliert man mit dem vorherigen die Verbindung zu dem Dienst - bei dem es in meinem Fall geht. Daher dachte ich, wäre folgende Möglichkeit geeignet um dieses Problem zu umgehen.

    Ich kopiere die bereits bestehenden Cookies vom Browser und authentifiziere mich damit beim Webserver. Damit sollte sich das oben beschriebene Problem erledigen und noch dazu würde es kein zusätzliches Login des Users benötigen. Im übrigen wird ein Login auf diesem Webserver sowieso nötig sein um mit diesem Tool dan überhaupt was anfagen zu können. Ich denke es sollte möglich sein die Cookies vom Internet Explorer beispielsweise zu kopieren. Ich beschäftige mich mit diesem Thema leider nicht in meiner täglichen Arbeit. Weitere Vorschläge, Ideen, Tipps etc. sind willkommen :rolleyes:

    Im Übrigen, der Webserver nutzt ausschliesslich HTTPS als Protokoll.

    Gruss, Kaioshin

    Einmal editiert, zuletzt von Kaioshin (10. Januar 2014 um 23:02)