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.



11644
11645
11646
11647
11648
11649
11650
11651
11652
11653
11654
11655
11656
11657
11658
11659
11660
11661
11662
11663
11664
11665
11666
11667
11668
11669
11670
11671
11672
11673
11674
11675
11676
11677
11678
# File 'lib/models/porcelain.rb', line 11644

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.



11612
11613
11614
# File 'lib/models/porcelain.rb', line 11612

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



11614
11615
11616
# File 'lib/models/porcelain.rb', line 11614

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



11616
11617
11618
# File 'lib/models/porcelain.rb', line 11616

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



11618
11619
11620
# File 'lib/models/porcelain.rb', line 11618

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



11620
11621
11622
# File 'lib/models/porcelain.rb', line 11620

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



11622
11623
11624
# File 'lib/models/porcelain.rb', line 11622

def file_size
  @file_size
end

#heightObject

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



11624
11625
11626
# File 'lib/models/porcelain.rb', line 11624

def height
  @height
end

#impersonation_groupsObject

The impersonation groups of a Kubernetes operation.



11626
11627
11628
# File 'lib/models/porcelain.rb', line 11626

def impersonation_groups
  @impersonation_groups
end

#impersonation_userObject

The impersonation user of a Kubernetes operation.



11628
11629
11630
# File 'lib/models/porcelain.rb', line 11628

def impersonation_user
  @impersonation_user
end

#podObject

The target pod of a Kubernetes operation.



11630
11631
11632
# File 'lib/models/porcelain.rb', line 11630

def pod
  @pod
end

#privilege_groupsObject

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



11632
11633
11634
# File 'lib/models/porcelain.rb', line 11632

def privilege_groups
  @privilege_groups
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



11634
11635
11636
# File 'lib/models/porcelain.rb', line 11634

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



11636
11637
11638
# File 'lib/models/porcelain.rb', line 11636

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



11638
11639
11640
# File 'lib/models/porcelain.rb', line 11638

def request_uri
  @request_uri
end

#typeObject

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



11640
11641
11642
# File 'lib/models/porcelain.rb', line 11640

def type
  @type
end

#widthObject

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



11642
11643
11644
# File 'lib/models/porcelain.rb', line 11642

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



11680
11681
11682
11683
11684
11685
11686
# File 'lib/models/porcelain.rb', line 11680

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