Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Sicurezza di una variabile $_SESSION

    Ciao a tutti, ho un dubbio che spero possiate aiutarmi a superare.
    Sto progettando una sorta di gioco online e l'utente, per tutta la durata della giocata, si porterà a spasso delle variablili di sessione, con la sessione inizializzata semplicemente con "session_start()" senza parametri. Ora, come è immaginabile, l'utente potrà cambiare durante il gioco il suo equipaggiamento e lo script dovrebbe rilevarlo al fine di stabilire, ad esempio, quale arma ha a disposizione e il relativo danno provocabile.
    Considerato che sto cercando di ottimizzare il codice per cercare di fare meno query possibile al database, sarebbe sicuro se io non controllassi di volta in volta i dati presenti sul db, ma mi limitassi ad usare solo le variabili di sessione?

    Vi faccio un esempio:
    In una pagina io carico la lista delle armi che il giocatore possiede in una combo html, successivamente il giocatore seleziona da questa una delle armi e invia il form. Lo script riceve il form, esegue un update sul database e aggiorna la variabile di sessione che contiene l'arma.

    Durante il combattimento, uno script cerca sul database quale arma l'utente abbia equipaggiato effettivamente e le relative caratteristiche.

    Se invece di usare il database, mi servissi solo delle variabili di sessione, potrebbero esserci dei problemi di sicurezza? L'utente potrebbe equipaggiare un'arma a sua scelta anche non in suo possesso?
    "Una volta che si saranno esaurite senza successo tutte le possibilita', ci sara' una soluzione, semplice e ovvia, che saltera' immediatamente all'occhio di chiunque altro."

    Guardate: Il Miracolo delle Noci!!

  2. #2
    up
    "Una volta che si saranno esaurite senza successo tutte le possibilita', ci sara' una soluzione, semplice e ovvia, che saltera' immediatamente all'occhio di chiunque altro."

    Guardate: Il Miracolo delle Noci!!

  3. #3
    mhm il problema è che la sessione la legge solo un utente, quindi l'altro utente contro cui combatti non può usare la sessione dell'avversario ma per forza il database.
    cmq apparte questo le sessioni sono abbastanza sicure soprattutto se hai un server dedicato..

  4. #4
    lo script poi inserirà i valori risultanti sul database, quindi non c'è problema in quel senso. Il server non credo sia dedicato.... altri pareri?
    "Una volta che si saranno esaurite senza successo tutte le possibilita', ci sara' una soluzione, semplice e ovvia, che saltera' immediatamente all'occhio di chiunque altro."

    Guardate: Il Miracolo delle Noci!!

  5. #5
    Utente di HTML.it L'avatar di mark2x
    Registrato dal
    Nov 2005
    Messaggi
    1,940
    Se il server non è dedicato devi porre attenzione al fatto che i file di sessione non siano comuni a tutti. Per il resto stai tranqui.

    Anche perchè la "sicurezza" si valuta in base allo scopo dell'applicazione.
    E non credo che in un gioco i file di sessione contengano dati vitali

    [.:: JaguarXF ::.]
    __________________

  6. #6
    Originariamente inviato da mark2x
    Se il server non è dedicato devi porre attenzione al fatto che i file di sessione non siano comuni a tutti. Per il resto stai tranqui.

    Anche perchè la "sicurezza" si valuta in base allo scopo dell'applicazione.
    E non credo che in un gioco i file di sessione contengano dati vitali
    No figuriamoci , volevo solo evitare che il primo utente smaliziato potesse equipaggiare un'arma con 20d20 e sbilanciare le sorti del gioco... ok, andrò avanti con le sessioni. grazie mille
    "Una volta che si saranno esaurite senza successo tutte le possibilita', ci sara' una soluzione, semplice e ovvia, che saltera' immediatamente all'occhio di chiunque altro."

    Guardate: Il Miracolo delle Noci!!

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.