Sha256: e78f485f373b8441a24a1e4b2bea13832e3f5a081d5e54d2d8c39240a2bbc940
Contents?: true
Size: 1.3 KB
Versions: 1
Compression:
Stored size: 1.3 KB
Contents
require 'devise/strategies/authenticatable' module Devise module Strategies class LdapAuthenticatable < Authenticatable # Tests whether the returned resource exists in the database and the # credentials are valid. If the resource is in the database and the credentials # are valid, the user is authenticated. Otherwise failure messages are returned # indicating whether the resource is not found in the database or the credentials # are invalid. def authenticate! resource = mapping.to.find_for_ldap_authentication(authentication_hash.merge(password: password)) if resource.persisted? if validate(resource) { resource.valid_ldap_authentication?(password) } remember_me(resource) resource.after_ldap_authentication success!(resource) else return fail(:invalid) # Invalid credentials end end if resource.new_record? if validate(resource) { resource.valid_ldap_authentication?(password) } return fail(:not_found_in_database) # Valid credentials else return fail(:invalid) # Invalid credentials end end end end end end Warden::Strategies.add(:ldap_authenticatable, Devise::Strategies::LdapAuthenticatable)
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
devise_ldap_authenticatable-0.8.3 | lib/devise_ldap_authenticatable/strategy.rb |