Simple app to enable Microsoft Account, Office 365 Enterprise, Azure AD, and Xbox Live authentication as a Django authentication backend.
Django Microsoft Authentication Backend
Simple app to enable Microsoft Account, Office 365 and Xbox Live authentcation as a Django authentcation backend.
- Free software: MIT license
- Documentation: https://django-microsoft-auth.readthedocs.io.
- Provides Django authentication backend to do Microsoft authentication (including Microsoft accounts, Office 365 accounts and Azure AD accounts) and Xbox Live authentication.
- Provides Microsoft OAuth client to interfacing with Microsoft accounts
django_microsoft_auth follows the same support cycle as Django, with one exception: no Python 2 support. If you absoutely need Python 2.7 support, everything should largely already work, but you may need to patch microsoft_auth.admin and/or other files to get it to work.
Supported python versions: 3.5+
Supported Django version: 1.11 LTS, 2.1+
Note: Even though Django 1.11 LTS supports Python 3.4, I do not and you should not either. Official support for 3.4 was dropped in March 2019.
- Fixes W002 being displayed if you set the SITE_ID setting
- Fixes migration except for non-SQLite DBs
- Adds Django cache support for OIDC config/JWKS
- Django settings trump Constance settings always now
- Fixes microsoft.conf.config not using Constance in some cases
- Namespaces messages passed back as part of login
- Adds new setting for callback hook right before auth_callback view renders to override context data
- Adds example non-admin login form example in test site
- Renames admin_login.js and admin_login.css to just login.js and login.css
- Adds profile back as a default scope since Microsoft is added if it is not
- Adds support for multiple SITE_IDs. If the setting is not provided, it will pull it from the request object
- Adds new setting for callback hook after microsoft_auth.backends.MicrosoftAuthenticationBackend authenticates user.
- Removes profile from required scopes
- Replaces deprecated Microsoft auth scopes with proper OpenID Connect ones
- WARNING: Breaking change. New scopes provide a new user id. See migration docs for details.
- Pulls authorization/token URLs directly from Microsoft
- Adds id token validation
- Admin pages for the auth type that is not enable is disabled by default now. They can be re-enabled with MICROSOFT_AUTH_REGISTER_INACTIVE_ADMIN = True
- Extra scopes can be provieded via the MICROSOFT_AUTH_EXTRA_SCOPES setting (space delimited). These scopes are added to the default required scopes (openid email for Microsoft Auth and XboxLive.signin XboxLive.offline_access for Xbox Live auth)
- Adds expiration to state values (hardcoded 5 minutes)
- Changes state validation to use cryptographic signing now. State validation should be signfincally more relaible now.
- Adds more logging around CSRF/State failures
- Adds support for other tenant IDs for Microsoft authentication (thanks aviv)
- Adds missing migration for changing microsoft_id from 32 to 36 length
- Adds various checks and logging to validate setup to help with debugging
- Adds support for http://localhost as a redirect URI base if DEBUG is enabled
- Removes o365 option. New authorization URL works well enough for both
- Xbox Live Auth still uses old Microsoft Auth URL
- ‘o365’ will still work as a MICROSOFT_AUTH_LOGIN_TYPE value, but you should change it to ‘ma’
- Adds extras:
- ql: DjangoQL package and support
- test: test dependencies (same as test_requires packages)
- dev: ql`+`test and extra dev only dependencies like twine and pip-tools
- Pip 10 support (thanks Shigumitsu!)
- Fixes max length of o365 IDs (thanks Shigumitsu!)
- Added patched username validator to allow spaces for usernames for Xbox Live Gamertags
- Added missing templates and static files to MANIFEST
- Updated Django category to include 2.0
- Updated for Django 2.0
- Changed Development Status category to Stable
- First release on PyPI.
Release history Release notifications
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size django_microsoft_auth-2.3.1.tar.gz (63.6 kB)||File type Source||Python version None||Upload date||Hashes View hashes|
Hashes for django_microsoft_auth-2.3.1.tar.gz