Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    509

    [php http>https] passaggio di sessioni

    ciao a tutti. una domanda per me non banale per un problema che nell'ignoranza mi è capitato..premetto che non mi interessa codice, mi basta avere un idea di cosa fare

    ho un sito con accesso con user e pass. all'interno di questo sito c'è un'ulteriore sessione piu importante dove devo passare dei dati criptati su un'altra pagina.
    unico problema che questi dati me li porto dietro tramite sessione e non appena mi sposto dall'http all'https le sessioni vengono cancellate..o meglio non vengono visualizzate.

    la cosa mi ha fatto pensare logicamente che il semplice passaggio di sessioni non sia fattibile.

    la domanda d'obbligo è come si può fare?
    avevo pensato di memorizzare in un db passare in https e poi riprelevare il tutto..
    il problema è che devo comunque dire al db come recuperare i dati in base a qualcosa..e quel qualcosa devo passarmelo...un post o un get o una sessione sono prelevabili facilmente...e farebbero perdere senso ad avere una sessione in https..
    avete qualche idea?

    per chiarezza provo a schematizzare:

    sito -->
    accesso tramite user/pass(salvataggio in sessioni dell'accesso) -->
    possibilità di passare ad una sezione protetta -->
    HTTPS accesso a user/pass[2] se user/pss sono gia impostati -->
    sito sicuro...(o ci si prova)

    il problema è che quando entro nella pagina https e richiedo la seconda user e pass registro l'accesso e verifico l'esistenza del primo accesso. e questo non so come realizzarlo perchè tutte le sessioni non esistono più..qualcuno ha un idea?

  2. #2
    Hai provato a passare il SID nella query string o tramite POST quando ti sposti da HTTP ad HTTPS e viceversa?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    509
    per SID intendi l'id di sessione?
    ma se lo invio tramite post poi come li recupero gli altri valori?
    o intendi creare un db temporaneo con i valori dargli un identificativo con il sid e poi recuperare i valori con il sid inviato tramite post?

  4. #4
    Se è lo stesso web server ad ospitare sia l'HTTP che l'HTTPS e la cartella delle sessioni è condivisa, è sufficiente passare il SID (session_name() . '=' . session_id()) per propagare le sessioni.

    Prima di impelagarsi nello sviluppo di soluzioni complesse, dovresti provare con un semplice pagina di prova a passare il SID da e verso l'HTTPS e vedere se i valori sono mantenuti.

    Codice PHP:
    <?php 
    session_start
    ();
    $_SESSION["test"] = isset($_SESSION["test"]) ? $_SESSION["test"] + 0;
    print(
    '$_SESSION["test"] = ' $_SESSION["test"]);
    ?>

    [url="https://<?php echo($_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '?' session_name() . '=' session_id()); ?>"]HTTPS[/url]

    [url="http://<?php echo($_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '?' session_name() . '=' session_id()); ?>"]HTTP[/url]

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    509
    si scusa. avevo gia provato dopo il tuo post e funziona è che stavo pensando lato sicurezza.
    ovvero facendo cosi essendo un Get partito dall' http dovrebbe essere facilissimo recuperare la sessione e quindi riutilizzarla a proprio piacimento...non che ci siano dati importanti però preferirei evitare.

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    509
    stavo pensando infatti di mischiare il sid con un valore cryptato che cambi continuamente o ad ogni ora che posso recuperare in qualunque momento per evitare il riutilizzo della sessione.

    ma non so se alla fine sia una cavolata lo stesso.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.