On Jul 28, 2010, at 0:05 , Instr. Dwayne Macgowan wrote:

> Hola lista!
> 
> Estoy trabajando el Rails hace un tiempo en un proyecto que creció bastante y 
> tengo la necesidad de dividirlo en varios modulos/aplicaciónes.
> Me gustaría generar algo tiiipo Google donde una vez que el usuario login ya 
> se maneja entre las aplicaciónes de forma transparente, sin necesidad de más 
> autenticaciones. Solo que en este caso serían más como módulos de una misma 
> aplicación.
> 
> Por otro lado también preciso que los usuario puedan hacer login a otros 
> sitios de la misma institución, estos hechos en php. Esto último lo 
> comenzando a implementar con OpenID utilizando masquerade como base.
> En este último caso openId es buena solución por son claramente diferentes 
> aplicación, casi sin relación entre sí salvo por el hecho de pertenecer a una 
> misma institución.
> En el primer caso preciso transparencia absoluta.
> 
> Cuál les parece la mejor implementación para esto?
> 1- modularizar el código internamente en plugins pero mantener todo bajo una 
> misma aplicación.
> 2- utilizar OpenID de alguna forma interna.
> 3- utilizar ActiveResource en las aplicación para acceder a los recursos de 
> las otras, etc
> 4- acceder con todas al mismo banco de datos y compartir la sesión? (mismo 
> :session_key y :secret)
> 5- una mezcla de 3 y 4
> 
> Estoy demorando bastante el avance del proyecto porque no termino de decidir 
> para dónde patear.
> 


Ojo con OpenID... es un método de 'identificación', no de 'autenticación'... la 
autenticación corre por debajo de OpenId ... tener bien claro los conceptos de 
identity provider y relaying party al ser tu aplicación los dos al mismo 
tiempo. Otra solución podría ser CAS [1].
Yo soy amigo de tener todo separado pero eso depende mucho de cada aplicación y 
como interactuan entre ellas claro. Si están muy poco acopladas y solo buscas 
la facilidad de que el usuario pase de aplicación sin necesidad de volver a 
loguearse, yo iría por tenerlas separadas con un  método de SSO como podría ser 
CAS.
Si necesitas cruzar datos entre ellas, una simple api rest te puede facilitar 
todo.

[1] http://code.google.com/p/rubycas-server/

--
nelson fernandez
artesano de software ~ software craftman
http://nelson.netflux.com.ar


> Les agradecería mucho sus opiniones.
> 
> ---
> Dwayne Macgowan
> Instructor del Método DeRose
> www.metododerose.org
> www.metododerose.org/blog
> 
> _______________________________________________
> Ruby mailing list
> [email protected]
> http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar

_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar

Responder a