Class: Devise::Strategies::ActiveDirectoryAuthenticatable

Inherits:
Authenticatable
  • Object
show all
Defined in:
lib/devise/strategies/active_directory_authenticatable.rb

Instance Method Summary collapse

Instance Method Details

#authenticate!Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/devise/strategies/active_directory_authenticatable.rb', line 7

def authenticate!
  #FIXME enterprise mode was here
  if params[:user]
    username_or_email = params[:user][:login]
    if ActiveDirectoryLogin.find_user(username_or_email).nil?
      fail(:invalid)
    else
      ActiveDirectoryLogin.with_user(username_or_email, params[:user][:password]) do

        if ActiveDirectoryLogin.authenticate_user
          if ActiveDirectoryLogin.has_member_access?
            user = ActiveDirectoryLogin.create_or_update_user
            success!(user)
          else
            ActiveDirectoryLogin.lock_user
            fail(:locked)
          end
        else
          fail(:invalid)
        end
      end #with_user
    end
  end 
end