Reputation: 293
I am planning on creating an application for the students of my school, and I want to restrict user registration to emails of the form [email protected]. I would prefer to not manually create the user table and do the password hashing and such. Are there any libraries you can recommend for this?
Thanks for the help.
Upvotes: 0
Views: 252
Reputation: 1262
Sometimes, if you just send the user to a login screen you will end in a redirect loop if the user is already logged with a Google Account. What i have found to be a good answer to this problem is to redirect the user to a log out page so he can later login with the domain you want.
I have used this for my code
user = users.get_current_user()
#Check if the user is in @mydomain.com
if user:
emailDomain = user.email().split("@")
if emailDomain[1] == "mydomain.com":
return True
else:
self.redirect(users.create_logout_url('/startPage'))
else:
self.redirect(users.create_login_url(self.request.uri))
This way, the application logs you out automatically and asks for your domain credentials
Upvotes: 2
Reputation: 3955
Since you said you don't know how the email are registered, that you don't want to manage a login/password database and you just need a regexp or somethings (I quote here!), I assume you could keep it very simple. Something like.
user = users.get_current_user()
if user:
emailDomain = user.email().split("@")
if emailDomain == "yourschool.edu":
doSomething()
That way, all the trouble of registering to your app is given to the users (who will need to get a Google Account).
Upvotes: 0