Module: Devise::LDAP::Adapter

Defined in:
lib/devise_ldap_authenticatable/ldap/adapter.rb

Class Method Summary collapse

Class Method Details

.delete_ldap_param(login, param, password = nil) ⇒ Object



75
76
77
78
79
80
81
82
# File 'lib/devise_ldap_authenticatable/ldap/adapter.rb', line 75

def self.delete_ldap_param(, param, password = nil)
  options = {:login => ,
             :ldap_auth_username_builder => ::Devise.ldap_auth_username_builder,
             :password => password }

  resource = Devise::LDAP::Connection.new(options)
  resource.delete_param(param)
end

.expired_valid_credentials?(login, password_plaintext) ⇒ Boolean

Returns:

  • (Boolean)


18
19
20
21
22
23
24
25
26
# File 'lib/devise_ldap_authenticatable/ldap/adapter.rb', line 18

def self.expired_valid_credentials?(, password_plaintext)
  options = {:login => ,
             :password => password_plaintext,
             :ldap_auth_username_builder => ::Devise.ldap_auth_username_builder,
             :admin => ::Devise.ldap_use_admin_to_bind}

  resource = Devise::LDAP::Connection.new(options)
  resource.expired_valid_credentials?
end

.get_dn(login) ⇒ Object



62
63
64
# File 'lib/devise_ldap_authenticatable/ldap/adapter.rb', line 62

def self.get_dn()
  self.ldap_connect().dn
end

.get_groups(login) ⇒ Object



54
55
56
# File 'lib/devise_ldap_authenticatable/ldap/adapter.rb', line 54

def self.get_groups()
  self.ldap_connect().user_groups
end

.get_ldap_entry(login) ⇒ Object



89
90
91
# File 'lib/devise_ldap_authenticatable/ldap/adapter.rb', line 89

def self.get_ldap_entry()
  self.ldap_connect().
end

.get_ldap_param(login, param) ⇒ Object



84
85
86
87
# File 'lib/devise_ldap_authenticatable/ldap/adapter.rb', line 84

def self.get_ldap_param(,param)
  resource = self.ldap_connect()
  resource.ldap_param_value(param)
end

.in_ldap_group?(login, group_name, group_attribute = nil) ⇒ Boolean

Returns:

  • (Boolean)


58
59
60
# File 'lib/devise_ldap_authenticatable/ldap/adapter.rb', line 58

def self.in_ldap_group?(, group_name, group_attribute = nil)
  self.ldap_connect().in_group?(group_name, group_attribute)
end

.ldap_connect(login) ⇒ Object



42
43
44
45
46
47
48
# File 'lib/devise_ldap_authenticatable/ldap/adapter.rb', line 42

def self.ldap_connect()
  options = {:login => ,
             :ldap_auth_username_builder => ::Devise.ldap_auth_username_builder,
             :admin => ::Devise.ldap_use_admin_to_bind}

  Devise::LDAP::Connection.new(options)
end

.set_ldap_param(login, param, new_value, password = nil) ⇒ Object



66
67
68
69
70
71
72
73
# File 'lib/devise_ldap_authenticatable/ldap/adapter.rb', line 66

def self.set_ldap_param(, param, new_value, password = nil)
  options = {:login => ,
             :ldap_auth_username_builder => ::Devise.ldap_auth_username_builder,
             :password => password }

  resource = Devise::LDAP::Connection.new(options)
  resource.set_param(param, new_value)
end

.update_own_password(login, new_password, current_password) ⇒ Object



38
39
40
# File 'lib/devise_ldap_authenticatable/ldap/adapter.rb', line 38

def self.update_own_password(, new_password, current_password)
  set_ldap_param(, :userPassword, ::Devise.ldap_auth_password_builder.call(new_password), current_password)
end

.update_password(login, new_password) ⇒ Object



28
29
30
31
32
33
34
35
36
# File 'lib/devise_ldap_authenticatable/ldap/adapter.rb', line 28

def self.update_password(, new_password)
  options = {:login => ,
             :new_password => new_password,
             :ldap_auth_username_builder => ::Devise.ldap_auth_username_builder,
             :admin => ::Devise.ldap_use_admin_to_bind}

  resource = Devise::LDAP::Connection.new(options)
  resource.change_password! if new_password.present?
end

.valid_credentials?(login, password_plaintext) ⇒ Boolean

Returns:

  • (Boolean)


8
9
10
11
12
13
14
15
16
# File 'lib/devise_ldap_authenticatable/ldap/adapter.rb', line 8

def self.valid_credentials?(, password_plaintext)
  options = {:login => ,
             :password => password_plaintext,
             :ldap_auth_username_builder => ::Devise.ldap_auth_username_builder,
             :admin => ::Devise.ldap_use_admin_to_bind}

  resource = Devise::LDAP::Connection.new(options)
  resource.authorized?
end

.valid_login?(login) ⇒ Boolean

Returns:

  • (Boolean)


50
51
52
# File 'lib/devise_ldap_authenticatable/ldap/adapter.rb', line 50

def self.valid_login?()
  self.ldap_connect().valid_login?
end