diff --git a/app/controllers/omniauth_callbacks_controller.rb b/app/controllers/omniauth_callbacks_controller.rb
index b79abf2c693bbb654d65b5d5716679c2433dd6f2..629b6819fb1e25e8523cf2496843c1b67759a856 100644
--- a/app/controllers/omniauth_callbacks_controller.rb
+++ b/app/controllers/omniauth_callbacks_controller.rb
@@ -2,8 +2,8 @@ class OmniauthCallbacksController < Devise::OmniauthCallbacksController
  
   def ldap
     # We only find ourselves here if the authentication to LDAP was successful.
-    omniauth = request.env["omniauth.auth"]["extra"]["raw_info"]
-    @user = User.find_for_ldap_auth(omniauth)
+    info = request.env["omniauth.auth"]["info"]
+    @user = User.find_for_ldap_auth(info)
     if @user.persisted?
       @user.remember_me = true
     end
diff --git a/app/models/user.rb b/app/models/user.rb
index fbac05108e6b4e5248d692bff6fce24c087327c6..9c0b1b4eb0ea965c68dea74253549db85cff2cdd 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -67,15 +67,15 @@ class User < ActiveRecord::Base
     (0...8).map{ ('a'..'z').to_a[rand(26)] }.join
   end 
 
-  def self.find_for_ldap_auth(omniauth)
-    username = omniauth.sAMAccountName[0]
-    email = omniauth.userprincipalname[0]
+  def self.find_for_ldap_auth(omniauth_info)
+    name = omniauth_info.name
+    email = omniauth_info.email
     
     if @user = User.find_by_email(email)
       @user
     else
       password = generate_random_password
-      @user = User.create(:name => username,
+      @user = User.create(:name => name,
         :email => email,
         :password => password,
         :password_confirmation => password