Class: SDM::QueryCapture

Inherits:
Object
  • Object
show all
Defined in:
lib/models/porcelain.rb

Overview

A QueryCapture contains additional information about queries against SSH, Kubernetes, and RDP resources.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client_command: nil, command: nil, container: nil, env: nil, file_name: nil, file_size: nil, height: nil, impersonation_groups: nil, impersonation_user: nil, pod: nil, privilege_groups: nil, request_body: nil, request_method: nil, request_uri: nil, type: nil, width: nil) ⇒ QueryCapture

Returns a new instance of QueryCapture.



14586
14587
14588
14589
14590
14591
14592
14593
14594
14595
14596
14597
14598
14599
14600
14601
14602
14603
14604
14605
14606
14607
14608
14609
14610
14611
14612
14613
14614
14615
14616
14617
14618
14619
14620
# File 'lib/models/porcelain.rb', line 14586

def initialize(
  client_command: nil,
  command: nil,
  container: nil,
  env: nil,
  file_name: nil,
  file_size: nil,
  height: nil,
  impersonation_groups: nil,
  impersonation_user: nil,
  pod: nil,
  privilege_groups: nil,
  request_body: nil,
  request_method: nil,
  request_uri: nil,
  type: nil,
  width: nil
)
  @client_command = client_command == nil ? "" : client_command
  @command = command == nil ? "" : command
  @container = container == nil ? "" : container
  @env = env == nil ? {} : env
  @file_name = file_name == nil ? "" : file_name
  @file_size = file_size == nil ? 0 : file_size
  @height = height == nil ? 0 : height
  @impersonation_groups = impersonation_groups == nil ? [] : impersonation_groups
  @impersonation_user = impersonation_user == nil ? "" : impersonation_user
  @pod = pod == nil ? "" : pod
  @privilege_groups = privilege_groups == nil ? [] : privilege_groups
  @request_body = request_body == nil ? "" : request_body
  @request_method = request_method == nil ? "" : request_method
  @request_uri = request_uri == nil ? "" : request_uri
  @type = type == nil ? "" : type
  @width = width == nil ? 0 : width
end

Instance Attribute Details

#client_commandObject

The command executed on the client for a Kubernetes session.



14554
14555
14556
# File 'lib/models/porcelain.rb', line 14554

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



14556
14557
14558
# File 'lib/models/porcelain.rb', line 14556

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



14558
14559
14560
# File 'lib/models/porcelain.rb', line 14558

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



14560
14561
14562
# File 'lib/models/porcelain.rb', line 14560

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



14562
14563
14564
# File 'lib/models/porcelain.rb', line 14562

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



14564
14565
14566
# File 'lib/models/porcelain.rb', line 14564

def file_size
  @file_size
end

#heightObject

The height of the terminal or window for SSH, Kubernetes, and RDP interactive sessions.



14566
14567
14568
# File 'lib/models/porcelain.rb', line 14566

def height
  @height
end

#impersonation_groupsObject

The impersonation groups of a Kubernetes operation.



14568
14569
14570
# File 'lib/models/porcelain.rb', line 14568

def impersonation_groups
  @impersonation_groups
end

#impersonation_userObject

The impersonation user of a Kubernetes operation.



14570
14571
14572
# File 'lib/models/porcelain.rb', line 14570

def impersonation_user
  @impersonation_user
end

#podObject

The target pod of a Kubernetes operation.



14572
14573
14574
# File 'lib/models/porcelain.rb', line 14572

def pod
  @pod
end

#privilege_groupsObject

The additional impersonation groups, as granted by privilege levels, of a Kubernetes operation.



14574
14575
14576
# File 'lib/models/porcelain.rb', line 14574

def privilege_groups
  @privilege_groups
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



14576
14577
14578
# File 'lib/models/porcelain.rb', line 14576

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



14578
14579
14580
# File 'lib/models/porcelain.rb', line 14578

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



14580
14581
14582
# File 'lib/models/porcelain.rb', line 14580

def request_uri
  @request_uri
end

#typeObject

The CaptureType of this query capture, one of the CaptureType constants.



14582
14583
14584
# File 'lib/models/porcelain.rb', line 14582

def type
  @type
end

#widthObject

The width of the terminal or window for SSH, Kubernetes, and RDP interactive sessions.



14584
14585
14586
# File 'lib/models/porcelain.rb', line 14584

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



14622
14623
14624
14625
14626
14627
14628
# File 'lib/models/porcelain.rb', line 14622

def to_json(options = {})
  hash = {}
  self.instance_variables.each do |var|
    hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
  end
  hash.to_json
end