class LdapFluff
Public Class Methods
new(config = {})
click to toggle source
# File lib/ldap_fluff/ldap_fluff.rb, line 7 def initialize(config = {}) config = LdapFluff::Config.new(config) case config.server_type when :posix @ldap = Posix.new(config) when :active_directory @ldap = ActiveDirectory.new(config) when :free_ipa @ldap = FreeIPA.new(config) else raise 'unknown server_type' end end
Public Instance Methods
authenticate?(uid, password)
click to toggle source
return true if the user password combination authenticates the user, otherwise false
# File lib/ldap_fluff/ldap_fluff.rb, line 23 def authenticate?(uid, password) if password.nil? || password.empty? # protect against passwordless auth from ldap server return false else @ldap.bind? uid, password end end
group_list(uid)
click to toggle source
return a list[] of groups for a given uid
# File lib/ldap_fluff/ldap_fluff.rb, line 33 def group_list(uid) @ldap.groups_for_uid(uid) end
is_in_groups?(uid, grouplist)
click to toggle source
return true if a user is in all of the groups in grouplist
# File lib/ldap_fluff/ldap_fluff.rb, line 39 def is_in_groups?(uid, grouplist) @ldap.is_in_groups(uid, grouplist, true) end
valid_group?(gid)
click to toggle source
return true if group exists
# File lib/ldap_fluff/ldap_fluff.rb, line 49 def valid_group?(gid) @ldap.group_exists? gid end
valid_user?(uid)
click to toggle source
return true if uid exists
# File lib/ldap_fluff/ldap_fluff.rb, line 44 def valid_user?(uid) @ldap.user_exists? uid end