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.



9980
9981
9982
9983
9984
9985
9986
9987
9988
9989
9990
9991
9992
9993
9994
9995
9996
9997
9998
9999
10000
10001
10002
10003
10004
10005
10006
10007
10008
10009
10010
10011
10012
10013
10014
# File 'lib/models/porcelain.rb', line 9980

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.



9948
9949
9950
# File 'lib/models/porcelain.rb', line 9948

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



9950
9951
9952
# File 'lib/models/porcelain.rb', line 9950

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



9952
9953
9954
# File 'lib/models/porcelain.rb', line 9952

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



9954
9955
9956
# File 'lib/models/porcelain.rb', line 9954

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



9956
9957
9958
# File 'lib/models/porcelain.rb', line 9956

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



9958
9959
9960
# File 'lib/models/porcelain.rb', line 9958

def file_size
  @file_size
end

#heightObject

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



9960
9961
9962
# File 'lib/models/porcelain.rb', line 9960

def height
  @height
end

#impersonation_groupsObject

The impersonation groups of a Kubernetes operation.



9962
9963
9964
# File 'lib/models/porcelain.rb', line 9962

def impersonation_groups
  @impersonation_groups
end

#impersonation_userObject

The impersonation user of a Kubernetes operation.



9964
9965
9966
# File 'lib/models/porcelain.rb', line 9964

def impersonation_user
  @impersonation_user
end

#podObject

The target pod of a Kubernetes operation.



9966
9967
9968
# File 'lib/models/porcelain.rb', line 9966

def pod
  @pod
end

#privilege_groupsObject

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



9968
9969
9970
# File 'lib/models/porcelain.rb', line 9968

def privilege_groups
  @privilege_groups
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



9970
9971
9972
# File 'lib/models/porcelain.rb', line 9970

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



9972
9973
9974
# File 'lib/models/porcelain.rb', line 9972

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



9974
9975
9976
# File 'lib/models/porcelain.rb', line 9974

def request_uri
  @request_uri
end

#typeObject

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



9976
9977
9978
# File 'lib/models/porcelain.rb', line 9976

def type
  @type
end

#widthObject

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



9978
9979
9980
# File 'lib/models/porcelain.rb', line 9978

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



10016
10017
10018
10019
10020
10021
10022
# File 'lib/models/porcelain.rb', line 10016

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