Puedes crear en la db dos campos: un campo "token" y un campo "confirmed"
El campo "
confirmed" o active o como lo quieras llamar, sera
false cuando recién se registra el usuario.
El campo "
token" sera un string random tal vez un md5 del email, username y fecha o lo que prefieras.
Al momento de registrarse el usuario le envias un mail de confirmación ese mail va contener un link
que tendra el email del usuario y su token, algo como:
Luego en tu app tienes que crear un metodo que confirme que ese
token le pertenece a ese usuario con ese email, si es así cambias el valor del campo "confirmed" a
true y tienes tu user confirmado
Mas o menos puedes hacer así.