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.



17144
17145
17146
17147
17148
17149
17150
17151
17152
17153
17154
17155
17156
17157
17158
17159
17160
17161
17162
17163
17164
17165
17166
17167
17168
17169
17170
17171
17172
17173
17174
17175
17176
17177
17178
17179
17180
17181
17182
# File 'lib/models/porcelain.rb', line 17144

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.



17108
17109
17110
# File 'lib/models/porcelain.rb', line 17108

def after_read_ttl
  @after_read_ttl
end

#databaseObject

Database is the database to verify credential against.



17110
17111
17112
# File 'lib/models/porcelain.rb', line 17110

def database
  @database
end

#hostnameObject

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



17112
17113
17114
# File 'lib/models/porcelain.rb', line 17112

def hostname
  @hostname
end

#idObject

Unique identifier of the Secret Engine.



17114
17115
17116
# File 'lib/models/porcelain.rb', line 17114

def id
  @id
end

#key_rotation_interval_daysObject

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



17116
17117
17118
# File 'lib/models/porcelain.rb', line 17116

def key_rotation_interval_days
  @key_rotation_interval_days
end

#nameObject

Unique human-readable name of the Secret Engine.



17118
17119
17120
# File 'lib/models/porcelain.rb', line 17118

def name
  @name
end

#node_selectorObject

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



17120
17121
17122
# File 'lib/models/porcelain.rb', line 17120

def node_selector
  @node_selector
end

#passwordObject

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



17122
17123
17124
# File 'lib/models/porcelain.rb', line 17122

def password
  @password
end

#policyObject

Policy for password creation



17124
17125
17126
# File 'lib/models/porcelain.rb', line 17124

def policy
  @policy
end

#portObject

Port is the port number of the SQL Server server.



17126
17127
17128
# File 'lib/models/porcelain.rb', line 17126

def port
  @port
end

#public_keyObject

Public key linked with a secret engine



17128
17129
17130
# File 'lib/models/porcelain.rb', line 17128

def public_key
  @public_key
end

#secret_store_idObject

Backing secret store identifier



17130
17131
17132
# File 'lib/models/porcelain.rb', line 17130

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



17132
17133
17134
# File 'lib/models/porcelain.rb', line 17132

def secret_store_root_path
  @secret_store_root_path
end

#tagsObject

Tags is a map of key, value pairs.



17134
17135
17136
# File 'lib/models/porcelain.rb', line 17134

def tags
  @tags
end

#tlsObject

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



17136
17137
17138
# File 'lib/models/porcelain.rb', line 17136

def tls
  @tls
end

#tls_skip_verifyObject

TLS disable certificate verification



17138
17139
17140
# File 'lib/models/porcelain.rb', line 17138

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.



17140
17141
17142
# File 'lib/models/porcelain.rb', line 17140

def ttl
  @ttl
end

#usernameObject

Username is the username to connect to the SQL Server.



17142
17143
17144
# File 'lib/models/porcelain.rb', line 17142

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



17184
17185
17186
17187
17188
17189
17190
# File 'lib/models/porcelain.rb', line 17184

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