Proteggere più pagine con password

max92

Nuovo Utente
24 Gen 2010
7
0
0
Salve, qualcuno può consigliarmi un tutorial o un link o una guida dove venga riportata la tecnica migliore (più facile ed efficace) per proteggere più pagine di un sito tramite password?

Credo che eseguita l'autentificazione su una form html ci sia bisogno di impostare una variabile di sessione (se password corretta) e quindi di controllare lo stato di tale variabile all'inizio di ogni pagina che intendo proteggere, ma non ne sono del tutto sicuro
 
!!!

se mi contatti in privato magari ti posso dare qualke esempio di pagina protetta con eventuale modulo di login
 
se mi contatti in privato magari ti posso dare qualke esempio di pagina protetta con eventuale modulo di login
non mi sembra che questo rispetti lo spirito del forum

Credo che eseguita l'autentificazione su una form html ci sia bisogno di impostare una variabile di sessione (se password corretta)

si è così, una volta verificata la correttezza della pass, la passi insessione e in ogni pagina riservata verifichi che la sessione esista, altimineti torni alla pag di log
 
Ciao, proteggere una o pià pagine con password è un'operazione ormai estremamente comune.

Esistono, però, varie tecniche in tal senso, da quelle meno sicure a quelle con rischi minori, di bassa, media ed alta complessità.

Di seguito ti riepilogo SOLO alcuni approcci:

1) HTTP Authentication
2) Le stesse pagine hanno un modulo interno che le consente di non essere visualizzate se la sessione di autenticazione non è valida (c9ome tu stesso proponevi e borgo italia approggiava)
3) La configurazione del webserver (nello specifico i file .htaccess) di Apache.

Se mi posso permettere di consigliare, francamente, dato quando curi l'autenticazione devi anche curare la memorizzazione delle user e delle pass è in base a quello che mi muoverei... Dove vengono memroizzate username e password.
Sul DB?
Altrove?
Criptate?
Se queste sono statiche e ci sono pochi utenti e non sono sul db potresti optare per la configurazione del file .htaccess..........

Ciao, Ciro
 
Password e nome utente su db mysql, ma mi sento in dovere di aggiungere che sulla sicurezza possiamo andare molto laschi.

È un progetto da presentare per un corso scolastico quindi assolutamente non andrà mai in linea. Una cosa facile e veloce ma che garantisca il risultato.

Le variabili di sessione allora sono la via migliore?
 
Scusate altra curiosità: basta controllare che "isset(variabiledisessione)" e che quindi esista oppure conviene controllare anche il contenuto?
 
Una cosa semplicissima (e non tanto sicura) ma funzionante e con sessioni potrebbe essere questa:

form.php
PHP:
<?php 
session_start ();    
$nome_utente = "NOMEUTENTE";     
$password = "PASSWORD"; 

 if ((!isset($_POST['utente'])) || (!isset($_POST['password']))) 
 { 
  echo "<form method=\"post\" action=\"".$_SERVER['PHP_SELF']."\"> 
  User: <input type=\"text\" name=\"utente\"><br> 
  Password: <input type=\"password\" name=\"password\"><br> 
  <input type=\"submit\" value=\"Invia\"></form>"; 
  }
 else
  { 
  if (($_POST['utente']==$nome_utente)&&($_POST['password']==$password))
  {
  $_SESSION['utente']=$_POST['utente']; 
  $_SESSION['password']=$_POST['password']; 
  header("Location: pagina_riservata.php");
  }
 else {echo "Login errato";} 
  }
?>

pagina_riservata.php
PHP:
<?php
session_start();
if(isset($_SESSION['utente'])&& isset($_SESSION['utente']))
{
echo "Ciao " . $_SESSION['utente']; 
}else{
echo "Accesso non consentito";
}
?>
 
Ultima modifica:
ciao eliox *

non sarebbe meglio scrivere

PHP:
if(!isset($_SESSION)){session_start ();}
al posto della sola session_start();


*nota:
moderatore di II° classe, di I° ce ne sono altri:D
 
Se hai un'applicazione ben strutturata non c'è bisogno di controllarlo, perché se $_SESSION è già definito vuol dire che da qualche altra parte hai chiamato session_start() e non te ne ricordi. E questo non va bene :D

Però, visto che borgo è vecchio e si scorda di quello che scrive, glielo concediamo.
 
ciao
qualcuno disse: "lasciate che i bimbi vengano a me...che se li piglio..."

cosa centra il ben strutturato. in ogni pagina in cui uso una sessione devo inserire il session-start

se nella pag 1 e nella 2 uso le sessioni in entrambe devo mettere lo start.

se dalla pag 1 passo alla 2 a che mi serve startizzare di nuovo la sessione?


in quest'esempio mette l'if
http://it.php.net/manual/en/function.session-start.php#70028
 

Discussioni simili