Autoinloggen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jan R

Jan R

03/02/2016 12:16:52
Quote Anchor link
Hoi,

Ik probeer automatisch in te loggen op mijn site.
Dit script heb ik gemaakt en de bedoeling is dat ik automatisch doorga en ingelogd ben.
Als ik de alert toon dan krijg ik de melding dat ik ingelogd ben echter als ik op de pagina kom, ben ik niet ingelogd.

Wat loop hier fout?

Jan

PS1 voor alle duidelijkheid. Dit script staat lokaal op mijn PC en niet op de server. Dat zoiu pas een veiligheidslek zijn :)

PS2 ik ken weinig af van jquery en nog minder van ajax.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<!DOCTYPE html>
<html>
    <head>
        <title>Auto inloggen</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <script type="text/javascript" src="jquery-2.1.4.min.js"></script>
        <script type="text/javascript">
            $.post("http://www.site.be/login.php",
            {
                name: "mijnlogin",
                pw: "mijnpaswoord"
            },
            function(data, status){
                //alert("Data: " + data + "\nStatus: " + status);
                window.location = "http://www.site.be/";
            });
        </script>
    </head>
    <body>
    </body>
</html>
 
PHP hulp

PHP hulp

14/03/2025 15:20:15
 
Ben van Velzen

Ben van Velzen

03/02/2016 12:38:16
Quote Anchor link
Je mag met AJAX niet crossdomain werken. Of heb je de juiste policy headers op de site staan? Heb je ook de status van de POST gecontroleerd?
 
Randy vsf

Randy vsf

03/02/2016 12:44:15
Quote Anchor link
Ben van Velzen op 03/02/2016 12:38:16:
Je mag met AJAX niet crossdomain werken. Of heb je de juiste policy headers op de site staan? Heb je ook de status van de POST gecontroleerd?


Met JSONP gaat dat wel.
 
Jan R

Jan R

03/02/2016 13:53:09
Quote Anchor link
Spijtig. Leek me een goed idee :)
 
Thomas van den Heuvel

Thomas van den Heuvel

03/02/2016 14:32:00
Quote Anchor link
Als dit mogelijk zou zijn zou dit ook inhouden dat die site Cross Site Request Forgeries toestaat. Alle (of op zijn minst alle publieke) formulieren zouden voorzien moeten zijn van een token die het onmogelijk maakt om te POSTen vanaf een andere locatie dan de site zelf. Het ontbreken van een token zou het geautomatiseerd doen van requests (lees: hackpogingen) ook een stuk makkelijker maken.

Ook krijgt een browser na het inloggen een nieuwe pagina geserveerd waarbij het sessie-cookie mogelijk van id is veranderd. Deze informatie heb je niet (direct) en moet ook ondersteund worden blijkbaar, mede door gebruikmaking van JSONP (normale AJAX calls kunnen blijkbaar niets met cookies indien het request Cross Domain is wat op zich een goede zaak is :)).

Je zou ook nog kunnen overwegen om in te loggen via cURL, maar dan ben je ingelogd met een gesimuleerde browser, yay!

Op de achtergrond spelen dus nog een heleboel technische zaken waardoor de hierboven gekozen aanpak waarschijnlijk (op geen enkele manier) gaat vliegen.

Ik zou je gewoon aanraden om de site wat vaker te bezoeken en/of daar eens een balletje op te gooien voor een "remember me" optie :).
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.