Django Social Auth is an easy to setup social authentication/authorization mechanism for Django projects.
Crafted using base code from django-twitter-oauth and django-openid-auth, implements a common interface to define new authentication providers from third parties.
You can check this app documentation on Read the Docs too.
Table of Contents
There's a demo at http://social.matiasaguirre.net/. Note: It lacks some backends support at the moment.
This application provides user registration and login using social sites credentials, some features are:
Registration and Login using social sites using the following providers at the moment:
Some contributions added support for:
- LiveJournal OpenID
- Orkut OAuth
- Linkedin OAuth
- Foursquare OAuth2
- GitHub OAuth
- Dropbox OAuth
- Flickr OAuth
- Vkontakte OAuth
- MSN Live Connect OAuth2
- Skyrock OAuth
- Yahoo OAuth
- Evernote OAuth
- Mail.ru OAuth
- Odnoklassniki OAuth
- Mixcloud OAuth2
- BitBucket OAuth
- Douban OAuth
- Fitbit OAuth
- Instagram OAuth2
- Twilio
- Weibo OAuth2
- Yandex OpenId
Basic user data population and signaling, to allows custom fields values from providers response
Multiple social accounts association to single users
Custom User model override if needed (auth.User by default)
Extensible pipeline to handle authentication/association mechanism
Extensive documentaion at Read the Docs.
Dependencies that must be meet to use the application:
- OpenId support depends on python-openid
- OAuth support depends on python-oauth2
- Several backends demands application registration on their corresponding sites.
From pypi:
$ pip install django-social-auth
or:
$ easy_install django-social-auth
or clone from github:
$ git clone git://github.com/omab/django-social-auth.git
and add social_auth to PYTHONPATH:
$ export PYTHONPATH=$PYTHONPATH:$(pwd)/django-social-auth/
or:
$ cd django-social-auth $ sudo python setup.py install
django-social-auth
is protected by BSD licence.
Some bits were derived from others work and copyrighted by:
django-twitter-oauth:
Original Copyright goes to Henrik Lied (henriklied) Code borrowed from https://github.com/henriklied/django-twitter-oauth
django-openid-auth:
django-openid-auth - OpenID integration for django.contrib.auth Copyright (C) 2007 Simon Willison Copyright (C) 2008-2010 Canonical Ltd.