Handle CAS login for the french Gestionnaire d'Accès au Ressources (GAR).
Install with pip:
pip install django-gar
In order to make django-gar
works, you'll need to follow the steps below.
First you need to add the following configuration to your settings:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.sessions',
'django.contrib.messages',
'django_gar',
...
)
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django_gar.middleware.GARMiddleware', # mandatory
...
)
AUTHENTICATION_BACKENDS = (
'django.contrib.auth.backends.ModelBackend',
'django_gar.backends.GARBackend',
...
)
Next, you need to run the migrations in order to update your database schema.
python manage.py migrate
Here is the list of all the mandatory settings:
GAR_BASE_URL
GAR_BASE_SUBSCRIPTION_URL
GAR_SUBSCRIPTION_PREFIX
GAR_DISTRIBUTOR_ID
GAR_CERTIFICATE_PATH
GAR_KEY_PATH
GAR_RESOURCES_ID
GAR_ORGANIZATION_NAME
The optional settings with their default values:
GAR_ACTIVE_USER_REDIRECT (default: "/")
GAR_INACTIVE_USER_REDIRECT (default: "/")
GAR_QUERY_STRING_TRIGGER (default: "sso_id")
Testing is managed by pytest
. Required package for testing can be installed with:
pip install -r test_requirements.txt
To run testing locally:
pytest