Skip to main content

(Friendly fork, all credit should go to Marc Egli / frog32.)

https://travis-ci.org/matthiask/django-admin-sso.png?branch=master

Django admin SSO lets users login to Django’s administration panel using an OAuth2 provider instead of a username/password combination.

Installation

django-admin-sso is most often used with Google OAuth2 and the instructions follow that assumption. At least in theory it is possible to use a different OAuth2 provider.

  1. Make sure you have a working Django project setup.

  2. Install django-admin-sso2 using pip:

    pip install django-admin-sso2
  3. Add admin_sso to INSTALLED_APPS in your settings.py file:

    INSTALLED_APPS = (
        ...
        'admin_sso',
        ...
    )
  4. Add the django-admin authentication backend:

    AUTHENTICATION_BACKENDS = (
        'admin_sso.auth.DjangoSSOAuthBackend',
        'django.contrib.auth.backends.ModelBackend',
    )
  5. Insert your OAuth2 client id and secret key into your settings file:

    DJANGO_ADMIN_SSO_OAUTH_CLIENT_ID = 'your client id here'
    DJANGO_ADMIN_SSO_OAUTH_CLIENT_SECRET = 'your client secret here'

Navigate to Google’s Developer Console, create a new project, and create a new client ID under the menu point “APIs & AUTH”, “Credentials”. The redirect URI should be of the form http://example.com/admin/admin_sso/assignment/end/

  1. Run ./manage.py migrate to create the needed database tables.

  2. Log into the admin and add an Assignment.

Assignments

Any Remote User -> Local User X

  • Select Username mode “any”.

  • Set Domain to your authenticating domain.

  • Select your local user from the User drop down.

Remote User -> Local User

  • Select Username mode “matches” or “don’t match”.

  • Set username to [not] match by.

  • Set Domain to your authenticating domain.

  • Select your local user from the User drop down.

Changelog

2.0

  • Removed support for OpenID

  • Python 3 compatible

1.0

Release files for django-admin-sso2 2.0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-admin-sso2 2.0.4
File Size Uploaded
django-admin-sso2-2.0.4.tar.gz 6.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for django-admin-sso2 2.0.4
File Interpreter ABI Platform
django_admin_sso2-2.0.4-py2-none-any.whl Python 2 none any Details

Total release size: 16.2 kB

Release files / django-admin-sso2-2.0.4.tar.gz

Download URL django-admin-sso2-2.0.4.tar.gz
Size 6.5 kB
Tags Source
SHA-256 checksum
How to use checksums
67ad3f25a370ac40e460e9f0c622bbd906110cabab0040961f6a95944458c646
BLAKE2b-256 checksum
How to use checksums
9ecebd69dc00ebd33fd9b1f6a3eb8ff7ee0c4c6ad49a82f597ab7f666e992f0e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / django_admin_sso2-2.0.4-py2-none-any.whl

Download URL django_admin_sso2-2.0.4-py2-none-any.whl
Size 9.7 kB
Tags Python 2
SHA-256 checksum
How to use checksums
039cb97d7c9eb7a285d5065a49234241c3c68b0cff0fe8885057024132968a99
BLAKE2b-256 checksum
How to use checksums
f079480e481edcca8145fe1c6b571ca5775d5e8f0e63cf90ab16bcb10440da43
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

2.0.4 This release

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

1 release file

2.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page