Comment rendre la connexion Facebook possible dans L'application Django?

j'ai créé une application Django. L'application a une fonctionnalité de connexion.

est-ce que quelqu'un peut m'aider à trouver un moyen de rendre possible la connexion en utilisant Facebook credential ou me pointer quelques tutoriels pour la mettre en œuvre ?

42
demandé sur Alireza Savand 2011-04-03 18:48:02

5 réponses

résumé;


django-all-access


django-all-access est une application réutilisable pour l'enregistrement et l'authentification des utilisateurs à partir de fournisseurs OAuth 1.0 et OAuth 2.0 tels que Twitter et Facebook.

le but de ce projet est de faciliter la création de vos propres workflows pour l'authentification avec ces API distantes. django-all-access fournira les vues simples avec les valeurs par défaut sane ainsi que des crochets pour outrepasser le comportement par défaut.

Il ya un simple démo de l'application en cours d'exécution sur http://allaccess-mlavin.dotcloud.com/ La source de cette application est d'inclure dans le référentiel.

django-allauth


ensemble intégré d'applications Django traitant l'authentification, l'enregistrement, la gestion de compte ainsi que l'authentification de compte de tiers (social).

pris en charge Flux 1519830920"
  • inscription des comptes locaux et sociaux
  • Connecter plus d'un compte social à un compte local
  • déconnexion d'un compte social -- nécessite la définition d'un mot de passe si seul le compte local reste
  • facultatif instant-inscription pour les comptes sociaux -- Pas de questions posées
  • E-mail de la gestion (plusieurs adresses e-mail, réglage primaire)
  • Mot de passe oublié flux
  • E-mail de vérification des flux

Prise En Charge Des Fournisseurs De

  • Dropbox (OAuth)
  • Facebook (à la fois OAuth2 et JS SDK)
  • Github
  • Google (OAuth2)
  • LinkedIn
  • OpenId
  • Persona
  • SoundCloud (OAuth2)
  • Stack Exchange (OAuth2)
  • Twitch (OAuth2)
  • Twitter
  • Weibo (OAuth2)

Django Social Auth


Django social Auth est un moyen facile de configurer un mécanisme d'Authentification/autorisation sociale pour les projets Django.

Fabriqué en utilisant le code de base de django-twitter-oauth et django-openid-auth , il implémente une interface commune pour définir les nouveaux fournisseurs d'authentification de tiers.

Prise En Charge Des Fournisseurs De

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

Django-Socialauth


Ce qu'il fait

  1. permet l'ouverture de session via divers fournisseurs.
  2. importer des contacts à partir de divers sites tiers, pour savoir lequel de vos amis utilisent déjà nos services.

Connexion

C'est un application pour activer l'authentification via divers sites tiers. En particulier, il permet la connexion via

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

oauth2app


le module oauth2app aide les opérateurs du site de Django à fournir une interface OAuth 2.0. Le module est enregistré en tant qu'application.

django-oauth


il s'agit d'une version bifurquée de django-oauth de David Larlet.

une différence très importante est que cette version nécessite que vous exécutiez une vraie cache derrière django's caching framework .

django-oauth-accès


Fournisseurs Pris En Charge

  • Twitter
  • LinkedIn
  • Yahoo
  • Facebook (à l'aide d'OAuth 2.0, qui est fonctionnel, mais a besoin de plus de travail)
  • probablement un autre site 1.0 conforme

django-oauth-consommateur


Une application django fournit une infrastructure pour la consommation d'OAuth services. Il ne s'agit pas de fournir des services de santé.


également utile:

78
répondu Alireza Savand 2014-02-24 13:41:44

je recommande fortement d'utiliser django-social-auth . Le README est très complet, et il comprend également des informations pour s'authentifier contre d'autres sources non autorisées telles que twitter, et contre les sources OpenID comme Google et Yahoo. Bien sûr, si vous vouliez juste une authentification Facebook, vous pouvez l'utiliser pour cela.

il y a aussi un exemple d'application, qui vous donne un exemple de code à utiliser.

18
répondu Brad Montgomery 2011-04-03 18:42:50

pour L'APPLICATION MOBILE, si vous développez une application pour iOS/android avec django dans le backend, ce que vous pouvez faire est de vous connecter à facebook dans le frontend en utilisant l'api facebook ios/android. Mais ce n'est pas la connexion finale pour votre application. Sur facebook-connexion, facebook vous donne un jeton d'accès que vous pouvez ensuite envoyer à votre django backend avec votre facebook nom d'utilisateur/email. À l'arrière, django peut utiliser quelque chose comme facebook python sdk pour vérifier la paire de tokens username-access en communiquant avec facebook. Si vérifié, vous pouvez enfin vous connecter à l'utilisateur pour votre application.

utiliser le sdk python est facile, il suffit de lire le tutoriel et vous communiquerez avec facebook en quelques secondes.

9
répondu Samir Ahmed 2013-08-12 22:12:50

la nouvelle façon de faire qui est en utilisant python-social-auth , comme django-social-auth a été déprécié en faveur de python-social-auth et soutient maintenant d'autres cadres que Django tels que flacon, pyramide, Web.py et la tornade .

il prend également en charge d'autres fournisseurs d'auth majeurs tels que Microsoft, Google, Twitter, Amazon, GitHub et beaucoup plus .

Voici un rapide façon de le configurer sur Django: comment s'inscrire avec L'API Google+ en utilisant Django?

1
répondu StaticX 2017-05-23 11:33:16

je ne peux absolument recommander django-allauth . Il fonctionne, tout simplement!

0
répondu Joe Inner 2017-01-04 14:28:53