An OAuth2 server implementation for Django.
Python Shell
Latest commit 151c761 Aug 22, 2014 @usmanm usmanm Merge pull request #11 from peterldowns/docs-cleanup
Make improvements to example app and documentation.
Failed to load latest commit information.
djoauth2 Remove explicit primary keys from test objects. Apr 28, 2014
docs Fix broken links in documentation. Aug 22, 2014
.coveragerc Omit migrations from coverage tests. Oct 15, 2013
.gitignore Add virtualenv-related helpers for development. Oct 14, 2013
.travis.yml Test latest South version. Mar 10, 2014
LICENSE Replace temporary license with one that is correct. Sep 23, 2013
README.rst Improve and clarify the contributing docs. Apr 2, 2014
dev_requirements.txt Add migration refactoring script. Apr 4, 2014 Refactor migrations after generating to ensure custom user model comp… Apr 4, 2014 Improve test discoverability. Apr 28, 2014 Fix styling and expose refactor function. Apr 4, 2014
requirements.txt Update automatic testing. Oct 14, 2013
setup.cfg Add example application and update PYPI packaging. Sep 19, 2013 Improve test discoverability. Apr 28, 2014



What is DJOAuth2?

DJOAuth2 is an implementation of a sane subset of the OAuth 2 specification, which is described by the OAuth Website as

An open protocol to allow secure authorization in a simple and standard method from web, mobile and desktop applications.

The goal of this implementation is to provide a well-structured Django application that can be easily installed to add OAuth 2.0 provider capability to existing projects. The official specification is broad, and allows for many different ways for clients and servers to interact with each other. This implementation is a secure subset of these interactions in order to make it as easy as possible to reap the benefits of OAuth without having to struggle with the more difficult parts of the spec.

OAuth, and this implementation, are best suited to solving the following problems:

  • Allowing for fine-grained API control — you want your users to choose which applications have access to their data.
  • Acting as an authentication server, allowing other sites to "Log in with <your app>".


Interested in contributing? Great! Check out the contribution guide, which includes instructions for setting up dependencies, generating migrations, and running the test suite.