# Python Social Auth > Python Social Auth provides social authentication and authorization for Python applications. This documentation covers installation, framework integration, authentication providers, configuration, pipelines, and extension APIs. Python Social Auth team ## Pages - [Welcome to Python Social Auth’s documentation!](index.html.md): Python Social Auth aims to be an easy-to-setup social authentication and - [Introduction](intro.html.md): Python Social Auth aims to be an easy to setup social authentication and - [Maintainers](maintainers.html.md): This project is maintained by: - [Installation](installing.html.md): python-social-auth is a very modular library looking to provide the - [Security considerations](security.html.md): Social authentication associations are authorization bindings. Their `uid` - [Configuration](configuration/index.html.md): All the apps share the settings names, some settings for Django framework are - [Configuration](configuration/settings.html.md): Once the application is installed (check Installation) define the following - [Django Framework](configuration/django.html.md): Django framework has a little more support since this application was derived - [Flask Framework](configuration/flask.html.md): Flask reusable applications are tricky (or I’m not capable enough). Here are - [Pyramid Framework](configuration/pyramid.html.md): Pyramid reusable applications are tricky (or I’m not capable enough). Here are - [CherryPy Framework](configuration/cherrypy.html.md): CherryPy framework is supported, it works but I’m sure there’s room for - [Webpy Framework](configuration/webpy.html.md): Webpy framework is easy to setup, once that python-social-auth is installed - [Porting from django-social-auth](configuration/porting_from_dsa.html.md): Being a derivative work from django-social-auth, porting from it to - [Pipeline](pipeline.html.md): python-social-auth uses an extendible pipeline mechanism where developers can - [External groups](groups.html.md): External memberships can restrict authentication and synchronize local groups. - [Strategies](strategies.html.md): Different strategies are defined to encapsulate the different frameworks - [Storage](storage.html.md): Different frameworks support different ORMs, Storage solves the different - [Exceptions](exceptions.html.md): Social Auth exposes structured exceptions so applications can choose recovery - [Backends](backends/index.html.md): Here’s a list and detailed instructions on how to set up the support for each - [Adding a new backend](backends/implementation.html.md): Adding new backends is quite easy. Usually just all that’s required is to add - [Email Auth](backends/email.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Username Auth](backends/username.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [OAuth](backends/oauth.html.md): OAuth communication demands a set of keys exchange to validate the client - [OpenID](backends/openid.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [SAML](backends/saml.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Amazon](backends/amazon.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Angel List](backends/angel.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [AppleID](backends/apple.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [ArcGIS](backends/arcgis.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Auth0](backends/auth0.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Auth0 OpenID Connect](backends/auth0_openidconnect.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Microsoft Entra ID and Azure AD B2C](backends/azuread.html.md): Microsoft Entra ID was formerly Azure Active Directory. Login buttons use - [Battle.net](backends/battlenet.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Behance](backends/behance.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Belgium EID](backends/belgium_eid.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Bitbucket](backends/bitbucket.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Bitbucket Data Center OAuth2](backends/bitbucket_datacenter_oauth2.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Box.net](backends/box.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Bungie](backends/bungie.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [CAS (OpenID Connect via Apereo CAS)](backends/cas.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [CESiD AAI - Czech Educational and Scientific Identification AAI](backends/cesid.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Coinbase](backends/coinbase.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Cognito](backends/cognito.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Coursera](backends/coursera.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [DailyMotion](backends/dailymotion.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [DigitalOcean](backends/digitalocean.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Discogs](backends/discogs.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Discord](backends/discord.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Discourse](backends/discourse.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Disqus](backends/disqus.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Docker](backends/docker.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Douban](backends/douban.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Dribbble](backends/dribbble.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Drip](backends/drip.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Dropbox](backends/dropbox.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Etsy OAuth2](backends/etsy.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Eventbrite OAuth](backends/eventbrite.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [EVE Online Single Sign-On (SSO)](backends/eveonline.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Evernote OAuth](backends/evernote.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [Facebook](backends/facebook.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [Facebook Limited Login](backends/facebook_limited_login.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Fedora](backends/fedora.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [Fitbit](backends/fitbit.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [Flat](backends/flat.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Flickr](backends/flickr.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Foursquare](backends/foursquare.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [GitHub](backends/github.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [Backend classes](backends/github_enterprise.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [GitLab](backends/gitlab.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Gitea](backends/gitea.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Google](backends/google.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [Grafana](backends/grafana.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Helmholtz AAI (OpenID Connect)](backends/helmholtz.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Instagram](backends/instagram.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Just Giving](backends/justgiving.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Kakao](backends/kakao.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Keycloak - Open Source Red Hat SSO](backends/keycloak.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Kick](backends/kick.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Last.fm](backends/lastfm.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Launchpad](backends/launchpad.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Lifescience AAI](backends/lifescience.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Lifescience AAI - (Temporary instance for EOSC node)](backends/lifescience_eosc.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Line.me](backends/line.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [LinkedIn](backends/linkedin.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [LiveJournal](backends/livejournal.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [MSN Live Connect](backends/live.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [LoginRadius](backends/loginradius.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Lyft](backends/lyft.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [MailChimp](backends/mailchimp.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Mail.ru OAuth](backends/mailru.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [MapMyFitness](backends/mapmyfitness.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [MediaWiki OAuth1 backend](backends/mediawiki.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Meetup](backends/meetup.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Mendeley](backends/mendeley.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Microsoft Graph](backends/microsoftgraph.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [MineID](backends/mineid.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Mixcloud OAuth2](backends/mixcloud.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [NationBuilder](backends/nationbuilder.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Naver](backends/naver.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [NFDI (OpenID Connect)](backends/nfdi.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [NGP VAN ActionID](backends/ngpvan_actionid.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Odnoklassniki.ru](backends/odnoklassnikiru.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [Okta](backends/okta.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [OpenStreetMap OAuth 2](backends/openstreetmap_oauth2.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [OIDC (OpenID Connect)](backends/oidc.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Orbi](backends/orbi.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [ORCID](backends/orcid.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [Osso - Open Source SAML SSO](backends/osso.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Patreon](backends/patreon.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Pinterest](backends/pinterest.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [PixelPin](backends/pixelpin.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Podio](backends/podio.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Qiita](backends/qiita.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [QQ](backends/qq.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Quizlet](backends/quizlet.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Reddit](backends/reddit.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Salesforce](backends/salesforce.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [Seznam](backends/seznam.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Shopify](backends/shopify.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [SimpleLogin](backends/simplelogin.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Sketchfab](backends/sketchfab.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Slack](backends/slack.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [SoundCloud](backends/soundcloud.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Spotify](backends/spotify.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [SUSE](backends/suse.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Stackoverflow](backends/stackoverflow.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Steam OpenID](backends/steam.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [StockTwits](backends/stocktwits.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Strava](backends/strava.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Stripe](backends/stripe.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Taobao OAuth](backends/taobao.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Telegram](backends/telegram.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Trello](backends/trello.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [TripIt](backends/tripit.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Tumblr](backends/tumblr.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Twilio Connect](backends/twilio.html.md): The Twilio backend links a Twilio Connect authorization to an existing local - [Twitch](backends/twitch.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [X (formerly Twitter)](backends/twitter.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [X OAuth 2](backends/twitter_oauth2.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Udata](backends/udata.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Uber](backends/uber.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Untappd](backends/untappd.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Upwork](backends/upwork.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Hashicorp Vault](backends/vault.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Lightspeed Retail (X-Series)](backends/vend.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Vimeo](backends/vimeo.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [VK.com (former Vkontakte)](backends/vk.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [Weibo OAuth](backends/weibo.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [XING](backends/xing.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Yahoo](backends/yahoo.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [Microsoft Viva Engage](backends/yammer.html.md): For Django, choose from these class paths for `AUTHENTICATION_BACKENDS`. - [Zotero](backends/zotero.html.md): For Django, add this class path to `AUTHENTICATION_BACKENDS`. For other - [API Reference](api/index.html.md): This reference covers the main extension points provided by `social-auth-core`. - [Beginner’s Guide](developer_intro.html.md): This is an attempt to bring together a number of concepts in python-social-auth - [Disconnect and Logging Out](logging_out.html.md): It’s a common misconception that the `disconnect` action is the same as - [Testing python-social-auth](tests.html.md): Testing the application is fairly simple, just met the dependencies and run the - [Use Cases](use_cases.html.md): Some miscellaneous options and use cases for python-social-auth. - [Thanks](thanks.html.md): python-social-auth is the result of almost 3 years of development done on - [Copyrights and Licence](copyright.html.md): `python-social-auth` is protected by BSD licence. Check the LICENCE for ## Optional - [llms-full.txt](llms-full.txt): Complete documentation in a single file.