class User
Attributes
login[R]
Public Class Methods
new(user)
click to toggle source
# File lib/satops/operator.rb, line 1135 def initialize(user) @login=user['login'] @first_name=user['first_name'] @last_name=user['last_name'] @email=user['email'] @org_id=user['org_id'] @prefix=user['prefix'] @last_login_date=user['last_login_date'] @created_date=user['created_date'] @enabled=user['enabled'] @use_pam=user['use_pam'] @roles=user['roles'] @assigned_system_groups=user['assigned_system_groups'] @default_system_groups=user['default_system_groups'] end
reader(sat, login)
click to toggle source
# File lib/satops/operator.rb, line 1126 def self.reader(sat, login) user={'login'=>login} user.merge!(sat.user.getDetails(login)) user.merge!({'roles'=>sat.user.listRoles(login)}) user.merge!({'assigned_system_groups'=>sat.user.listAssignedSystemGroups(login)}) user.merge!({'default_system_groups'=>sat.user.listDefaultSystemGroups(login)}) user end
Public Instance Methods
common_update(sat)
click to toggle source
# File lib/satops/operator.rb, line 1151 def common_update(sat) # Enable/Disable if @enabled sat.user.enable(@login) else sat.user.disable(@login) end # Adding roles @roles.each do |role| sat.user.addRole(@login, role) end # Assigned System Groups sat.user.addAssignedSystemGroups(@login, Helpers.filter(@assigned_system_groups, 'name'), false) unless @assigned_system_groups.empty? # Default System Groups sat.user.addDefaultSystemGroups(@login, Helpers.filter(@default_system_groups, 'name')) unless @default_system_groups.empty? end
create(sat)
click to toggle source
# File lib/satops/operator.rb, line 1171 def create(sat) @use_pam if @use_pam sat.user.create(@login, "", @first_name, @last_name, @email, 1) else # When creating user on target, the passwor comes from configuration # because there no API to read it. password=Users.password sat.user.create(@login, password, @first_name, @last_name, @email, 0) end sat.user.setDetails(@login, {'prefix' => @prefix}) unless @prefix.empty? common_update(sat) end
update(sat)
click to toggle source
# File lib/satops/operator.rb, line 1185 def update(sat) @prefix='' unless !@prefix.empty! # We ignore password update - Ain't any API for it! sat.user.setDetails(@login, {'first_name' => @first_name, 'last_name' => @last_name, 'email' => @email, 'prefix' => @prefix}) sat.user.listRoles(login).each do |role| sat.user.removeRole(login, role) end common_update(sat) end