Class: SDM::SqlserverEngine

Inherits:
Object
  • Object
show all
Defined in:
lib/models/porcelain.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(after_read_ttl: nil, database: nil, hostname: nil, id: nil, key_rotation_interval_days: nil, name: nil, node_selector: nil, password: nil, policy: nil, port: nil, public_key: nil, secret_store_id: nil, secret_store_root_path: nil, tags: nil, tls: nil, tls_skip_verify: nil, ttl: nil, username: nil) ⇒ SqlserverEngine

Returns a new instance of SqlserverEngine.



17448
17449
17450
17451
17452
17453
17454
17455
17456
17457
17458
17459
17460
17461
17462
17463
17464
17465
17466
17467
17468
17469
17470
17471
17472
17473
17474
17475
17476
17477
17478
17479
17480
17481
17482
17483
17484
17485
17486
# File 'lib/models/porcelain.rb', line 17448

def initialize(
  after_read_ttl: nil,
  database: nil,
  hostname: nil,
  id: nil,
  key_rotation_interval_days: nil,
  name: nil,
  node_selector: nil,
  password: nil,
  policy: nil,
  port: nil,
  public_key: nil,
  secret_store_id: nil,
  secret_store_root_path: nil,
  tags: nil,
  tls: nil,
  tls_skip_verify: nil,
  ttl: nil,
  username: nil
)
  @after_read_ttl = after_read_ttl == nil ? nil : after_read_ttl
  @database = database == nil ? "" : database
  @hostname = hostname == nil ? "" : hostname
  @id = id == nil ? "" : id
  @key_rotation_interval_days = key_rotation_interval_days == nil ? 0 : key_rotation_interval_days
  @name = name == nil ? "" : name
  @node_selector = node_selector == nil ? "" : node_selector
  @password = password == nil ? "" : password
  @policy = policy == nil ? nil : policy
  @port = port == nil ? 0 : port
  @public_key = public_key == nil ? "" : public_key
  @secret_store_id = secret_store_id == nil ? "" : secret_store_id
  @secret_store_root_path = secret_store_root_path == nil ? "" : secret_store_root_path
  @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
  @tls = tls == nil ? false : tls
  @tls_skip_verify = tls_skip_verify == nil ? false : tls_skip_verify
  @ttl = ttl == nil ? nil : ttl
  @username = username == nil ? "" : username
end

Instance Attribute Details

#after_read_ttlObject

The default time-to-live duration of the password after it's read. Once the ttl has passed, a password will be rotated.



17412
17413
17414
# File 'lib/models/porcelain.rb', line 17412

def after_read_ttl
  @after_read_ttl
end

#databaseObject

Database is the database to verify credential against.



17414
17415
17416
# File 'lib/models/porcelain.rb', line 17414

def database
  @database
end

#hostnameObject

Hostname is the hostname or IP address of the SQL Server.



17416
17417
17418
# File 'lib/models/porcelain.rb', line 17416

def hostname
  @hostname
end

#idObject

Unique identifier of the Secret Engine.



17418
17419
17420
# File 'lib/models/porcelain.rb', line 17418

def id
  @id
end

#key_rotation_interval_daysObject

An interval of public/private key rotation for secret engine in days



17420
17421
17422
# File 'lib/models/porcelain.rb', line 17420

def key_rotation_interval_days
  @key_rotation_interval_days
end

#nameObject

Unique human-readable name of the Secret Engine.



17422
17423
17424
# File 'lib/models/porcelain.rb', line 17422

def name
  @name
end

#node_selectorObject

node selector is used to narrow down the nodes used to communicate with with secret engine



17424
17425
17426
# File 'lib/models/porcelain.rb', line 17424

def node_selector
  @node_selector
end

#passwordObject

Password is the password to connect to the SQL Server server.



17426
17427
17428
# File 'lib/models/porcelain.rb', line 17426

def password
  @password
end

#policyObject

Policy for password creation



17428
17429
17430
# File 'lib/models/porcelain.rb', line 17428

def policy
  @policy
end

#portObject

Port is the port number of the SQL Server server.



17430
17431
17432
# File 'lib/models/porcelain.rb', line 17430

def port
  @port
end

#public_keyObject

Public key linked with a secret engine



17432
17433
17434
# File 'lib/models/porcelain.rb', line 17432

def public_key
  @public_key
end

#secret_store_idObject

Backing secret store identifier



17434
17435
17436
# File 'lib/models/porcelain.rb', line 17434

def secret_store_id
  @secret_store_id
end

#secret_store_root_pathObject

Backing Secret Store root path where managed secrets are going to be stored



17436
17437
17438
# File 'lib/models/porcelain.rb', line 17436

def secret_store_root_path
  @secret_store_root_path
end

#tagsObject

Tags is a map of key, value pairs.



17438
17439
17440
# File 'lib/models/porcelain.rb', line 17438

def tags
  @tags
end

#tlsObject

TLS enables TLS/SSL when connecting to the SQL Server server.



17440
17441
17442
# File 'lib/models/porcelain.rb', line 17440

def tls
  @tls
end

#tls_skip_verifyObject

TLS disable certificate verification



17442
17443
17444
# File 'lib/models/porcelain.rb', line 17442

def tls_skip_verify
  @tls_skip_verify
end

#ttlObject

The default password time-to-live duration. Once the ttl has passed, a password will be rotated the next time it's requested.



17444
17445
17446
# File 'lib/models/porcelain.rb', line 17444

def ttl
  @ttl
end

#usernameObject

Username is the username to connect to the SQL Server.



17446
17447
17448
# File 'lib/models/porcelain.rb', line 17446

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



17488
17489
17490
17491
17492
17493
17494
# File 'lib/models/porcelain.rb', line 17488

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