Class: LdapFluff::FreeIPA::NetgroupMemberService

Inherits:
MemberService show all
Defined in:
lib/ldap_fluff/freeipa_netgroup_member_service.rb

Instance Attribute Summary

Attributes inherited from GenericMemberService

#ldap

Instance Method Summary collapse

Methods inherited from MemberService

#get_groups, #initialize

Methods inherited from GenericMemberService

#find_by_dn, #find_group, #find_user, #get_groups, #get_login_from_entry, #get_logins, #get_netgroup_users, #group_filter, #initialize, #name_filter

Constructor Details

This class inherits a constructor from LdapFluff::FreeIPA::MemberService

Instance Method Details

#find_user_groups(uid) ⇒ Object



4
5
6
7
8
9
10
11
# File 'lib/ldap_fluff/freeipa_netgroup_member_service.rb', line 4

def find_user_groups(uid)
  groups = []
  @ldap.search(:filter => Net::LDAP::Filter.eq('objectClass', 'nisNetgroup'), :base => @group_base).each do |entry|
    members = get_netgroup_users(entry[:nisnetgrouptriple])
    groups << entry[:cn][0] if members.include? uid
  end
  groups
end