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.



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
17610
# File 'lib/models/porcelain.rb', line 17572

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.



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

def after_read_ttl
  @after_read_ttl
end

#databaseObject

Database is the database to verify credential against.



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

def database
  @database
end

#hostnameObject

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



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

def hostname
  @hostname
end

#idObject

Unique identifier of the Secret Engine.



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

def id
  @id
end

#key_rotation_interval_daysObject

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



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

def key_rotation_interval_days
  @key_rotation_interval_days
end

#nameObject

Unique human-readable name of the Secret Engine.



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

def name
  @name
end

#node_selectorObject

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



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

def node_selector
  @node_selector
end

#passwordObject

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



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

def password
  @password
end

#policyObject

Policy for password creation



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

def policy
  @policy
end

#portObject

Port is the port number of the SQL Server server.



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

def port
  @port
end

#public_keyObject

Public key linked with a secret engine



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

def public_key
  @public_key
end

#secret_store_idObject

Backing secret store identifier



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

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



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

def secret_store_root_path
  @secret_store_root_path
end

#tagsObject

Tags is a map of key, value pairs.



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

def tags
  @tags
end

#tlsObject

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



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

def tls
  @tls
end

#tls_skip_verifyObject

TLS disable certificate verification



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

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.



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

def ttl
  @ttl
end

#usernameObject

Username is the username to connect to the SQL Server.



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

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



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

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