Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Students should not be able to signup with a fake email #270

Closed
franzmoro opened this issue Dec 23, 2016 · 14 comments
Closed

Students should not be able to signup with a fake email #270

franzmoro opened this issue Dec 23, 2016 · 14 comments
Assignees

Comments

@franzmoro
Copy link
Contributor

franzmoro commented Dec 23, 2016

Currently a student can signup with any email (even non-existing emails).
Do we want to prevent this? update: We should check for fake emails first

For lecturers this won't be an issue, as they need to verify with their email.
update: fake lecturer emails will affect our email service

@iteles
Copy link
Collaborator

iteles commented Dec 23, 2016

@franzmoro @sohilpandya It's important that students can sign up with any domain email, but fake emails will kill our email service! Please see the comment here: #248 (comment)

Please speak to @roryc89 about whether we can re-use his bounce rate checker and blocker.

@iteles iteles assigned sohilpandya and franzmoro and unassigned stianr Dec 23, 2016
@sohilpandya
Copy link
Contributor

We can try to use the following module to help us determine whether an email is valid or not - https://github.com/nmanousos/email-existence

This would help with bounce rates.

The idea would be to reject the signup process if the email does not exist according to the module.

3 Hours

@franzmoro franzmoro changed the title Student signup emails (is any email ok?) Students should not signup with a fake email Dec 23, 2016
@franzmoro franzmoro changed the title Students should not signup with a fake email Students should not be able tosignup with a fake email Dec 23, 2016
@franzmoro franzmoro changed the title Students should not be able tosignup with a fake email Students should not be able to signup with a fake email Dec 23, 2016
@iteles
Copy link
Collaborator

iteles commented Dec 23, 2016

@sohilpandya Beware of nmanousos/email-existence#28

@sohilpandya
Copy link
Contributor

@iteles ahh, definitely not a reliable module...

@sohilpandya
Copy link
Contributor

sohilpandya commented Dec 23, 2016

An alternative that has been suggested(after having a chat with Rory):

  • Keep track of all the emails that have been bounced by SES, blacklist these emails and don't allow them to register using the same email again.

We feel that there is a lot of work involved for this to take place. We are not thinking of solving this issue by going down this avenue.

@franzmoro
Copy link
Contributor Author

franzmoro commented Dec 23, 2016

There are email verification services, such as mailboxlayer.

The free version allows up to 1,000 requests / month.
In future this might get us asking what would/should happen after the 1,000 signups mark (i.e. we don't check for them anymore, otherwise the whole signup service would go down), but we are still talking of 1,000 monthly user signups.

We need to bypass the usage of this API in our tests (e.g. mock it) so that we don't consume it.

The upgrade to 10,000 monthly requests (user signups) costs $9.99 / month.

@sohilpandya
Copy link
Contributor

I've done some quick research and found that AWS SES keeps to a 5% bounce rate. that means for our account which has a limit of 50,000 emails/day, the number of emails that will have to bounce before our account is put under probation is 2500.

I don't think that we need to implement any of the two options that we have been discussing above.

@franzmoro
Copy link
Contributor Author

franzmoro commented Dec 23, 2016

This leaves us with:

  • a flawed logic in our server. A bounced email should not lead to a user signup.
  • error message shall be displayed in the front end

franzmoro added a commit that referenced this issue Dec 23, 2016
added dependency as well

related #270
franzmoro added a commit that referenced this issue Dec 23, 2016
back-end asynchronous sendemail bug-fix, use correct redux store in front-end

related #270
@franzmoro
Copy link
Contributor Author

franzmoro commented Jan 3, 2017

@iteles , although it has a "technical" label, someone should probably user-test this issue, right? ( @sohilpandya and I have, but best if someone else does too)

@iteles iteles removed the technical label Jan 6, 2017
@iteles
Copy link
Collaborator

iteles commented Jan 6, 2017

@franzmoro You're right, this is testable by our PO, so he should test it when it is ready!

@hhsadiq
Copy link

hhsadiq commented Jan 23, 2017

@sohilpandya @franzmoro Hey guys, can you tell how you guys were able to solve this issue (beside using paid service)? I am working on similar task and want to figure out fake/non-exisitng emails. Currently playing around with email-verify, but its causing some issues.

@sohilpandya
Copy link
Contributor

@hhsadiq thanks for taking a look, we use validator module for checking invalid emails :) https://www.npmjs.com/package/validator

@vergun
Copy link

vergun commented Jan 25, 2017

@hhsadiq

@iteles
Copy link
Collaborator

iteles commented Feb 25, 2017

Closing this technical issue, resolved as per the above 👍

@iteles iteles closed this as completed Feb 25, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants