¿El Servicio Central de Autenticación (CAS) puede hacer la autorización?

7

Tengo algunas aplicaciones web que intento vincular a través de CAS, pero estoy un poco confundido acerca de la autorización, lo que leí que CAS no debe hacer. Sin embargo, veo algo así como grupos, pero no sé qué son.

De todos modos, mi escenario es bastante común, y es el siguiente:

Necesitamos restringir el acceso a cada una de nuestras aplicaciones que admitirán SSO. Dentro de cada una de nuestras aplicaciones, hay roles. Estas funciones se utilizan para evitar que ciertos usuarios accedan a varias partes del sitio. Además, a los usuarios administradores se les debe permitir asignar a los usuarios acceso a las aplicaciones de las que son administradores. Además, un administrador de un sistema no puede ser administrador de otro sistema. ¿Es posible satisfacer todos estos escenarios con CAS? ¿O debería estar viendo un tipo de SSO completamente diferente?

- para explicar -

CAS - enlace :

  

Proyecto de servicio de autenticación central, más conocido como CAS. CAS es un sistema de autenticación creado originalmente por la Universidad de Yale para proporcionar una forma confiable para que una aplicación autentique a un usuario. CAS se convirtió en un proyecto Jasig en diciembre de 2004.

    
pregunta Bradford 27.09.2011 - 19:55
fuente

4 respuestas

7

No, CAS es solo un Servicio de autenticación , pero seguramente puede imponer la Autorización utilizando el mecanismo , que es la base para realizar la autenticación de su CAS.

Diga, si está utilizando LDAP para autenticar las Cuentas para CAS. Entonces, para el requisito como el tuyo ...

Puede crear grupos de usuarios en LDAP y asignar las respectivas ID de usuario a sus grupos.

Ahora, en la aplicación web, mantiene el inicio de sesión a través de CAS que, en caso de éxito, se pone en contacto con LDAP (o con el Mecanismo de autenticación que tenga) y obtiene los Grupos de usuarios asignados al Usuario.

Ahora, sobre la base de los Grupos de Usuarios recuperados, puede permitir / rechazar el acceso a las características de la aplicación web.

    
respondido por el AbhishekKr 28.09.2011 - 16:02
fuente
4

En primer lugar: CAS - enlace :

  

Proyecto de servicio de autenticación central, más conocido como CAS. CAS es un sistema de autenticación creado originalmente por la Universidad de Yale para proporcionar una forma confiable para que una aplicación autentique a un usuario. CAS se convirtió en un proyecto Jasig en diciembre de 2004.

Segundo: no, no creo que pueda hacer la autorización. Lo usamos aquí y tenemos un sistema diferente para hacer la autorización después de que CAS haya autenticado a algún usuario.

    
respondido por el woliveirajr 27.09.2011 - 21:14
fuente
3

La respuesta corta es No, no es el trabajo de CAS hacer Autorización, se supone que solo debe ser Autenticación.

Dicho esto, hay muchas maneras de usar CAS en un escenario de Autenticación / Autorización. Estoy trabajando en una solución tan personalizada ahora mismo. Creo que hay maneras de hacer algo de seguridad de Spring Spring para lograrlo, pero la forma en que lo he implementado ahora es simplemente proteger mis aplicaciones mediante un filtro de roles personalizado, que verifica la presencia de los roles existentes que se pasan al aplicación utilizando el cliente CAS lib para java. Así que todo lo que debo hacer para proteger mis aplicaciones en Tomcat es incluir el contenedor del cliente CAS, mi filtro personalizado y especificar qué recursos proteger en mi web.xml.

No dude en preguntar si necesita más orientación.

    
respondido por el Bushibytes 28.09.2011 - 13:02
fuente
2

CAS simplemente realiza la autenticación. La autorización depende del proveedor de servicios. Con versiones anteriores de CAS, podría usar el punto final SAML validate para obtener los atributos de CAS. Con el nuevo servidor jasig-CAS 4.0, puede obtener atributos del protocolo CAS 3.0.

Esto todavía significa que la autorización depende del servicio, pero el servicio puede solicitar atributos de CAS, por lo que nunca necesita tocar su almacén de back-end LDAP, la base de datos, etc. Es posible que no pueda impedir el acceso directo a su servicio de directorio interno como un gran negocio en su red interna, pero considere el caso en el que el proveedor de servicios es un tercero. CAS le permite a sus usuarios autenticarse con usted, y usted elige permitir atributos relevantes al proveedor de servicios (por ejemplo, membresías de grupos). El servicio es responsable de hacer cumplir esas funciones, pero en última instancia, usted controla el acceso.

    
respondido por el Carl 19.07.2014 - 21:41
fuente

Lea otras preguntas en las etiquetas