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.



17564
17565
17566
17567
17568
17569
17570
17571
17572
17573
17574
17575
17576
17577
17578
17579
17580
17581
17582
17583
17584
17585
17586
17587
17588
17589
17590
17591
17592
17593
17594
17595
17596
17597
17598
17599
17600
17601
17602
# File 'lib/models/porcelain.rb', line 17564

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.



17528
17529
17530
# File 'lib/models/porcelain.rb', line 17528

def after_read_ttl
  @after_read_ttl
end

#databaseObject

Database is the database to verify credential against.



17530
17531
17532
# File 'lib/models/porcelain.rb', line 17530

def database
  @database
end

#hostnameObject

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



17532
17533
17534
# File 'lib/models/porcelain.rb', line 17532

def hostname
  @hostname
end

#idObject

Unique identifier of the Secret Engine.



17534
17535
17536
# File 'lib/models/porcelain.rb', line 17534

def id
  @id
end

#key_rotation_interval_daysObject

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



17536
17537
17538
# File 'lib/models/porcelain.rb', line 17536

def key_rotation_interval_days
  @key_rotation_interval_days
end

#nameObject

Unique human-readable name of the Secret Engine.



17538
17539
17540
# File 'lib/models/porcelain.rb', line 17538

def name
  @name
end

#node_selectorObject

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



17540
17541
17542
# File 'lib/models/porcelain.rb', line 17540

def node_selector
  @node_selector
end

#passwordObject

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



17542
17543
17544
# File 'lib/models/porcelain.rb', line 17542

def password
  @password
end

#policyObject

Policy for password creation



17544
17545
17546
# File 'lib/models/porcelain.rb', line 17544

def policy
  @policy
end

#portObject

Port is the port number of the SQL Server server.



17546
17547
17548
# File 'lib/models/porcelain.rb', line 17546

def port
  @port
end

#public_keyObject

Public key linked with a secret engine



17548
17549
17550
# File 'lib/models/porcelain.rb', line 17548

def public_key
  @public_key
end

#secret_store_idObject

Backing secret store identifier



17550
17551
17552
# File 'lib/models/porcelain.rb', line 17550

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



17552
17553
17554
# File 'lib/models/porcelain.rb', line 17552

def secret_store_root_path
  @secret_store_root_path
end

#tagsObject

Tags is a map of key, value pairs.



17554
17555
17556
# File 'lib/models/porcelain.rb', line 17554

def tags
  @tags
end

#tlsObject

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



17556
17557
17558
# File 'lib/models/porcelain.rb', line 17556

def tls
  @tls
end

#tls_skip_verifyObject

TLS disable certificate verification



17558
17559
17560
# File 'lib/models/porcelain.rb', line 17558

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.



17560
17561
17562
# File 'lib/models/porcelain.rb', line 17560

def ttl
  @ttl
end

#usernameObject

Username is the username to connect to the SQL Server.



17562
17563
17564
# File 'lib/models/porcelain.rb', line 17562

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



17604
17605
17606
17607
17608
17609
17610
# File 'lib/models/porcelain.rb', line 17604

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