class Isepick::IseERS

Public Class Methods

new(psn_host, psn_user, psn_password) click to toggle source
# File lib/isepick.rb, line 36
def initialize(psn_host, psn_user, psn_password)
  @client = Faraday.new("https://#{psn_host}:9060/ers/config/") do |conn|
    conn.basic_auth(psn_user, psn_password)
    conn.adapter Faraday.default_adapter
    conn.ssl[:verify] = false
    conn.headers["Accept"] = "application/json"
  end
end

Public Instance Methods

aznprofile_get(uuid) click to toggle source
# File lib/isepick.rb, line 175
def aznprofile_get(uuid)
  return JSON.parse(@client.get("authorizationprofile/#{uuid}").body)
end
aznprofile_getAll() click to toggle source

Authorization Profile

# File lib/isepick.rb, line 159
def aznprofile_getAll()
  current_page = 1
  output = []

  loop do
    cur_output = JSON.parse(@client.get("authorizationprofile?size=25&page=#{current_page}").body)
    output += cur_output["SearchResult"]["resources"]
    if cur_output["SearchResult"].key?("nextPage")
      current_page += 1
    else
      break
    end
  end
  return output
end
dacl_get(uuid) click to toggle source
# File lib/isepick.rb, line 154
def dacl_get(uuid)
  return JSON.parse(@client.get("downloadableacl/#{uuid}").body)
end
dacl_getAll() click to toggle source

Downloadable ACL

# File lib/isepick.rb, line 138
def dacl_getAll()
  current_page = 1
  output = []

  loop do
    cur_output = JSON.parse(@client.get("downloadableacl?size=25&page=#{current_page}").body)
    output += cur_output["SearchResult"]["resources"]
    if cur_output["SearchResult"].key?("nextPage")
      current_page += 1
    else
      break
    end
  end
  return output
end
eig_get(eig_id) click to toggle source
# File lib/isepick.rb, line 117
def eig_get(eig_id)
  return JSON.parse(@client.get("endpointgroup/#{eig_id}").body)
end
eig_getAll() click to toggle source

Endpoint Identity Group

# File lib/isepick.rb, line 101
def eig_getAll()
  current_page = 1
  output = []

  loop do
    cur_output = JSON.parse(@client.get("endpointgroup?size=25&page=#{current_page}").body)
    output += cur_output["SearchResult"]["resources"]
    if cur_output["SearchResult"].key?("nextPage")
      current_page += 1
    else
      break
    end
  end
  return output
end
eig_getEndpoints(eig_id) click to toggle source
# File lib/isepick.rb, line 121
def eig_getEndpoints(eig_id)
  current_page = 1
  output = []

  loop do
    cur_output = JSON.parse(@client.get("endpoint?size=25&page=#{current_page}&filter=groupId.EQ.#{eig_id}").body)
    output += cur_output["SearchResult"]["resources"]
    if cur_output["SearchResult"].key?("nextPage")
      current_page += 1
    else
      break
    end
  end
  return output
end
ep_filterByMAC(mac_addr) click to toggle source
# File lib/isepick.rb, line 53
def ep_filterByMAC(mac_addr)
  filter_param = mac_addr.gsub(/[^a-fA-F0-9]/, "").upcase.gsub(/(.{2})(?=.)/, '\1:\2')
  return JSON.parse(@client.get("endpoint?filter=mac.EQ.#{filter_param}").body)
end
ep_get(ep_id) click to toggle source
# File lib/isepick.rb, line 49
def ep_get(ep_id)
  return JSON.parse(@client.get("endpoint/#{ep_id}").body)
end
ep_getAll(pageSize = 25, page = 1) click to toggle source

Endpoints

# File lib/isepick.rb, line 45
def ep_getAll(pageSize = 25, page = 1)
  return JSON.parse(@client.get("endpoint").body)
end
nd_get(nd_id) click to toggle source
# File lib/isepick.rb, line 96
def nd_get(nd_id)
  return JSON.parse(@client.get("networkdevice/#{nd_id}").body)
end
nd_getAll() click to toggle source

Network Device

# File lib/isepick.rb, line 80
def nd_getAll()
  current_page = 1
  output = []

  loop do
    cur_output = JSON.parse(@client.get("networkdevice?size=25&page=#{current_page}").body)
    output += cur_output["SearchResult"]["resources"]
    if cur_output["SearchResult"].key?("nextPage")
      current_page += 1
    else
      break
    end
  end
  return output
end
ndg_get(ndg_id) click to toggle source
# File lib/isepick.rb, line 75
def ndg_get(ndg_id)
  return JSON.parse(@client.get("networkdevicegroup/#{ndg_id}").body)
end
ndg_getAll() click to toggle source

Network Device Group

# File lib/isepick.rb, line 59
def ndg_getAll()
  current_page = 1
  output = []

  loop do
    cur_output = JSON.parse(@client.get("networkdevicegroup?size=25&page=#{current_page}").body)
    output += cur_output["SearchResult"]["resources"]
    if cur_output["SearchResult"].key?("nextPage")
      current_page += 1
    else
      break
    end
  end
  return output
end