PHP

Dati Utente

Quando si progetta un sistema di autenticazione, è fondamentale capire quali dati servono davvero e quali sono opzionali o legati a funzionalità specifiche. L’obiettivo è rispettare i principi di minimizzazione dei dati, sicurezza e chiarezza progettuale.

Durata

50 minuti

Software

XAMPP (Apache, PHP, MySQL), browser web, editor di testo/IDE (es. VS Code)

Dati necessari per la login

La login è il processo con cui un sistema informatico riconosce un utente e gli consente di accedere alle risorse. Per funzionare correttamente, richiede almeno due categorie di dati:

Dati identificativi

I dati identificativi permettono al sistema di trovare l'utente nel database.

  • Username: nome utente scelto dall'utente o assegnato dal sistema.
  • Email: spesso usata come identificativo univoco.
  • ID utente: codice numerico o alfanumerico interno (ad esempio matricola).
1.2 Dati autenticanti

I dati autenticanti servono a verificare l'identità dell'utente, cioè a dimostrare che chi sta effettuando l'accesso è davvero il proprietario dell'account.

  • Password: la forma più comune di autenticazione.
  • PIN: codice numerico, usato in alcuni sistemi.
  • Token OTP (One Time Password): codice temporaneo usato in autenticazione a due fattori.

In un sistema base, i dati minimi per la login sono: username o email (identificativo) e password (dato autenticante).

Dato Categoria Scopo
Username / Email Identificativo Individuare l'utente nel sistema.
Password Autenticante Verificare che l'utente sia autorizzato ad accedere.

Dati necessari per il recupero password

Il recupero password è una funzionalità che consente all'utente di riottenere l'accesso al proprio account quando ha dimenticato la password. Per motivi di sicurezza, non è possibile mostrare la password esistente, ma si procede alla sua reimpostazione.

Dati di contatto

Servono per inviare il link o il codice di recupero.

  • Email: indirizzo su cui viene inviato il link di reset.
  • Numero di telefono: usato per inviare SMS con codici OTP (opzionale, ma molto diffuso).
Dati di sicurezza per il reset

Sono dati generati dal sistema per garantire che il recupero sia effettuato in modo sicuro.

  • Token di recupero: stringa univoca e temporanea inserita nel link di reset.
  • Codice OTP: codice monouso inviato via email o SMS.
  • Data e ora di scadenza del token o del codice.

Questi dati non sono necessari per la login quotidiana, ma sono fondamentali per la procedura di recupero password.


Dati necessari per determinare il ruolo dell'utente

In molti sistemi (scolastici, aziendali, gestionali) non tutti gli utenti hanno gli stessi permessi. Per questo si memorizza un dato che identifica il ruolo o il livello di autorizzazione.

Dati di ruolo e permessi
  • Ruolo: ad esempio admin, docente, studente, segreteria.
  • Livello permessi: valore numerico o simbolico che indica il grado di autorizzazione (es. 0 = utente base, 1 = moderatore, 2 = admin).
  • Gruppo o classe: utile in ambito scolastico per associare lo studente a una classe o a un corso.

Questi dati non servono per verificare l'identità dell'utente, ma per stabilire cosa può fare una volta autenticato:

  • Un admin può gestire utenti e configurazioni.
  • Un docente può inserire voti e materiali didattici.
  • Uno studente può visualizzare voti, compiti e comunicazioni.

Altri dati utili in un sistema reale

Oltre ai dati strettamente necessari, un sistema può memorizzare altri dati per migliorare sicurezza, tracciamento e personalizzazione.

Dati di sicurezza aggiuntivi
  • Data e ora dell'ultimo accesso: utile per controllare attività sospette.
  • Numero di tentativi di login falliti: permette di bloccare temporaneamente l'account dopo troppi tentativi.
  • Indirizzo IP dell'ultimo accesso: utile per analisi di sicurezza.
  • Stato dell'account: attivo, bloccato, in attesa di verifica.
Dati di profilo e personalizzazione
  • Nome e cognome: per visualizzare correttamente l'identità dell'utente.
  • Foto profilo: elemento puramente estetico e identificativo.
  • Preferenze: lingua, tema grafico, impostazioni personali.

5. Schema riassuntivo

Categoria Dati principali Obiettivo
Login username/email, password Identificare e autenticare l'utente.
Recupero password email/telefono, token, codice OTP Consentire il ripristino sicuro dell'accesso.
Ruolo ruolo, livello permessi, gruppo/classe Determinare le azioni consentite all'utente.
Altri dati ultimo accesso, tentativi falliti, preferenze Migliorare sicurezza, tracciamento e personalizzazione.

Questa distinzione aiuta a progettare sistemi più sicuri, più chiari e conformi ai principi di minimizzazione e protezione dei dati personali.




login, autenticazione, dati utente, sicurezza, PHP, XAMPP, form HTML, validazione dati, Informatica, Istituto Tecnico Tecnologico, classe quinta,