Which CAS implementation to use in django? Which CAS implementation to use in django? django django

Which CAS implementation to use in django?


I've been using an older version of django-cas for a long time now, and it works as expected. I've never used django-cas-consumer, but I've looked into it.

Comparing the code between the two projects, it looks like django-cas-consumer is a stripped-down version of django-cas.

The two most glaring differences are:

  • django-cas-consumer only supports CAS version 1
  • django-cas has middleware that captures any requests to the django.contrib.auth.views.login and logout and redirects them to the CAS login and logout views

Also, if you are using Apache, you can consider using mod_auth_cas, which is an official CAS client. Then you can simply use django's remote user authentication.


If someone still interesting CAS on django. Please try the most latest and active maintained version of django cas: django-cas-ng:

pip install django-cas-ng

django-cas-ng is CAS (Central Authentication Service) client implementation. This project inherit from django-cas. django-cas is not updated since 2013-4-1. This project will include new bugfix and new feature development.It have more features:

  • Supports CAS_ versions 1.0, 2.0 and 3.0.
  • Support Single Sign Out
  • Supports Token auth schemes
  • Can fetch Proxy Granting Ticket
  • Supports Django 2.0, 2.1, 2.2 and 3.0
  • Supports using a User custom model
  • Supports Python 3.5+

see document at https://djangocas.dev/docs/