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.
14168 14169 14170 14171 14172 14173 14174 14175 14176 14177 14178 14179 14180 14181 14182 14183 14184 14185 14186 14187 14188 14189 14190 14191 14192 14193 14194 14195 14196 14197 14198 14199 14200 14201 14202 14203 14204 |
# File 'lib/models/porcelain.rb', line 14168 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.
14134 14135 14136 |
# File 'lib/models/porcelain.rb', line 14134 def after_read_ttl @after_read_ttl end |
#database ⇒ Object
Database is the database to verify credential against.
14136 14137 14138 |
# File 'lib/models/porcelain.rb', line 14136 def database @database end |
#hostname ⇒ Object
Hostname is the hostname or IP address of the Postgres server.
14138 14139 14140 |
# File 'lib/models/porcelain.rb', line 14138 def hostname @hostname end |
#id ⇒ Object
Unique identifier of the Secret Engine.
14140 14141 14142 |
# File 'lib/models/porcelain.rb', line 14140 def id @id end |
#key_rotation_interval_days ⇒ Object
An interval of public/private key rotation for secret engine in days
14142 14143 14144 |
# File 'lib/models/porcelain.rb', line 14142 def key_rotation_interval_days @key_rotation_interval_days end |
#name ⇒ Object
Unique human-readable name of the Secret Engine.
14144 14145 14146 |
# File 'lib/models/porcelain.rb', line 14144 def name @name end |
#node_selector ⇒ Object
node selector is used to narrow down the nodes used to communicate with with secret engine
14146 14147 14148 |
# File 'lib/models/porcelain.rb', line 14146 def node_selector @node_selector end |
#password ⇒ Object
Password is the password to connect to the Postgres server.
14148 14149 14150 |
# File 'lib/models/porcelain.rb', line 14148 def password @password end |
#policy ⇒ Object
Policy for password creation
14150 14151 14152 |
# File 'lib/models/porcelain.rb', line 14150 def policy @policy end |
#port ⇒ Object
Port is the port number of the Postgres server.
14152 14153 14154 |
# File 'lib/models/porcelain.rb', line 14152 def port @port end |
#public_key ⇒ Object
Public key linked with a secret engine
14154 14155 14156 |
# File 'lib/models/porcelain.rb', line 14154 def public_key @public_key end |
#secret_store_id ⇒ Object
Backing secret store identifier
14156 14157 14158 |
# File 'lib/models/porcelain.rb', line 14156 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
14158 14159 14160 |
# File 'lib/models/porcelain.rb', line 14158 def secret_store_root_path @secret_store_root_path end |
#tags ⇒ Object
Tags is a map of key, value pairs.
14160 14161 14162 |
# File 'lib/models/porcelain.rb', line 14160 def @tags end |
#tls ⇒ Object
TLS enables TLS/SSL when connecting to the Postgres server.
14162 14163 14164 |
# File 'lib/models/porcelain.rb', line 14162 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.
14164 14165 14166 |
# File 'lib/models/porcelain.rb', line 14164 def ttl @ttl end |
#username ⇒ Object
Username is the username to connect to the Postgres server.
14166 14167 14168 |
# File 'lib/models/porcelain.rb', line 14166 def username @username end |
Instance Method Details
#to_json(options = {}) ⇒ Object
14206 14207 14208 14209 14210 14211 14212 |
# File 'lib/models/porcelain.rb', line 14206 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 |