Popular recipes by Berend http://code.activestate.com/recipes/users/4173891/2010-05-20T23:49:49-07:00ActiveState Code RecipesGAE User Session with HTTP Basic Authentication (Python)
2010-05-20T23:49:49-07:00Berendhttp://code.activestate.com/recipes/users/4173891/http://code.activestate.com/recipes/577235-gae-user-session-with-http-basic-authentication/
<p style="color: grey">
Python
recipe 577235
by <a href="/recipes/users/4173891/">Berend</a>
(<a href="/recipes/tags/appengine/">appengine</a>, <a href="/recipes/tags/appspot/">appspot</a>, <a href="/recipes/tags/authentication/">authentication</a>, <a href="/recipes/tags/clients/">clients</a>, <a href="/recipes/tags/gae/">gae</a>, <a href="/recipes/tags/google/">google</a>, <a href="/recipes/tags/python/">python</a>, <a href="/recipes/tags/sessions/">sessions</a>, <a href="/recipes/tags/web/">web</a>, <a href="/recipes/tags/wsgi/">wsgi</a>).
Revision 6.
</p>
<p>HTTP Basic is an unsecure but easy to implement authentication protocol. I think its good enough for a simple client in front of an SSL capable server. Google App-Engine supports SSL, and here is a recipe to set up the user-session using HTTP Basic. </p>
<p>gauth has the code from my not-really-a-recipe listing at:
<a href="http://code.activestate.com/recipes/577217-routines-for-programmatically-authenticating-with-" rel="nofollow">http://code.activestate.com/recipes/577217-routines-for-programmatically-authenticating-with-</a></p>
Routines for programmatically authenticating with the Google Accounts system at Google App-Engine. (Python)
2010-05-20T20:39:50-07:00Berendhttp://code.activestate.com/recipes/users/4173891/http://code.activestate.com/recipes/577217-routines-for-programmatically-authenticating-with-/
<p style="color: grey">
Python
recipe 577217
by <a href="/recipes/users/4173891/">Berend</a>
(<a href="/recipes/tags/auth/">auth</a>, <a href="/recipes/tags/authentication/">authentication</a>, <a href="/recipes/tags/gae/">gae</a>, <a href="/recipes/tags/google/">google</a>, <a href="/recipes/tags/http/">http</a>, <a href="/recipes/tags/sessions/">sessions</a>).
Revision 2.
</p>
<p>This takes two calls, one to the ClientLogin service of Google Accounts,
and then a second to the login frontend of App Engine.</p>
<p>User credentials are provided to the first, which responds with a token.
Passing that token to the _ah/login GAE endpoint then gives the cookie that can
be used to make further authenticated requests.</p>