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.



12929
12930
12931
12932
12933
12934
12935
12936
12937
12938
12939
12940
12941
12942
12943
12944
12945
12946
12947
12948
12949
12950
12951
12952
12953
12954
12955
12956
12957
12958
12959
12960
12961
12962
12963
# File 'lib/models/porcelain.rb', line 12929

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.



12897
12898
12899
# File 'lib/models/porcelain.rb', line 12897

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



12899
12900
12901
# File 'lib/models/porcelain.rb', line 12899

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



12901
12902
12903
# File 'lib/models/porcelain.rb', line 12901

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



12903
12904
12905
# File 'lib/models/porcelain.rb', line 12903

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



12905
12906
12907
# File 'lib/models/porcelain.rb', line 12905

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



12907
12908
12909
# File 'lib/models/porcelain.rb', line 12907

def file_size
  @file_size
end

#heightObject

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



12909
12910
12911
# File 'lib/models/porcelain.rb', line 12909

def height
  @height
end

#impersonation_groupsObject

The impersonation groups of a Kubernetes operation.



12911
12912
12913
# File 'lib/models/porcelain.rb', line 12911

def impersonation_groups
  @impersonation_groups
end

#impersonation_userObject

The impersonation user of a Kubernetes operation.



12913
12914
12915
# File 'lib/models/porcelain.rb', line 12913

def impersonation_user
  @impersonation_user
end

#podObject

The target pod of a Kubernetes operation.



12915
12916
12917
# File 'lib/models/porcelain.rb', line 12915

def pod
  @pod
end

#privilege_groupsObject

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



12917
12918
12919
# File 'lib/models/porcelain.rb', line 12917

def privilege_groups
  @privilege_groups
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



12919
12920
12921
# File 'lib/models/porcelain.rb', line 12919

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



12921
12922
12923
# File 'lib/models/porcelain.rb', line 12921

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



12923
12924
12925
# File 'lib/models/porcelain.rb', line 12923

def request_uri
  @request_uri
end

#typeObject

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



12925
12926
12927
# File 'lib/models/porcelain.rb', line 12925

def type
  @type
end

#widthObject

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



12927
12928
12929
# File 'lib/models/porcelain.rb', line 12927

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



12965
12966
12967
12968
12969
12970
12971
# File 'lib/models/porcelain.rb', line 12965

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