I'm working on a web-app that requires user sign in. In addition to the normal sign up username/password process, I'm providing users the option to sign in using their Google account. Possibly at some point I may decide to add Facebook or Linked-in.
My question is not technical, it is about how to handle the sign-up steps. When a user clicks the "login with Google" button the user is nearly immediately logged in, there is no form to fill in and no email confirmation. So how can one be sure of the user's true intention. The last thing I need to do is manage a bunch of accounts of users that clicked once, maybe checked out the content, but then are never to be seen again, how do I even know if I will ever see them again. I suppose that is half the benefit of these "federated login" services, make sign up as frictionless as possible, but I'm not sure that is desirable in this case.
Should I send a sign-up confirmation email, with a link that needs to be clicked within some number days?
The Google sign-up process would then be:
User click "Login with Google"
The user is authenticated, then the db is verified to see if the user exists, if it is a new user, the user gains immediate access, but can only return if he/she clicks the link in the confirmation email, otherwise after some time lapse the account is "deleted". Not really deleted (kept for some even longer time lapse before full deletion) because one should probably keep a copy to ensure that there is no abuse from an account.
Any thoughts or better ideas?