Claudiogarau.it :: Tutorials & Scripts, PHP, Linux and more.

Home ~ Php :: Autenticazione HTTP con PHP :: Indice Php

Autenticazione HTTP con PHP

Categoria: Php Inserito il: 05-04-2007 Stampa (8996 click)

In questo articolo proponiamo un semplicissimo esempio di autenticazione HTTP, detta anche WWW-Authenticate, che mostra come utilizzare gli headers per creare un sistema di login per gli utenti. La procedura prevede che il nome e la password dell'utente autorizzato al login siano inserite direttamente nel codice dello script, naturalmente nulla vieta di andarle a prelevare da una base di dati.

L'autenticazione tramite protocollo HTTP è considerata abbastanza sicura per quanto riguarda la protezione di aree riservate non destinate al traffico degli utenti, per quanto riguarda invece altri casi come per esempio l'accesso a forum di discussione si consiglia vivamente di utilizzare le sessioni..

<?php
$autenticato = false;
if (isset($_SERVER['PHP_AUTH_USER']) && 
    isset($_SERVER['PHP_AUTH_PW']))
  {

  $user = $_SERVER['PHP_AUTH_USER'];
  $password = $_SERVER['PHP_AUTH_PW'];
  
if ($user == 'marlon' && $password == 'brando'){
  $autenticato = true;
  }
 }
if (!$autenticato){
  header('WWW-Authenticate: Basic realm="Pagina di accesso"');
  header('HTTP/1.0 401 Unauthorized');
  echo "Autenticazione fallita.\n";
}
  else {
  echo 'Utente autenticato.';
  }
 ?>
Lo script in pratica non fà altro che controllare la corrispondenza dei valori delle variabili per l'autenticazione ($_SERVER['PHP_AUTH_USER'] e $_SERVER['PHP_AUTH_PW'] ) con i dati di accesso stabiliti nel listato. A seconda dell'esito dell'operazione verranno inviati tramite protocollo headers differenti.

Cerca nel sito
Per sito
Sviluppatore di applicazioni Web con competenze evolute nella progettazione delle basi di dati, autore per alcune delle pił importanti testate on line dedicate alla manualistica tecnica (HTML.it, MrWebmaster.it, Edit) e consulente per l'e-learning.
Tutte le categorie
Tutorial Random
Una funzione PHP per il BBcode
BBcode (Bulletin Board Code) è un diffuso sistema per dare la possilibità a coloro che compilano form, scrivono commenti o... Leggi l'articolo
Corsi online per sviluppatori
Corsi per Webmaster, Web Designer, Programmatori, Grafici e Sistemisti