Skip to main content

Introduzione

La verifica email (Email Verification) è il meccanismo che verifica se un utente possiede realmente l’indirizzo email registrato. Laravel fornisce di default l’invio dell’email di conferma e il processo di verifica, così puoi costruire un flusso di autenticazione sicuro con un’implementazione minima.
Se usi gli starter kit, le schermate di autenticazione e il flusso di verifica email sono già integrati. Se implementi tutto a mano, definisci autonomamente modello, route e viste seguendo le istruzioni di questa pagina.

Preparazione di modello e database

Implementare MustVerifyEmail

Assicurati che App\Models\User implementi Illuminate\Contracts\Auth\MustVerifyEmail.
Aggiungendo questa interfaccia, l’email di conferma viene inviata automaticamente ai nuovi utenti registrati. Se implementi la registrazione senza usare gli starter kit, emetti l’evento Registered dopo che la registrazione ha avuto successo.

Verifica della colonna email_verified_at

La tabella users deve avere la colonna email_verified_at. Di norma è già inclusa nella migration di default 0001_01_01_000000_create_users_table.php.

Routing (3 route)

Per la verifica email definisci le 3 route verification.notice, verification.verify e verification.send.
1

Definisci la route di notifica di verifica (verification.notice)

Restituisce la schermata che mostra “controlla la tua email” agli utenti non verificati.
2

Definisci la route di gestione della verifica (verification.verify)

Quando l’utente clicca sul link nell’email, verifica l’URL firmato e completa la verifica.
3

Definisci la route di reinvio (verification.send)

Reinvia l’email di conferma se l’utente l’ha smarrita.

Protezione delle route

Per consentire l’accesso solo agli utenti verificati usa il middleware verified. Di solito lo combini con auth.
Quando un utente non verificato accede, Laravel lo reindirizza automaticamente a verification.notice.

Personalizzazione

Per personalizzare il corpo dell’email di conferma, configura VerifyEmail::toMailUsing nel metodo boot di AppServiceProvider.

Eventi

Alla verifica email viene emesso l’evento Illuminate\Auth\Events\Verified. Con gli starter kit è gestito automaticamente; nell’implementazione manuale, aggiungi la gestione dell’evento se necessario.
Ultima modifica il 13 luglio 2026