Skip to main content

Handle login and ticket validation for french GAR

Project description

django-gar

Python 3.11 Django 4.x Python CI codecov Code style: black
security: bandit
Handle CAS login for the french Gestionnaire d'Accès au Ressources (GAR).

Installation

Install with pip:

pip install django-gar

Setup

In order to make django-gar works, you'll need to follow the steps below.

Settings

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',
    ...
)

Migrations

Next, you need to run the migrations in order to update your database schema.

python manage.py migrate

Mandatory settings

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")

Tests

Testing is managed by pytest. Required package for testing can be installed with:

pip install -r test_requirements.txt

To run testing locally:

pytest

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_gar-2.16.1.tar.gz (28.7 kB view details)

Uploaded Source

Built Distribution

django_gar-2.16.1-py3-none-any.whl (29.4 kB view details)

Uploaded Python 3

File details

Details for the file django_gar-2.16.1.tar.gz.

File metadata

  • Download URL: django_gar-2.16.1.tar.gz
  • Upload date:
  • Size: 28.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.10

File hashes

Hashes for django_gar-2.16.1.tar.gz
Algorithm Hash digest
SHA256 bf217b2d510c62e4fbd0159b59864a83e20fda911a9b0d9b7ce09cf569818cdc
MD5 e071effc4d9535802292546ab466f72d
BLAKE2b-256 0d232fcb81c78e4414b5d702346bfb0def763caacc816dc43104525995c3f246

See more details on using hashes here.

File details

Details for the file django_gar-2.16.1-py3-none-any.whl.

File metadata

  • Download URL: django_gar-2.16.1-py3-none-any.whl
  • Upload date:
  • Size: 29.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.10

File hashes

Hashes for django_gar-2.16.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1f0a8cb098c3c16f396733d9e3c260e2f74ad173a694430199d448431202eedd
MD5 3b822dee494d0b96216b2e30be9dd5be
BLAKE2b-256 8ed77e8e541fc60d907869e9006dcddface1883c11d500c185cd12c5f8152d61

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page