Skip to main content

python-appengine-auth is an extension to python-social-auth with a backend for the Google App Engine OAuth endpoint

Project description

Remote Google App Engine OAuth backend for Django
=================================================

[Python-AppEngine-Auth](https://github.com/mback2k/python-appengine-auth) is an
extension to [Python-Social-Auth](https://github.com/omab/python-social-auth)
which adds a OAuth backend for Google App Engine based Google Accounts.

This application makes use of the
[Google App Engine OAuth Profile endpoint application](https://github.com/mback2k/appengine-oauth-profile)
which is by default hosted at https://oauth-profile.appspot.com/

Dependencies
------------
- python-social-auth [https://github.com/omab/python-social-auth]
- oauthlib [https://github.com/idan/oauthlib/]

Installation
------------
Install the latest version from pypi.python.org:

pip install python-appengine-auth

Install the development version by cloning the source from github.com:

pip install git+https://github.com/mback2k/python-appengine-auth.git

Configuration
-------------
Add the package to your `INSTALLED_APPS`:

INSTALLED_APPS += (
'social.apps.django_app.default',
'social_appengine_auth',
)

Add the desired backends to your `AUTHENTICATION BACKENDS`:

AUTHENTICATION_BACKENDS += (
'social_appengine_auth.backends.GoogleAppEngineOAuth',
'social_appengine_auth.backends.GoogleAppEngineOAuth2',
)

Add the pipeline to your `SOCIAL_AUTH_PIPELINE`:

SOCIAL_AUTH_PIPELINE = (
'social.pipeline.social_auth.social_details',
'social.pipeline.social_auth.social_uid',
'social.pipeline.social_auth.auth_allowed',
'social.pipeline.social_auth.social_user',
'social.pipeline.user.get_username',
# Add the following custom pipeline:
'social_appengine_auth.pipelines.associate_by_user_id',
# 'social.pipeline.mail.mail_validation',
# 'social.pipeline.social_auth.associate_by_email',
'social.pipeline.user.create_user',
'social.pipeline.social_auth.associate_user',
'social.pipeline.social_auth.load_extra_data',
'social.pipeline.user.user_details',
)

Additional Settings
-------------------
Add some or all of the following settings to your `settings.py`:

# Hostname of the OAuth and Web Service endpoint
SOCIAL_AUTH_GOOGLE_APPENGINE_OAUTH_SERVER = 'oauth-profile.appspot.com'

# Use static and unique Google App Engine user's user_id as identifier
# Defaults to False which makes it use the user's email address
GOOGLE_APPENGINE_OAUTH_USE_UNIQUE_USER_ID = True

# Setup Google OAuth 1.0 consumer key and secret
SOCIAL_AUTH_GOOGLE_APPENGINE_OAUTH_KEY = ''
SOCIAL_AUTH_GOOGLE_APPENGINE_OAUTH_KEY = ''

# or Setup Google OAuth 2.0 client id and secret
SOCIAL_AUTH_GOOGLE_APPENGINE_OAUTH2_KEY = ''
SOCIAL_AUTH_GOOGLE_APPENGINE_OAUTH2_SECRET = ''

Please refer to the [Python-Social-Auth](http://psa.matiasaguirre.net/)
documentation for additional information.

License
-------
* Released under MIT License
* Copyright (c) 2012-2015 Marc Hoersken <info@marc-hoersken.de>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python-appengine-auth-0.1.dev0.tar.gz (3.5 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page