PART 1
I have the following scenario and I was wondering if I could get your thoughts:
- Jack has account user1 with email test@test.com
- Jack really doesn't have test@test.com or has misspelt it when registering
- Jill comes along and logins with Facebook test@test.com
Questions:
- Does Jill just get "user1" account? because after all it is her email address?
- What happens to Jack? Has he just lost his account no way around it?
PART 2
I'm currently converting an old webforms app to asp.net core, and I've come across a workflow issue more than a bug.
The old Webforms app never had verified email addresses. I want to the asp.net core upon login to send confirmation emails.
The issue is that there could be a chance that some people have used fake emails, the email service no longer exists or been using another persons email address (maybe mistyped it).
Example
Person1 signed up an account Person1 with email test@test.com (can't verify that email)
Person2 wants to sign up with Person2 with email test@test.com (since they really own this email and they can verify it)
Questions 1) Person 1 can't verify their email, they won't be able to login.
2) Person2 can't register because email already taken, Person2 does a forget password and discovers its' being used by Person1 and is then able to login as Person1. This isn't ideal because it's not really their account
How can the above situations be handled?