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, request_body: nil, request_method: nil, request_uri: nil, type: nil, width: nil) ⇒ QueryCapture

Returns a new instance of QueryCapture.



9466
9467
9468
9469
9470
9471
9472
9473
9474
9475
9476
9477
9478
9479
9480
9481
9482
9483
9484
9485
9486
9487
9488
9489
9490
9491
9492
9493
9494
9495
9496
9497
9498
# File 'lib/models/porcelain.rb', line 9466

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,
  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
  @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.



9436
9437
9438
# File 'lib/models/porcelain.rb', line 9436

def client_command
  @client_command
end

#commandObject

The command executed over an SSH or Kubernetes session.



9438
9439
9440
# File 'lib/models/porcelain.rb', line 9438

def command
  @command
end

#containerObject

The target container of a Kubernetes operation.



9440
9441
9442
# File 'lib/models/porcelain.rb', line 9440

def container
  @container
end

#envObject

The environment variables for an SSH or Kubernetes session.



9442
9443
9444
# File 'lib/models/porcelain.rb', line 9442

def env
  @env
end

#file_nameObject

The remote file name of an SCP operation.



9444
9445
9446
# File 'lib/models/porcelain.rb', line 9444

def file_name
  @file_name
end

#file_sizeObject

The file size transferred for an SCP operation.



9446
9447
9448
# File 'lib/models/porcelain.rb', line 9446

def file_size
  @file_size
end

#heightObject

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



9448
9449
9450
# File 'lib/models/porcelain.rb', line 9448

def height
  @height
end

#impersonation_groupsObject

The impersonation groups of a Kubernetes operation.



9450
9451
9452
# File 'lib/models/porcelain.rb', line 9450

def impersonation_groups
  @impersonation_groups
end

#impersonation_userObject

The impersonation user of a Kubernetes operation.



9452
9453
9454
# File 'lib/models/porcelain.rb', line 9452

def impersonation_user
  @impersonation_user
end

#podObject

The target pod of a Kubernetes operation.



9454
9455
9456
# File 'lib/models/porcelain.rb', line 9454

def pod
  @pod
end

#request_bodyObject

The HTTP request body of a Kubernetes operation.



9456
9457
9458
# File 'lib/models/porcelain.rb', line 9456

def request_body
  @request_body
end

#request_methodObject

The HTTP request method of a Kubernetes operation.



9458
9459
9460
# File 'lib/models/porcelain.rb', line 9458

def request_method
  @request_method
end

#request_uriObject

The HTTP request URI of a Kubernetes operation.



9460
9461
9462
# File 'lib/models/porcelain.rb', line 9460

def request_uri
  @request_uri
end

#typeObject

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



9462
9463
9464
# File 'lib/models/porcelain.rb', line 9462

def type
  @type
end

#widthObject

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



9464
9465
9466
# File 'lib/models/porcelain.rb', line 9464

def width
  @width
end

Instance Method Details

#to_json(options = {}) ⇒ Object



9500
9501
9502
9503
9504
9505
9506
# File 'lib/models/porcelain.rb', line 9500

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