Session ID demasiado largo


#1

Hola,

Estoy teniendo problemas con el identificador de sesión de mi aplicación
en Rails (2.2.2). Necesito en determinado momento guardar un usuario
anónimo en mi base de datos, el cual quiero identificar de manera única
con el id de su sesión. Para ello pongo el siguiente código:

def save_anonymus_user
self.current_user = User.new(:login => “guest” +
session.session_id,
:password => “guest”, :confirm_password => “guest”, :session_id
=> session.session_id)
end

Pero en este punto el session_id vale una cadena muy larga, que no es de
32 caracteres como se supone debería ser:

BAh7CToMY3NyZl9pZCIlYmE1ZWYxNzY3MzUwMjI2MzU0NWFhMWUxODZkZDY4M2U6EXNlYXJjaFN0cmluZyIJbmFkYToPdXBkYXRlZF9hdEl1OglUaW1lDatQG4BQk5jZBjofQG1hcnNoYWxfd2l0aF91dGNfY29lcmNpb25GIgpmbGFzaElDOidBY3Rpb25Db250cm9sbGVyOjpGbGFzaDo6Rmxhc2hIYXNoewAGOgpAdXNlZHsA–206695460a9e840bd0393690e0d8813ee46ce434

Además, controlo la expiración de la sesión con el plugin
session_lifetime, para borrar el usuario anónimo insertado previamente:

expires_session :time => 5.minutes, :redirect_to => ‘/’, :on_expiry =>
lambda {
user = User.find_by_session_id(session.session_id)
User.delete(user.id) unless user.nil?
}

Aquí el session_id sí que es una cadena de 32 caracteres como se supone
que debe ser.

Qué estoy haciendo mal en el momento de la inserción para que el ID de
la sesión sea una cadena tan larga?? Cómo lo puedo solucionar? Existe
algún otro método para hacer lo que estoy intentando?

Muchas gracias.
Thanks!