module ILO_SDK::ManagerAccountHelper

Contains helper methods for Manager Account actions

Public Instance Methods

get_account_privileges(username) click to toggle source

Get the Privileges for a user @param [String, Symbol] username @raise [RuntimeError] if the request failed @return [Hash] privileges

# File lib/ilo-sdk/helpers/manager_account_helper.rb, line 19
def get_account_privileges(username)
  response = rest_get('/redfish/v1/AccountService/Accounts/')
  accounts = response_handler(response)['Items']
  accounts.each do |account|
    if account['Oem']['Hp']['LoginName'] == username
      return account['Oem']['Hp']['Privileges']
    end
  end
end
set_account_privileges(username, privileges) click to toggle source

Set the privileges for a user @param [TrueClass, FalseClass] username @param [Hash] privileges @option privileges [TrueClass, FalseClass] :LoginPriv @option privileges [TrueClass, FalseClass] :RemoteConsolePriv @option privileges [TrueClass, FalseClass] :UserConfigPriv @option privileges [TrueClass, FalseClass] :VirtualMediaPriv @option privileges [TrueClass, FalseClass] :VirtualPowerAndResetPriv @option privileges [TrueClass, FalseClass] :iLOConfigPriv @raise [RuntimeError] if the request failed @return true

# File lib/ilo-sdk/helpers/manager_account_helper.rb, line 40
def set_account_privileges(username, privileges)
  response = rest_get('/redfish/v1/AccountService/Accounts/')
  accounts = response_handler(response)['Items']
  id = '0'
  accounts.each do |account|
    if account['Oem']['Hp']['LoginName'] == username
      id = account['Id']
      break
    end
  end
  new_action = {
    'Oem' => {
      'Hp' => {
        'Privileges' => privileges
      }
    }
  }
  response = rest_patch("/redfish/v1/AccountService/Accounts/#{id}/", body: new_action)
  response_handler(response)
  true
end