¿Qué implementación de CAS usar en django?


¿Qué implementación de CAS debo usar para habilitar el inicio de sesión único de CAS en mi aplicación django (usando un servidor CAS especificado, no estoy interesado en crear un proveedor de CAS) ? Lo que puedo encontrar son los siguientes:

He usado django-cas antes, y parece funcionar, pero parece un poco abandonado? django-cas-consumidor, al menos, parece tener más reciente actividad.

¿Cuáles son los pros y los contras reales de cada implementación? ¿Hay otras implementaciones que deba usar?

Author: Rasmus Kaj, 2009-11-12

5 answers

He estado usando una versión anterior de django-cas durante mucho tiempo, y funciona como se esperaba. Nunca he usado django-cas-consumer, pero lo he investigado.

Comparando el código entre los dos proyectos, parece que django-cas-consumer es una versión simplificada de django-cas.

Las dos diferencias más evidentes son:

  • django-cas-consumer solo admite CAS versión 1
  • django-cas tiene middleware que captura cualquier solicitud a la django.contrib.auth.vista.inicie sesión y cierre de sesión y los redirige a las vistas de inicio de sesión y cierre de sesión de CAS

También, si está usando Apache, puede considerar usar mod_auth_cas, que es un cliente CAS oficial. Entonces simplemente puede usar la autenticación remota de usuario de django.

 9
Author: Firass,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-06-28 19:54:23

A Django-cas le faltaban las características que necesitábamos, así que rodamos las nuestras: http://github.com/KTHse/django-cas2

 9
Author: Fredrik Jönsson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-11-26 14:00:54

Si alguien todavía interesante CAS en django. Por favor, pruebe la versión más reciente y activa de django cas: django-cas-ng :

pip install django-cas-ng

Django-cas-ng es la implementación del cliente CAS (Central Authentication Service). Este proyecto hereda de django-cas. django-cas no se actualiza desde 2013-4-1. Este proyecto incluirá una nueva corrección de errores y el desarrollo de nuevas características. Tiene más características:

  • Soporte CAS versión 1.0, 2.0 y 3.0.
  • Soporta Django 1.5, 1.6, 1.7 con el modelo personalizado del usuario
  • Soporta Python 2.7, 3.x
 5
Author: Ming C,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-11-12 21:40:05

La baja actividad no significa necesariamente que el producto no sea lo suficientemente bueno. Podría darse el caso de que el producto haya alcanzado un estado estable. Probablemente, deberías confirmarlo con el desarrollador. Personalmente, apostaría por un sistema estable sobre uno que muestre mucha actividad (especialmente si la actividad es corrección de errores )

 4
Author: Sanrag Sood,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-01-04 09:48:40

El repositorio kstateome/django-cas está más activo recientemente (2015) con los siguientes detalles.

Requisitos

  • Versión actual: 1.1.1
  • Django 1.5 o superior,
  • Python 2.6, 2.7, 3.4

Características

Esta es la bifurcación de K-State del original e incluye varias características adicionales, así como características fusionadas de

 3
Author: Édouard Lopez,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-05-19 10:15:51