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.



13913
13914
13915
13916
13917
13918
13919
13920
13921
13922
13923
13924
13925
13926
13927
13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
13940
13941
13942
13943
13944
13945
13946
13947
# File 'lib/models/porcelain.rb', line 13913

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.



13881
13882
13883
# File 'lib/models/porcelain.rb', line 13881

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



13883
13884
13885
# File 'lib/models/porcelain.rb', line 13883

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



13885
13886
13887
# File 'lib/models/porcelain.rb', line 13885

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



13887
13888
13889
# File 'lib/models/porcelain.rb', line 13887

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



13889
13890
13891
# File 'lib/models/porcelain.rb', line 13889

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



13891
13892
13893
# File 'lib/models/porcelain.rb', line 13891

def file_size
  @file_size
end

#heightObject

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



13893
13894
13895
# File 'lib/models/porcelain.rb', line 13893

def height
  @height
end

#impersonation_groupsObject

The impersonation groups of a Kubernetes operation.



13895
13896
13897
# File 'lib/models/porcelain.rb', line 13895

def impersonation_groups
  @impersonation_groups
end

#impersonation_userObject

The impersonation user of a Kubernetes operation.



13897
13898
13899
# File 'lib/models/porcelain.rb', line 13897

def impersonation_user
  @impersonation_user
end

#podObject

The target pod of a Kubernetes operation.



13899
13900
13901
# File 'lib/models/porcelain.rb', line 13899

def pod
  @pod
end

#privilege_groupsObject

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



13901
13902
13903
# File 'lib/models/porcelain.rb', line 13901

def privilege_groups
  @privilege_groups
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



13903
13904
13905
# File 'lib/models/porcelain.rb', line 13903

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



13905
13906
13907
# File 'lib/models/porcelain.rb', line 13905

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



13907
13908
13909
# File 'lib/models/porcelain.rb', line 13907

def request_uri
  @request_uri
end

#typeObject

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



13909
13910
13911
# File 'lib/models/porcelain.rb', line 13909

def type
  @type
end

#widthObject

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



13911
13912
13913
# File 'lib/models/porcelain.rb', line 13911

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



13949
13950
13951
13952
13953
13954
13955
# File 'lib/models/porcelain.rb', line 13949

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