Non è terribilmente comune, ma non è neanche così raro. È semplicemente un modo per eseguire la convalida della posta elettronica senza dover memorizzare ulteriori informazioni di stato.
Quindi, è semplice, che ha alcuni vantaggi in quanto la complessità è il nemico della sicurezza, quindi le soluzioni semplici sono in genere migliori per la sicurezza rispetto alle alternative più complesse che fanno la stessa cosa.
TUTTAVIA ... Suggerirei che in questo caso, non solo non è migliore, ma in realtà meno sicuro e meno che ideale.
La ragione principale è che è sempre una cattiva pratica inviare password in email. Anche quelli temporanei. È molto meglio inviare un collegamento che consente all'utente di impostare una password seguendo il link. Funziona per la convalida della posta elettronica, per gli account creati in modo asincrono (da un amministratore o un processo batch, ad esempio) e la password viene reimpostata quando un utente ha dimenticato la propria password. Ciò richiede un po 'di stato extra come ho detto prima (il link deve essere unico, e devi ricordare il valore per quando l'utente fa clic sul link e restituisce) ma questo non è tutto per nulla. Significa non solo che la password non deve mai essere inviata nell'etere in testo in chiaro, ma ti consente anche di terminare un singolo punto (il token) se non è stato utilizzato in un tempo ragionevole e di controllare per impedire -uso. (Un singolo token dovrebbe funzionare solo una volta.)
Quindi, il collegamento è decisamente più sicuro. I token sono più facili da proteggere con i controlli di sicurezza rispetto alle password e non si dovrebbero mai inviare password in chiaro, il che richiede abuso e uso improprio.