Module: Utils::Cratususer
- Included in:
- Lita::Handlers::Activedirectory
- Defined in:
- lib/utils/cratususer.rb
Overview
piggy back on cratus for ldap work
Instance Method Summary collapse
- #add_user_to_group(username, groupname) ⇒ Object
- #cratus_connect ⇒ Object
- #disable_ldap_user(username) ⇒ Object
- #enable_ldap_user(username) ⇒ Object
- #group_mem_query(groupname) ⇒ Object
- #remove_user_from_group(username, groupname) ⇒ Object
- #unlock_user(username) ⇒ Object
- #user_groups_query(username) ⇒ Object
- #user_query(username) ⇒ Object
Instance Method Details
#add_user_to_group(username, groupname) ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/utils/cratususer.rb', line 52 def add_user_to_group(username, groupname) cratus_connect begin user = Cratus::User.new(username.to_s) group = Cratus::Group.new(groupname.to_s) raise 'InvalidUser' unless user raise 'InvalidGroup' unless group group.add_user(user) rescue nil end end |
#cratus_connect ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 |
# File 'lib/utils/cratususer.rb', line 4 def cratus_connect = { host: config.host, port: config.port, user_basedn: config.user_basedn, group_basedn: config.group_basedn, basedn: config.basedn, username: config.username, password: config.password } Cratus.config.merge() Cratus::LDAP.connect end |
#disable_ldap_user(username) ⇒ Object
87 88 89 90 91 92 93 94 |
# File 'lib/utils/cratususer.rb', line 87 def disable_ldap_user(username) cratus_connect begin Cratus::User.new(username.to_s).disable rescue nil end end |
#enable_ldap_user(username) ⇒ Object
96 97 98 99 100 101 102 103 |
# File 'lib/utils/cratususer.rb', line 96 def enable_ldap_user(username) cratus_connect begin Cratus::User.new(username.to_s).enable rescue nil end end |
#group_mem_query(groupname) ⇒ Object
40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/utils/cratususer.rb', line 40 def group_mem_query(groupname) cratus_connect begin group = Cratus::Group.new(groupname.to_s) raise 'InvalidGroup' unless group members = group.members members.map(&:fullname).join("\n") rescue nil end end |
#remove_user_from_group(username, groupname) ⇒ Object
65 66 67 68 69 70 71 72 73 74 75 76 |
# File 'lib/utils/cratususer.rb', line 65 def remove_user_from_group(username, groupname) cratus_connect begin user = Cratus::User.new(username.to_s) group = Cratus::Group.new(groupname.to_s) raise 'InvalidUser' unless user raise 'InvalidGroup' unless group group.remove_user(user) rescue nil end end |
#unlock_user(username) ⇒ Object
78 79 80 81 82 83 84 85 |
# File 'lib/utils/cratususer.rb', line 78 def unlock_user(username) cratus_connect begin Cratus::User.new(username.to_s).unlock rescue nil end end |
#user_groups_query(username) ⇒ Object
28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/utils/cratususer.rb', line 28 def user_groups_query(username) cratus_connect begin user = Cratus::User.new(username.to_s) raise 'NoGroups' unless user groups = user.member_of groups.map(&:name).join("\n") rescue nil end end |
#user_query(username) ⇒ Object
18 19 20 21 22 23 24 25 26 |
# File 'lib/utils/cratususer.rb', line 18 def user_query(username) cratus_connect user = begin Cratus::User.new(username.to_s) rescue nil end user ? user.locked? : user end |