Come proteggere con username e password l’accesso ad un sito web
Visto che ultimamente abbiato parlato di Apache e file .htaccess, ne approfitto per continuare con l’argomento mostrandovi come sia possibile sfruttarne le potenzialità per attivare (in soli 2 passaggi) quella che tecnicamente viene definita Basic Authentication e che consiste nella possibilità di attivare la protezione di un sito (o di una sua sottosezione) tramite username e password:
- Creazione delle utenze abilitate ad accedere all’area protetta
Per creare le utenze e le relative password criptate potete utizzare il seguente comando su Linux:htpasswd –c /pathdirectoryprotetta/.htpasswd nomeutente
Dove l’opzione “-c” va utilizzata solo per creare il primo utente (e andrà omessa per tutti i successivi).
In alternativa, se vi torna più comodo potete ottenere lo stesso effetto con il seguente codice php:$username="nomeutente"; $password="pluto"; $password = crypt($password,CRYPT_STD_DES); $content = "$username:$password\n"; $filename = "/pathdirectoryprotetta/.htpasswd"; $handle = fopen($filename, 'a+'); fwrite($handle, $content); fclose($handle);
- Creazione del file .htaccess per gestire l’autenticazione
Create il seguente file .htaccess nella directory da proteggere:AuthUserFile /pathdirectoryprotetta/.htpasswd AuthGroupFile /dev/null AuthName "Members Only Login" AuthType Basic <Limit GET POST> require valid-user </Limit>
Dove dovrete far attenzione solamente a specificare correttamente il parametro AuthUserFile che specifica il path assoluto del file con le utenze da utilizzare per l’autenticazione.
Una volta effettuati questi due semplici passaggi, se non avete fatto errori, quando tenterete di accedere con il browser alla sezione protetta da Basic Authentication comparirà una finestra di login analoga alla seguente:
Iscriviti alla newsletter per ricevere in tempo reale tutte le notizie e gli aggiornamenti!