-
Notifications
You must be signed in to change notification settings - Fork 140
Fix email verification #869
Comments
@LuisaAPF agreed, if that happens in production, that does seem like a bug. To verify if I got it right: you encounter this problem on your development machine only right now? If you don't have much data, the easiest way would probably to drop and re-create your development database:
Let me know if that fixed the problem locally. Would you like to work on some form of account recovery to prevent this lock out on production? I'm happy to help of course. |
Hi @carpodaster, I could solve the problem locally. But is it really necessary to forbid the user from accessing her/his account if the email address is not confirmed? I think it would be better to allow access at least to the profile page, in case a change in email is needed. What do you think? |
@LuisaAPF yes, you are absolutely right, access to the profile page should be possible. Maybe the app should even auto-redirect to the profile page after a login with an unconfirmed account whose grace period has expired? I don't have a way of testing out myself right now: can you log in at all with an unconfirmed-expired account? And if so, are you shown a flash notification that prompts you to validate the email address (this should be shown during the grace period) |
When my account was expired, I wasn't able to login. I got a 401 unauthorized status. There was no notification asking me to validate my email address. But this wouldn't have solved the problem if my email was wrong or inactive. So I think we should give the user the chance to update the email before re-sending the confirmation request. In my opinion, the best way would be to never block the access to an account. Instead, we should forbid a user with an unconfirmed email to have access to certain functionalities, like creating a team. |
Sorry, I mean @carpodaster , @klappradla ^ |
I personally wouldn't consider it @F3PiX, don't really see the pay-off (but you can of course always give it a try 👍 ). Is there actually much business logic tied to "accounts"? Isn't it all in the devise gem? We're also only using very very few features of devise 😉 Requiring a verified email to sign in is actually a feature™ @LuisaAPF 😉. User can be assigned as coaches which would e.g. require an email, etc. One could of course also solve this by adding more I pretty much like @carpodaster of sending unconfirmed users to a dedicated page right away. In theory, there would even be pages to request a new confirmation token 🙈 however, I don't think they're correctly set up in the Teams App. In order to have something "actionable" about this bug report. What do you think about turning this in: ???
|
Hey @klappradla, |
Will stick to the number thing 🤓 2 - You're right. The routes are theoretically there, but I don't think there's anything configured to have them working. ❯ be rails routes | grep confirm
new_user_confirmation GET /users/confirmation/new(.:format) devise/confirmations#new
user_confirmation GET /users/confirmation(.:format) devise/confirmations#show
POST /users/confirmation(.:format) devise/confirmations#create So to sum up: |
Exactly! More important than blocking an account would be making sure a user can't do anything interesting with an unconfirmed email, from day 1. |
👍
Submitting an application without having one's account is not possible, so that's a ✅ But I guess we could add:
What do you think? |
That's a nice summing up. 💝 |
Sure @F3PiX - I'll assign the issue to you. I'll also remove the |
Hey @klappradla , @F3PiX . I think it is a way of solving the problem. If we want to lock the account, the user should be able to unlock it, to avoid overwhelming the support. But honestly, I think it is an unnecessary piece of extra work. Say a user creates an account today, but forgets to validate the email. She cannot do any harm, because all important actions require a valid email. One week later she tries to log in again and finds out her account has been blocked. It seems to me she's being penalized for nothing. |
I don't recall the initial motivation for having this grace period. I would vote for not allowing an unconfirmed user anything but updating their profile. And confirming their email address of course. This is very strict, yes. But browsing projects, the community and teams page as well as the activity stream doesn't require a user account. |
It's been a month since I last signed in to my account (locally). It happens that I forgot to confirm my email and that is an active option that forbids my access after 30 days. Is there a way to overcome this?
(I mean, I'm sure that is a manual way to solve this, but maybe it's better to avoid that this happens in production?)
The text was updated successfully, but these errors were encountered: