diff --git a/helios_auth/auth_systems/password.py b/helios_auth/auth_systems/password.py
index e39573e0200d0717adffe8f1d90939481d373e88..7f7bb572ef6852ea0359f3facecdb614d2d5cb30 100644
--- a/helios_auth/auth_systems/password.py
+++ b/helios_auth/auth_systems/password.py
@@ -57,7 +57,7 @@ def password_login_view(request):
       try:
         user = User.get_by_type_and_id('password', username)
         if password_check(user, password):
-          request.session['password_user'] = user
+          request.session['password_user_id'] = user.user_id
           return HttpResponseRedirect(reverse(after))
       except User.DoesNotExist:
         pass
@@ -104,9 +104,9 @@ def get_auth_url(request, redirect_url = None):
   return reverse(password_login_view)
     
 def get_user_info_after_auth(request):
-  user = request.session['password_user']
-  del request.session['password_user']
-  user_info = user.info
+  from helios_auth.models import User
+  user = User.get_by_type_and_id('password', request.session['password_user_id'])
+  del request.session['password_user_id']
   
   return {'type': 'password', 'user_id' : user.user_id, 'name': user.name, 'info': user.info, 'token': None}