class FreeipaEasy::User
Attributes
password[R]
url[R]
user[R]
Public Class Methods
new(url, user, password)
click to toggle source
# File lib/freeipa_easy/user.rb, line 6 def initialize(url, user, password) @url = url @user = user @password = password end
Public Instance Methods
add_user(first_name, last_name, login, mail, password)
click to toggle source
# File lib/freeipa_easy/user.rb, line 23 def add_user(first_name, last_name, login, mail, password) begin cn = first_name + " " + last_name if (password.class.to_s.eql?("TrueClass")) payload = {"method":"user_add", "params":[[login], {"cn": cn, "mail": mail, "givenname": first_name, "sn": last_name, "random": password}], "id":0} else payload = {"method":"user_add", "params":[[login], {"cn": cn, "mail": mail, "givenname": first_name, "sn": last_name, "userpasswd": password}], "id":0} end data_json = RestClient::Request.execute(method: :post, url: @url +'/ipa/session/json', :verify_ssl => false, :cookies => @cookies, :payload => payload.to_json, :headers => {:content_type => :json, :accept =>:json, :Referer => url + '/ipa'}) data = JSON.parse(data_json) rescue Exception => e puts "#{e.class}" +": " + "#{e.message}" end unless data["result"]["result"]["randompassword"].nil? return data["result"]["result"]["randompassword"] else return data["error"] end end
authentication_password()
click to toggle source
# File lib/freeipa_easy/user.rb, line 12 def authentication_password begin login_freeipa = RestClient::Request.execute(method: :post, url: url+'/ipa/session/login_password', :verify_ssl => false, :payload => "user=#{@user}&password=#{@password}", :headers => {:Referer => url+'/ipa'}) @cookies = login_freeipa.cookies rescue Exception => e puts "#{e.class}" +": " + "#{e.message}" end true end
delete_user(login)
click to toggle source
# File lib/freeipa_easy/user.rb, line 55 def delete_user(login) begin payload = {"id": 0, "method": "user_del", "params": [[[login]],{ }]} data_json = RestClient::Request.execute(method: :post, url: @url +'/ipa/session/json', :verify_ssl => false, :cookies => @cookies, :payload => payload.to_json, :headers => {:content_type => :json, :accept =>:json, :Referer => url + '/ipa'}) data = JSON.parse(data_json) rescue Exception => e puts "#{e.class}" +": " + "#{e.message}" end data["error"] end
disable_user(login)
click to toggle source
# File lib/freeipa_easy/user.rb, line 89 def disable_user(login) begin payload = {"id": 0, "method": "user_disable", "params": [[login], {}]} data_json = RestClient::Request.execute(method: :post, url: @url +'/ipa/session/json', :verify_ssl => false, :cookies => @cookies, :payload => payload.to_json, :headers => {:content_type => :json, :accept =>:json, :Referer => url + '/ipa'}) data = JSON.parse(data_json) rescue Exception => e puts "#{e.class}" +": " + "#{e.message}" end data["error"] end
enable_user(login)
click to toggle source
# File lib/freeipa_easy/user.rb, line 123 def enable_user(login) begin payload = {"id": 0, "method": "user_enable", "params": [[login], {}]} data_json = RestClient::Request.execute(method: :post, url: @url +'/ipa/session/json', :verify_ssl => false, :cookies => @cookies, :payload => payload.to_json, :headers => {:content_type => :json, :accept =>:json, :Referer => url + '/ipa'}) data = JSON.parse(data_json) rescue Exception => e puts "#{e.class}" +": " + "#{e.message}" end data["error"] end
modify_user(login,payload_options={})
click to toggle source
# File lib/freeipa_easy/user.rb, line 140 def modify_user(login,payload_options={}) begin payload_options.merge!({"all": false, "no_members": false,"raw": false,"rights": false}) test = {"all": false, "no_members": false,"raw": false,"rights": false} payload = {"id": 0, "method": "user_mod", "params": [[login], payload_options]} data_json = RestClient::Request.execute(method: :post, url: @url +'/ipa/session/json', :verify_ssl => false, :cookies => @cookies, :payload => payload.to_json, :headers => {:content_type => :json, :accept =>:json, :Referer => url + '/ipa'}) data = JSON.parse(data_json) rescue Exception => e puts "#{e.class}" +": " + "#{e.message}" end data["error"] end
show_user(login)
click to toggle source
# File lib/freeipa_easy/user.rb, line 72 def show_user(login) begin payload = {"id": 0, "method": "user_show", "params": [[login], {"all": false, "no_members": false,"raw": false,"rights": false}]} data_json = RestClient::Request.execute(method: :post, url: @url +'/ipa/session/json', :verify_ssl => false, :cookies => @cookies, :payload => payload.to_json, :headers => {:content_type => :json, :accept =>:json, :Referer => url + '/ipa'}) data = JSON.parse(data_json) rescue Exception => e puts "#{e.class}" +": " + "#{e.message}" end data["error"] end
unlock_user(login)
click to toggle source
# File lib/freeipa_easy/user.rb, line 106 def unlock_user(login) begin payload = {"id": 0, "method": "user_unlock", "params": [[login], {}]} data_json = RestClient::Request.execute(method: :post, url: @url +'/ipa/session/json', :verify_ssl => false, :cookies => @cookies, :payload => payload.to_json, :headers => {:content_type => :json, :accept =>:json, :Referer => url + '/ipa'}) data = JSON.parse(data_json) rescue Exception => e puts "#{e.class}" +": " + "#{e.message}" end data["error"] end