Pagine sicure?

Ciao, vorrei sapere se il metodo che uso per limitare l'accesso alle mie pagine riservate è sicuro...

Praticamente, quando si effettua il Login tramite l'apposito modulo, aggiungo una sessione chiamata $_SESSION['username'].

Nelle pagine in cui poi l'accesso è riservato ho messo questo codice:

// Se $_SESSION['username'] è vero, quindi contiene qualcosa l'utente ha effettuato il login e tutto va 
// bene. 
// Se no, se $_SESSION['username'] è false, uccide lo script.

if(! $_SESSION['username']) {
die("Restricted Area, Fai il Login!");
}

Ora, uso PHP da pochi mesi e ancora non è che sia un genio, vorrei quindi sapere da qualcuno piu' esperto se iul metodo che utilizzo è valido oppure no... ( in caso contrario potreste indicarmi una via migliore?).

Grazie, Andrea

inviato 11 anni fa
eXile
modificato 11 anni fa
X 0 X

Ops dimenticavo (mi è scomparso il tasto edit sopra o.0).

Come mi conviene reindirizzare un utente in un'altra pagina in caso di successo o fallimento?

risposto 11 anni fa
eXile
X 0 X

Il controllo che fai sulla variabile di sessione è corretto e sufficiente. Da questo punto di vista pertanto ritengo che tu possa stare tranquillo.

Ti consiglio però di verificare attentamente il sistema di log-in, ovvero tutte le istruzioni che portano a settare la variabile $_SESSION['username']. Forse è proprio quello il punto più delicato.

Per rimandare il browser ad un'altra pagina puoi usare la funzione header seguita da un exit:

header('location: nuova_pagina.php');

exit;

Mi raccomando, non puoi produrre output prima di utilizzare tale funzione!

 :bye:

P.S.: la modifica dei messaggi è abilitata solo per i primi 5 minuti dopo l'invio degli stessi

risposto 11 anni fa
Gianni Tomasicchio
X 0 X

Ciao, 'penso' che il sistema di Login che ho scriptato sia sicuro.

Praticamente durante la registrazione cripto la password con la funzione crypt e la immetto nel database (ovviamente dopo i relativi controlli del caso).

Durante il login invece confronto quella che invia l'utente (criptandola a sua volta all'interno di una variabile) con quella criptata che ho nel db. Se tutto va bene do l'accesso, se no chiedo di rinserire i dati :)

Al mio cervello sembra una via abbastanza sicura, ma poi si sa che piedi piedi c'e' sempre dietro l'angolo il genio del male pronto a romperti le balle :D

Ps: grazie

risposto 11 anni fa
eXile
modificato 11 anni fa
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda

Domande simili