Hola , tengo una duda acerca de las sesiones y redireccionamiento en
distintos tabs , uso restfulauthentication.
el caso es el siguiente:
El usuario esta logueado, este realiza una accion en la aplicacion
que le
envia un correo con un link especifico a un recurso de la aplicacion,
este
recurso esta protegido y redirige al login si es que el usuario no ha
iniciado sesion.
el usuario va a su correo y hace clic en el link , esto abre un nuevo
tab
del navegador y este es redirigido al login aunque tenga sesion en el
otro
tab, y tiene que loguearse otra vez.
mi duda es si esto se da por el :protect_from_forgery o alguna otra cosa
de
rails o es un comportamiento habitual del navegador
El usuario esta logueado, este realiza una accion en la aplicacion
que le envia un correo con un link especifico a un recurso de la
aplicacion, este recurso esta protegido y redirige al login si es que
el usuario no ha iniciado sesion.
el usuario va a su correo y hace clic en el link , esto abre un
nuevo tab del navegador y este es redirigido al login aunque tenga
sesion en el otro tab, y tiene que loguearse otra vez.
No veo relación con el :protect_from_forgery aquí. De todas formas, es
fácil desactivarlo (temporalmente, no te recomiendo dejarlo así) para
comprobar que no sea ese el problema.
Lo que te está pasando es que la acción que se dispara cuando el usuario
hace clic en el enlace del correo no comprueba correctamente la
existencia de una sesión activa, con lo que te calza incondicionalmente
la redirección al login. No sé si esto tiene que ver con la
implementación del navegador (entiendo que Chrome aunque cada
pestaña sea un proceso distinto de alguna manera todas las pestañas compartirán
la información de sesión de alguna manera)
Para perseguir esto yo pondría un punto de ruptura en la acción de
marras y comprobaría el estado de la sesión del usuario tras hacer clic
en el link.
El 18 de junio de 2009 16:54, Miguel
Michelsongs[email protected]
escribió:
ahora si que no entiendo nada, según este comportamiento supongo que puede
ser algo del navegador. ¿ a nadie le ha pasado esto?
Puede ser que el dominio que hayas usado para loguearte y el dominio
del link del email no sea exactamente el mismo.
Es decir puede que estés usando 127.0.0.1 en un lado y 0.0.0.0 en
otro… o localhost… o algo
así.
La cookie (donde vive la sesión) es por dominio… y alguna vez incluso
por url completa.
f.
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.