2011-08-25 11 views
5

He seguido this demo implementando el inicio de sesión usando spring security y openid.Registrarse al iniciar sesión con Openid Spring Security

tengo éxito su aplicación, pero utilizando la seguridad de la primavera tengo que proporcionar los datos de usuario en la sección de spring-security.xml

<security:user name="http://krams915.myopenid.com/" password="" authorities="ROLE_USER, ROLE_ADMIN" /> 

userservice Quiero poner en práctica registrarse y ciclo de inicio de sesión a través de OpenID de una sola vez. No estoy obteniendo cómo continuar sin proporcionar un nombre de usuario en el servicio de usuario, ya que el usuario que visita mi sitio no se registrará previamente.

Cualquier ayuda u orientación sería genial.

Gracias de antemano.

Respuesta

6

La muestra openid con seguridad de primavera tiene algunos ejemplos del uso de la etiqueta attribute-exchange para extraer datos de los proveedores de OpenId. Esto le permitirá tomar los datos requeridos (o al menos algunos de ellos) para los usuarios, especialmente si son nuevos.

El CustomUserDetailsService en ese ejemplo también muestra una forma posible de crear nuevas cuentas en su aplicación cuando los nuevos usuarios entran a través de OpenID que une su identificador OpenID para una nueva cuenta de usuario en la aplicación.

+0

Gracias por la respuesta. Pero no proporciona una solución exactamente cómo debería funcionar. [Aquí] (http://blog.solidcraft.eu/2011/04/spring-security-by-example-openid-login.html) es la solución completa que funciona bien. – user549757

+0

@user - Sí, ese ejemplo sí lo hace en pequeños pasos, pero el núcleo de lo que están haciendo es el mismo que el del ejemplo de Spring Spring al que me he vinculado. Obviamente, solo me vinculé a los archivos de código específicos que ilustraban el intercambio de atributos y la creación de la cuenta de usuario local de la aplicación, pero el tutorial al que se vinculó es prácticamente el mismo que el ejemplo de seguridad de primavera. – cdeszaq

+0

Para este material abierto, funcionó, ahora también quiero integrar Facebook, Twitter, inicio de sesión vinculado con esto, que sigue a OAuth ... ¿Es posible integrar ambos? En caso afirmativo, ¿puede proporcionar algún enlace o cómo se puede hacer? Me referí [blogTrickl] (http://blog.trickl.com/?tag=spring-social), pero esto no ayudó mucho .. – user549757

Cuestiones relacionadas