Class: SDM::PostgresEngine
- Inherits:
-
Object
- Object
- SDM::PostgresEngine
- Defined in:
- lib/models/porcelain.rb
Instance Attribute Summary collapse
-
#after_read_ttl ⇒ Object
The default time-to-live duration of the password after it's read.
-
#database ⇒ Object
Database is the database to verify credential against.
-
#hostname ⇒ Object
Hostname is the hostname or IP address of the Postgres server.
-
#id ⇒ Object
Unique identifier of the Secret Engine.
-
#key_rotation_interval_days ⇒ Object
An interval of public/private key rotation for secret engine in days.
-
#name ⇒ Object
Unique human-readable name of the Secret Engine.
-
#password ⇒ Object
Password is the password to connect to the Postgres server.
-
#policy ⇒ Object
Policy for password creation.
-
#port ⇒ Object
Port is the port number of the Postgres server.
-
#public_key ⇒ Object
Public key linked with a secret engine.
-
#secret_store_id ⇒ Object
Backing secret store identifier.
-
#secret_store_root_path ⇒ Object
Backing Secret Store root path where managed secrets are going to be stored.
-
#tags ⇒ Object
Tags is a map of key, value pairs.
-
#tls ⇒ Object
TLS enables TLS/SSL when connecting to the Postgres server.
-
#ttl ⇒ Object
The default password time-to-live duration.
-
#username ⇒ Object
Username is the username to connect to the Postgres server.
Instance Method Summary collapse
-
#initialize(after_read_ttl: nil, database: nil, hostname: nil, id: nil, key_rotation_interval_days: nil, name: nil, password: nil, policy: nil, port: nil, public_key: nil, secret_store_id: nil, secret_store_root_path: nil, tags: nil, tls: nil, ttl: nil, username: nil) ⇒ PostgresEngine
constructor
A new instance of PostgresEngine.
- #to_json(options = {}) ⇒ Object
Constructor Details
#initialize(after_read_ttl: nil, database: nil, hostname: nil, id: nil, key_rotation_interval_days: nil, name: nil, password: nil, policy: nil, port: nil, public_key: nil, secret_store_id: nil, secret_store_root_path: nil, tags: nil, tls: nil, ttl: nil, username: nil) ⇒ PostgresEngine
Returns a new instance of PostgresEngine.
13347 13348 13349 13350 13351 13352 13353 13354 13355 13356 13357 13358 13359 13360 13361 13362 13363 13364 13365 13366 13367 13368 13369 13370 13371 13372 13373 13374 13375 13376 13377 13378 13379 13380 13381 |
# File 'lib/models/porcelain.rb', line 13347 def initialize( after_read_ttl: nil, database: nil, hostname: nil, id: nil, key_rotation_interval_days: nil, name: nil, password: nil, policy: nil, port: nil, public_key: nil, secret_store_id: nil, secret_store_root_path: nil, tags: nil, tls: 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 @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 = == nil ? SDM::() : @tls = tls == nil ? false : tls @ttl = ttl == nil ? nil : ttl @username = username == nil ? "" : username end |
Instance Attribute Details
#after_read_ttl ⇒ Object
The default time-to-live duration of the password after it's read. Once the ttl has passed, a password will be rotated.
13315 13316 13317 |
# File 'lib/models/porcelain.rb', line 13315 def after_read_ttl @after_read_ttl end |
#database ⇒ Object
Database is the database to verify credential against.
13317 13318 13319 |
# File 'lib/models/porcelain.rb', line 13317 def database @database end |
#hostname ⇒ Object
Hostname is the hostname or IP address of the Postgres server.
13319 13320 13321 |
# File 'lib/models/porcelain.rb', line 13319 def hostname @hostname end |
#id ⇒ Object
Unique identifier of the Secret Engine.
13321 13322 13323 |
# File 'lib/models/porcelain.rb', line 13321 def id @id end |
#key_rotation_interval_days ⇒ Object
An interval of public/private key rotation for secret engine in days
13323 13324 13325 |
# File 'lib/models/porcelain.rb', line 13323 def key_rotation_interval_days @key_rotation_interval_days end |
#name ⇒ Object
Unique human-readable name of the Secret Engine.
13325 13326 13327 |
# File 'lib/models/porcelain.rb', line 13325 def name @name end |
#password ⇒ Object
Password is the password to connect to the Postgres server.
13327 13328 13329 |
# File 'lib/models/porcelain.rb', line 13327 def password @password end |
#policy ⇒ Object
Policy for password creation
13329 13330 13331 |
# File 'lib/models/porcelain.rb', line 13329 def policy @policy end |
#port ⇒ Object
Port is the port number of the Postgres server.
13331 13332 13333 |
# File 'lib/models/porcelain.rb', line 13331 def port @port end |
#public_key ⇒ Object
Public key linked with a secret engine
13333 13334 13335 |
# File 'lib/models/porcelain.rb', line 13333 def public_key @public_key end |
#secret_store_id ⇒ Object
Backing secret store identifier
13335 13336 13337 |
# File 'lib/models/porcelain.rb', line 13335 def secret_store_id @secret_store_id end |
#secret_store_root_path ⇒ Object
Backing Secret Store root path where managed secrets are going to be stored
13337 13338 13339 |
# File 'lib/models/porcelain.rb', line 13337 def secret_store_root_path @secret_store_root_path end |
#tags ⇒ Object
Tags is a map of key, value pairs.
13339 13340 13341 |
# File 'lib/models/porcelain.rb', line 13339 def @tags end |
#tls ⇒ Object
TLS enables TLS/SSL when connecting to the Postgres server.
13341 13342 13343 |
# File 'lib/models/porcelain.rb', line 13341 def tls @tls end |
#ttl ⇒ Object
The default password time-to-live duration. Once the ttl has passed, a password will be rotated the next time it's requested.
13343 13344 13345 |
# File 'lib/models/porcelain.rb', line 13343 def ttl @ttl end |
#username ⇒ Object
Username is the username to connect to the Postgres server.
13345 13346 13347 |
# File 'lib/models/porcelain.rb', line 13345 def username @username end |
Instance Method Details
#to_json(options = {}) ⇒ Object
13383 13384 13385 13386 13387 13388 13389 |
# File 'lib/models/porcelain.rb', line 13383 def to_json( = {}) hash = {} self.instance_variables.each do |var| hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var end hash.to_json end |