How to make Facebook Login possible in Django app ?

rv_k picture rv_k · Apr 3, 2011 · Viewed 29.7k times · Source

I have created a Django application. The app has a login functionality.

Can somebody help to find a way to make it possible to login using Facebook credential or point me some tutorials to implement it ?

Answer

Alireza Savand picture Alireza Savand · Apr 3, 2011

Summary;


django-all-access


django-all-access is a reusable application for user registration and authentication from OAuth 1.0 and OAuth 2.0 providers such as Twitter and Facebook.

The goal of this project is to make it easy to create your own workflows for authenticating with these remote APIs. django-all-access will provide the simple views with sane defaults along with hooks to override the default behavior.

There is a simple demo application running on at http://allaccess-mlavin.dotcloud.com/ The full source of this application is include in the repository.

django-allauth


Integrated set of Django applications addressing authentication, registration, account management as well as 3rd party (social) account authentication.

Supported Flows

  • Signup of both local and social accounts
  • Connecting more than one social account to a local account
  • Disconnecting a social account -- requires setting a password if only the local account remains
  • Optional instant-signup for social accounts -- no questions asked
  • E-mail address management (multiple e-mail addresses, setting a primary)
  • Password forgotten flow
  • E-mail address verification flow

Supported Providers

  • Dropbox (OAuth)
  • Facebook (both OAuth2 and JS SDK)
  • Github
  • Google (OAuth2)
  • LinkedIn
  • OpenId
  • Persona
  • SoundCloud (OAuth2)
  • Stack Exchange (OAuth2)
  • Twitch (OAuth2)
  • Twitter
  • Weibo (OAuth2)

Django Social Auth


Django Social Auth is an easy way to setup social authentication/authorization mechanism for Django projects.

Crafted using base code from django-twitter-oauth and django-openid-auth, it implements a common interface to define new authentication providers from third parties.

Supported Providers

  • Google OpenID
  • Google OAuth
  • Google OAuth2
  • Yahoo OpenID
  • OpenId like myOpenID
  • Twitter OAuth
  • Facebook OAuth

Django-Socialauth


What it does

  1. Allow logging in via various providers.
  2. Import contacts from various third party sites, to find out which of your friends already use our service.

Logging In

This is a application to enable authentication via various third party sites. In particular it allows logging in via

  • Twitter
  • Gmail
  • Facebook
  • Yahoo(Essentially openid)
  • OpenId

oauth2app


The oauth2app module helps Django site operators provide an OAuth 2.0 interface. The module is registered as an application.

django-oauth


This is a forked version of David Larlet's django-oauth.

One very important difference is that this version requires that you be running a real cache behind Django's caching framework.

django-oauth-access


Supported Providers

  • Twitter
  • LinkedIn
  • Yahoo
  • Facebook (using OAuth 2.0 — it is functional, but needs more work)
  • Likely any OAuth 1.0a compliant site

django-oauth-consumer


A django application providing infrastructure for consuming OAuth services. It is not for providing OAuth services.


Also useful: