Skip to main content

A django app that replaces the django admin authentication mechanism by deferring to an oauth2 provider

Project description

# django-admin-oauth2

A django app that replaces the django admin authentication mechanism by
deferring to an oauth2 provider.

[![Build Status](https://travis-ci.org/RealGeeks/django-admin-oauth2.png?branch=master)](https://travis-ci.org/RealGeeks/django-admin-oauth2)


## Installation

Step 1: Include the django-admin-oauth2 urlconf in your project's urls.py:

```python
url(r'/admin/oauth/', include('oauthadmin.urls'))
```

Step 2: Include oauthadmin in your INSTALLED_APPS:

```python
INSTALLED_APPS = (
'oauthadmin'
)
````


Step 3: Install the middleware in your project's settings.py:

```python
MIDDLEWARE_CLASSES = (
'oauthadmin.middleware.OauthAdminSessionMiddleware'
)
```

*make sure that this comes AFTER 'django.contrib.sessions.middleware.SessionMiddleware'*

Step 4: If you are on Django 1.5 or above, you'll need to set your session serializer
to "django.contrib.sessions.serializers.PickleSerializer" since we are storing the
pickled user object in the session.

```python
SESSION_SERIALIZER = "django.contrib.sessions.serializers.PickleSerializer"

```

Step 5: Set up all the correct options (see below for available options)

## Settings

* OAUTHADMIN_GET_USER: This is function that is given the oauth token and returns
a django.auth.models.User model corresponding to the currently logged-in user.
You can set permissions on this user object and stuff.
* OAUTHADMIN_CLIENT_ID: Your oAuth client ID
* OAUTHADMIN_CLIENT_SECRET: oAuth client secret
* OAUTHADMIN_BASE_URL: The landing point for all oAuth related queries.
* OATHADMIN_AUTH_URL: oAuth provider URL
* OAUTHADMIN_TOKEN_URL: oAuth bearer token provider URL

## Testing

If you want to test this app, install the requirements needed for testing:

```
pip install -r test-requirements.txt
```

and then run the tests with the provided script:

```
./runtests.sh
```

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-admin-oauth2-0.1.tar.gz (4.4 kB view details)

Uploaded Source

File details

Details for the file django-admin-oauth2-0.1.tar.gz.

File metadata

File hashes

Hashes for django-admin-oauth2-0.1.tar.gz
Algorithm Hash digest
SHA256 22a60d8ab3223f1c39ac02086b28ec2bc20d4da3ca70f3168bc40d4a1a89a4d0
MD5 3e04e1eda0d803f4059e3a538da3f0ed
BLAKE2b-256 ae053cd661674699863eab36259989f7e566035cbf61612610ec489869d1320d

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page