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.



11053
11054
11055
11056
11057
11058
11059
11060
11061
11062
11063
11064
11065
11066
11067
11068
11069
11070
11071
11072
11073
11074
11075
11076
11077
11078
11079
11080
11081
11082
11083
11084
11085
11086
11087
# File 'lib/models/porcelain.rb', line 11053

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.



11021
11022
11023
# File 'lib/models/porcelain.rb', line 11021

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



11023
11024
11025
# File 'lib/models/porcelain.rb', line 11023

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



11025
11026
11027
# File 'lib/models/porcelain.rb', line 11025

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



11027
11028
11029
# File 'lib/models/porcelain.rb', line 11027

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



11029
11030
11031
# File 'lib/models/porcelain.rb', line 11029

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



11031
11032
11033
# File 'lib/models/porcelain.rb', line 11031

def file_size
  @file_size
end

#heightObject

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



11033
11034
11035
# File 'lib/models/porcelain.rb', line 11033

def height
  @height
end

#impersonation_groupsObject

The impersonation groups of a Kubernetes operation.



11035
11036
11037
# File 'lib/models/porcelain.rb', line 11035

def impersonation_groups
  @impersonation_groups
end

#impersonation_userObject

The impersonation user of a Kubernetes operation.



11037
11038
11039
# File 'lib/models/porcelain.rb', line 11037

def impersonation_user
  @impersonation_user
end

#podObject

The target pod of a Kubernetes operation.



11039
11040
11041
# File 'lib/models/porcelain.rb', line 11039

def pod
  @pod
end

#privilege_groupsObject

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



11041
11042
11043
# File 'lib/models/porcelain.rb', line 11041

def privilege_groups
  @privilege_groups
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



11043
11044
11045
# File 'lib/models/porcelain.rb', line 11043

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



11045
11046
11047
# File 'lib/models/porcelain.rb', line 11045

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



11047
11048
11049
# File 'lib/models/porcelain.rb', line 11047

def request_uri
  @request_uri
end

#typeObject

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



11049
11050
11051
# File 'lib/models/porcelain.rb', line 11049

def type
  @type
end

#widthObject

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



11051
11052
11053
# File 'lib/models/porcelain.rb', line 11051

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



11089
11090
11091
11092
11093
11094
11095
# File 'lib/models/porcelain.rb', line 11089

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