I'm looking for analyzing if giving a temporal password when some user forgets its actual password and requires to log into an application (in my case, it's a Web application) is a good idea.
From my point of view, at the end of the day, either if you send a link to user's email inbox which opens a special page to type and re-type a new password, or just send a one-time-use temporal password to let user enter to its profile settings and change its password, we're talking about the same process.
If I need to find a con about the temporal password approach, I would say the user will need to copy and paste that password in the login box, while a link to set a new password let's enter a new password directly.
Anyway, I find a big advantage when I think about the temporal password approach: both when you want to change your password or you forgot your password, you're configuring your password in the same profile screen.
Why I shouldn't use the temporal password approach? Am I missing something?
I forgot to say that the whole temporal password has expiration. It can be used once, and it will expire - for example - in 1 hour.