Easily add Microsoft Authentication to your Django Projects
Project description
Easily integrate Microsoft Authentication into your Django projects
Welcome to Django Microsoft SSO
This library aims to simplify the process of authenticating users with Microsoft 365 in Django Admin pages, inspired by libraries like django_microsoft_auth and django-admin-sso
Documentation
Install
$ pip install django-microsoft-sso
Compatibility
- Python 3.11, 3.12, 3.13
- Django 4.2, 5.0, 5.1, 5.2
Older python/django versions are not supported.
Configure
- Add the following to your
settings.pyINSTALLED_APPS:
# settings.py
INSTALLED_APPS = [
# other django apps
"django.contrib.messages", # Need for Auth messages
"django_microsoft_sso", # Add django_microsoft_sso
]
- In Microsoft Entra Administration Center create a multi-tenant app registration and at Application Register, retrieve your
Application ID. Navigate to Certificate & secrets link, and get the Client Secret Value. Add both in your
settings.py:
# settings.py
MICROSOFT_SSO_APPLICATION_ID = "your Application ID here"
MICROSOFT_SSO_CLIENT_SECRET = "your Client Secret Value here"
MICROSOFT_SSO_SCOPES = ["User.Read.All"]
-
Add the callback uri
http://localhost:8000/microsoft_sso/callback/in your Microsoft Console, on the "Authorized Redirect URL". -
Let Django Microsoft SSO auto create users for allowable domains:
# settings.py
MICROSOFT_SSO_ALLOWABLE_DOMAINS = ["contoso.com"]
- In
urls.pyplease add the Django-Microsoft-SSO views:
# urls.py
from django.urls import include, path
urlpatterns = [
# other urlpatterns...
path(
"microsoft_sso/", include("django_microsoft_sso.urls", namespace="django_microsoft_sso")
),
]
- And run migrations:
$ python manage.py migrate
That's it. Start django on port 8000 and open your browser in http://localhost:8000/admin/login and you should see the
Microsoft SSO button.
Example project
A minimal Django project using this library is included in this repository under example_microsoft_app/.
- Read the step-by-step instructions in example_microsoft_app/README.md
- Use it as a reference to configure your own project settings and URLs
License
This project is licensed under the terms of the MIT license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file django_microsoft_sso-6.0.2.tar.gz.
File metadata
- Download URL: django_microsoft_sso-6.0.2.tar.gz
- Upload date:
- Size: 24.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.0 CPython/3.12.1 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ab831fabf43478a234468b4ab2aa855175c398dc72807f8c5c79702d63560ef7
|
|
| MD5 |
f7ac8054c2f637c40799881adc71efa9
|
|
| BLAKE2b-256 |
eb7f613b4e3824b279ee84d3ef65149e03169f3844bf034a368a8dd3c6786b6f
|
File details
Details for the file django_microsoft_sso-6.0.2-py3-none-any.whl.
File metadata
- Download URL: django_microsoft_sso-6.0.2-py3-none-any.whl
- Upload date:
- Size: 34.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.2.0 CPython/3.12.1 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1fbfad45eaa5dd58683a1a86158476df0db49db5e93c7d295c7805c783a3c6f4
|
|
| MD5 |
1b4bffebc10db2f9eb91bc2cc51bf296
|
|
| BLAKE2b-256 |
cc20b0bbd46887981ef200682ba9caa3cd8b253dc33039777327685474c5059c
|