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.
-
#node_selector ⇒ Object
node selector is used to narrow down the nodes used to communicate with with 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, 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, 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, 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, ttl: nil, username: nil) ⇒ PostgresEngine
Returns a new instance of PostgresEngine.
14108 14109 14110 14111 14112 14113 14114 14115 14116 14117 14118 14119 14120 14121 14122 14123 14124 14125 14126 14127 14128 14129 14130 14131 14132 14133 14134 14135 14136 14137 14138 14139 14140 14141 14142 14143 14144 |
# File 'lib/models/porcelain.rb', line 14108 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, 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 = == 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.
14074 14075 14076 |
# File 'lib/models/porcelain.rb', line 14074 def after_read_ttl @after_read_ttl end |
#database ⇒ Object
Database is the database to verify credential against.
14076 14077 14078 |
# File 'lib/models/porcelain.rb', line 14076 def database @database end |
#hostname ⇒ Object
Hostname is the hostname or IP address of the Postgres server.
14078 14079 14080 |
# File 'lib/models/porcelain.rb', line 14078 def hostname @hostname end |
#id ⇒ Object
Unique identifier of the Secret Engine.
14080 14081 14082 |
# File 'lib/models/porcelain.rb', line 14080 def id @id end |
#key_rotation_interval_days ⇒ Object
An interval of public/private key rotation for secret engine in days
14082 14083 14084 |
# File 'lib/models/porcelain.rb', line 14082 def key_rotation_interval_days @key_rotation_interval_days end |
#name ⇒ Object
Unique human-readable name of the Secret Engine.
14084 14085 14086 |
# File 'lib/models/porcelain.rb', line 14084 def name @name end |
#node_selector ⇒ Object
node selector is used to narrow down the nodes used to communicate with with secret engine
14086 14087 14088 |
# File 'lib/models/porcelain.rb', line 14086 def node_selector @node_selector end |
#password ⇒ Object
Password is the password to connect to the Postgres server.
14088 14089 14090 |
# File 'lib/models/porcelain.rb', line 14088 def password @password end |
#policy ⇒ Object
Policy for password creation
14090 14091 14092 |
# File 'lib/models/porcelain.rb', line 14090 def policy @policy end |
#port ⇒ Object
Port is the port number of the Postgres server.
14092 14093 14094 |
# File 'lib/models/porcelain.rb', line 14092 def port @port end |
#public_key ⇒ Object
Public key linked with a secret engine
14094 14095 14096 |
# File 'lib/models/porcelain.rb', line 14094 def public_key @public_key end |
#secret_store_id ⇒ Object
Backing secret store identifier
14096 14097 14098 |
# File 'lib/models/porcelain.rb', line 14096 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
14098 14099 14100 |
# File 'lib/models/porcelain.rb', line 14098 def secret_store_root_path @secret_store_root_path end |
#tags ⇒ Object
Tags is a map of key, value pairs.
14100 14101 14102 |
# File 'lib/models/porcelain.rb', line 14100 def @tags end |
#tls ⇒ Object
TLS enables TLS/SSL when connecting to the Postgres server.
14102 14103 14104 |
# File 'lib/models/porcelain.rb', line 14102 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.
14104 14105 14106 |
# File 'lib/models/porcelain.rb', line 14104 def ttl @ttl end |
#username ⇒ Object
Username is the username to connect to the Postgres server.
14106 14107 14108 |
# File 'lib/models/porcelain.rb', line 14106 def username @username end |
Instance Method Details
#to_json(options = {}) ⇒ Object
14146 14147 14148 14149 14150 14151 14152 |
# File 'lib/models/porcelain.rb', line 14146 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 |