Secciones

Artículos para tus primeros pasos

Si estás empezando a introducirte en el mundo de Groovy y Grails, no te pierdas nuestros artículos básicos: 

Entrevistas con los expertos
 

Los protagonistas te cuentan de qué van los proyectos más importantes del mundo Groovy:


Un proyecto de:
ImaginaWorks
Campus Escuela de Groovy

Grails

Modificar ticketValidator de casAuthenticationProvider

ldelaiglesia - miércoles 04/05/2011

Hola,

tengo una aplicación en la que utilizo los siguientes plugins:

spring-security-cas 1.0.2

spring-security-core1.1

spring-security-ldap1.0.4

La versión de Jasig CAS que tenemos en el server modifica la respuesta de cas para que en la respuesta venga un atributo identificativo de la persona diferente del login que ha utilizado.

Imaginaos: los usuarios hacen login con un dato que no es el identificador único de la persona en las aplicaciones.

Así el objeto response contiene un atributo que debo procesar. Para esto hemos reescrito Cas20ServiceTicketValidator. En las aplicaciones Spring basta hacer:

<bean id="casAuthenticationProvider"

class="org.springframework.security.providers.cas.CasAuthenticationProvider">

<security:custom-authentication-provider />

<property name="serviceProperties" ref="serviceProperties" />

<property name="userDetailsService" ref="ldapUserDetailsService" />

<property name="ticketValidator">

<bean

class="foo.CustomCas20ServiceTicketValidator">

<constructor-arg index="0" value="https://cas.foo.org/cas" />

</bean>

</property>

<property name="key" value="an_id_for_this_auth_provider_only" />

</bean>

Pero en grails no sé cómo interceptar la llamada a CasAuthenticationProvider para pasarle mi clase específica de Validador del Ticket de CAS.

¿ideas? ¿sugerencias? En cualquier caso: Gracias.

Un saludo,

Lucía 

 

Responder al hilo | Volver al foro "Grails" | Volver a los foros