Does anyone know or know of somewhere I can learn how to create a custom authentication process using Python and Google App Engine?
I don\'t want to use Google accou
Take a look at this project I am working on with coto: https://github.com/coto/gae-boilerplate It includes a fully featured custom authentication system and much more.
Another option is the Beaker module. The AES encryption for client side sessions is nice.
Here is an excellent and relatively recent (Jan 2013) blog post titled User authentication with webapp2 on Google App Engine, and related GitHub repo: abahgat/webapp2-user-accounts.
In addition to all the other great answers, I would also add that Facebook, Twitter, and github all offer OAuth mechanisms that you can utilize as turn-key authentication support for your app.
The OpenID consumer (part of the excellent "app engine samples" open source project) currently works (despite the warnings in its README, which is old) and would let you use OpenID for your users' logins.
django's auth is also usable, via e.g. this project (at least the users
part, not necessarily groups
and permissions
though they might get them working any time).
This is a pretty out-of-the-box solution, and works pretty well: http://code.scotchmedia.com/engineauth/docs/index.html
It has built-in support for Facebook, Google+, Twitter, LinkedIn, GitHub and OpenId (via Google App Engine).
you just have to redirect the user to /auth/facebook
or /auth/google
and so on (this url is customizable).
It also implements two classes: User
and UserProfile
, every User
is a unique account in your app and may relate to one or more UserProfiles
-- which one is a login strategy that the unique User
has to login into your app (if it's unclear, it's because my English is very bad, the docs explain better).
P.S.: The documentation is not very complete, but the code is pretty simple, short and self-explanatory. Also, there is a discussion here in which the author provides various answers to questions of confused and beggining users.