Easily integrate Google Authentication into your Django projects
Welcome to Django Google SSO
This library aims to simplify the process of authenticating users with Google in Django Admin pages, inspired by libraries like django_microsoft_auth and django-admin-sso
Documentation
- Docs: https://megalus.github.io/django-google-sso/
Install
$ pip install django-google-sso
Configure
- Add the following to your
settings.py
INSTALLED_APPS
:
# settings.py
INSTALLED_APPS = [
# other django apps
"django.contrib.messages", # Need for Auth messages
"django_google_sso", # Add django_google_sso
]
- In Google Console at Api -> Credentials, retrieve your
Project Credentials and add them in your
settings.py
:
# settings.py
GOOGLE_SSO_CLIENT_ID = "your client id here"
GOOGLE_SSO_PROJECT_ID = "your project id here"
GOOGLE_SSO_CLIENT_SECRET = "your client secret here"
-
Add the callback uri
http://localhost:8000/google_sso/callback/
in your Google Console, on the "Authorized Redirect URL". -
Let Django Google SSO auto create users for allowable domains:
# settings.py
GOOGLE_SSO_ALLOWABLE_DOMAINS = ["example.com"]
- In
urls.py
please add the Django-Google-SSO views:
# urls.py
from django.urls import include, path
urlpatterns = [
# other urlpatterns...
path(
"google_sso/", include("django_google_sso.urls", namespace="django_google_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
Google SSO button.
License
This project is licensed under the terms of the MIT license.