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.



10135
10136
10137
10138
10139
10140
10141
10142
10143
10144
10145
10146
10147
10148
10149
10150
10151
10152
10153
10154
10155
10156
10157
10158
10159
10160
10161
10162
10163
10164
10165
10166
10167
10168
10169
# File 'lib/models/porcelain.rb', line 10135

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.



10103
10104
10105
# File 'lib/models/porcelain.rb', line 10103

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



10105
10106
10107
# File 'lib/models/porcelain.rb', line 10105

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



10107
10108
10109
# File 'lib/models/porcelain.rb', line 10107

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



10109
10110
10111
# File 'lib/models/porcelain.rb', line 10109

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



10111
10112
10113
# File 'lib/models/porcelain.rb', line 10111

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



10113
10114
10115
# File 'lib/models/porcelain.rb', line 10113

def file_size
  @file_size
end

#heightObject

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



10115
10116
10117
# File 'lib/models/porcelain.rb', line 10115

def height
  @height
end

#impersonation_groupsObject

The impersonation groups of a Kubernetes operation.



10117
10118
10119
# File 'lib/models/porcelain.rb', line 10117

def impersonation_groups
  @impersonation_groups
end

#impersonation_userObject

The impersonation user of a Kubernetes operation.



10119
10120
10121
# File 'lib/models/porcelain.rb', line 10119

def impersonation_user
  @impersonation_user
end

#podObject

The target pod of a Kubernetes operation.



10121
10122
10123
# File 'lib/models/porcelain.rb', line 10121

def pod
  @pod
end

#privilege_groupsObject

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



10123
10124
10125
# File 'lib/models/porcelain.rb', line 10123

def privilege_groups
  @privilege_groups
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



10125
10126
10127
# File 'lib/models/porcelain.rb', line 10125

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



10127
10128
10129
# File 'lib/models/porcelain.rb', line 10127

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



10129
10130
10131
# File 'lib/models/porcelain.rb', line 10129

def request_uri
  @request_uri
end

#typeObject

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



10131
10132
10133
# File 'lib/models/porcelain.rb', line 10131

def type
  @type
end

#widthObject

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



10133
10134
10135
# File 'lib/models/porcelain.rb', line 10133

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



10171
10172
10173
10174
10175
10176
10177
# File 'lib/models/porcelain.rb', line 10171

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