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.



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
17603
17604
17605
17606
17607
17608
17609
# File 'lib/models/porcelain.rb', line 17571

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.



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

def after_read_ttl
  @after_read_ttl
end

#databaseObject

Database is the database to verify credential against.



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

def database
  @database
end

#hostnameObject

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



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

def hostname
  @hostname
end

#idObject

Unique identifier of the Secret Engine.



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

def id
  @id
end

#key_rotation_interval_daysObject

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



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

def key_rotation_interval_days
  @key_rotation_interval_days
end

#nameObject

Unique human-readable name of the Secret Engine.



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

def name
  @name
end

#node_selectorObject

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



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

def node_selector
  @node_selector
end

#passwordObject

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



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

def password
  @password
end

#policyObject

Policy for password creation



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

def policy
  @policy
end

#portObject

Port is the port number of the SQL Server server.



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

def port
  @port
end

#public_keyObject

Public key linked with a secret engine



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

def public_key
  @public_key
end

#secret_store_idObject

Backing secret store identifier



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

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



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

def secret_store_root_path
  @secret_store_root_path
end

#tagsObject

Tags is a map of key, value pairs.



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

def tags
  @tags
end

#tlsObject

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



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

def tls
  @tls
end

#tls_skip_verifyObject

TLS disable certificate verification



17565
17566
17567
# File 'lib/models/porcelain.rb', line 17565

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.



17567
17568
17569
# File 'lib/models/porcelain.rb', line 17567

def ttl
  @ttl
end

#usernameObject

Username is the username to connect to the SQL Server.



17569
17570
17571
# File 'lib/models/porcelain.rb', line 17569

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



17611
17612
17613
17614
17615
17616
17617
# File 'lib/models/porcelain.rb', line 17611

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