Il y a déjà du code pour créer des utilisateurs « staged » si vous autorisez la création de sujets par e-mail. Ceux-ci ont un nom d’utilisateur aléatoire et sont chacun associés à une adresse e-mail. Vous pouvez « revendiquer » le compte en vous connectant et en validant cette adresse e-mail.
Voir
Peut-être que s’appuyer sur cela pourrait aider ?