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.



12863
12864
12865
12866
12867
12868
12869
12870
12871
12872
12873
12874
12875
12876
12877
12878
12879
12880
12881
12882
12883
12884
12885
12886
12887
12888
12889
12890
12891
12892
12893
12894
12895
12896
12897
# File 'lib/models/porcelain.rb', line 12863

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.



12831
12832
12833
# File 'lib/models/porcelain.rb', line 12831

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



12833
12834
12835
# File 'lib/models/porcelain.rb', line 12833

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



12835
12836
12837
# File 'lib/models/porcelain.rb', line 12835

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



12837
12838
12839
# File 'lib/models/porcelain.rb', line 12837

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



12839
12840
12841
# File 'lib/models/porcelain.rb', line 12839

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



12841
12842
12843
# File 'lib/models/porcelain.rb', line 12841

def file_size
  @file_size
end

#heightObject

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



12843
12844
12845
# File 'lib/models/porcelain.rb', line 12843

def height
  @height
end

#impersonation_groupsObject

The impersonation groups of a Kubernetes operation.



12845
12846
12847
# File 'lib/models/porcelain.rb', line 12845

def impersonation_groups
  @impersonation_groups
end

#impersonation_userObject

The impersonation user of a Kubernetes operation.



12847
12848
12849
# File 'lib/models/porcelain.rb', line 12847

def impersonation_user
  @impersonation_user
end

#podObject

The target pod of a Kubernetes operation.



12849
12850
12851
# File 'lib/models/porcelain.rb', line 12849

def pod
  @pod
end

#privilege_groupsObject

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



12851
12852
12853
# File 'lib/models/porcelain.rb', line 12851

def privilege_groups
  @privilege_groups
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



12853
12854
12855
# File 'lib/models/porcelain.rb', line 12853

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



12855
12856
12857
# File 'lib/models/porcelain.rb', line 12855

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



12857
12858
12859
# File 'lib/models/porcelain.rb', line 12857

def request_uri
  @request_uri
end

#typeObject

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



12859
12860
12861
# File 'lib/models/porcelain.rb', line 12859

def type
  @type
end

#widthObject

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



12861
12862
12863
# File 'lib/models/porcelain.rb', line 12861

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



12899
12900
12901
12902
12903
12904
12905
# File 'lib/models/porcelain.rb', line 12899

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