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.
14167 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 |
# File 'lib/models/porcelain.rb', line 14167 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.
14133 14134 14135 |
# File 'lib/models/porcelain.rb', line 14133 def after_read_ttl @after_read_ttl end |
#database ⇒ Object
Database is the database to verify credential against.
14135 14136 14137 |
# File 'lib/models/porcelain.rb', line 14135 def database @database end |
#hostname ⇒ Object
Hostname is the hostname or IP address of the Postgres server.
14137 14138 14139 |
# File 'lib/models/porcelain.rb', line 14137 def hostname @hostname end |
#id ⇒ Object
Unique identifier of the Secret Engine.
14139 14140 14141 |
# File 'lib/models/porcelain.rb', line 14139 def id @id end |
#key_rotation_interval_days ⇒ Object
An interval of public/private key rotation for secret engine in days
14141 14142 14143 |
# File 'lib/models/porcelain.rb', line 14141 def key_rotation_interval_days @key_rotation_interval_days end |
#name ⇒ Object
Unique human-readable name of the Secret Engine.
14143 14144 14145 |
# File 'lib/models/porcelain.rb', line 14143 def name @name end |
#node_selector ⇒ Object
node selector is used to narrow down the nodes used to communicate with with secret engine
14145 14146 14147 |
# File 'lib/models/porcelain.rb', line 14145 def node_selector @node_selector end |
#password ⇒ Object
Password is the password to connect to the Postgres server.
14147 14148 14149 |
# File 'lib/models/porcelain.rb', line 14147 def password @password end |
#policy ⇒ Object
Policy for password creation
14149 14150 14151 |
# File 'lib/models/porcelain.rb', line 14149 def policy @policy end |
#port ⇒ Object
Port is the port number of the Postgres server.
14151 14152 14153 |
# File 'lib/models/porcelain.rb', line 14151 def port @port end |
#public_key ⇒ Object
Public key linked with a secret engine
14153 14154 14155 |
# File 'lib/models/porcelain.rb', line 14153 def public_key @public_key end |
#secret_store_id ⇒ Object
Backing secret store identifier
14155 14156 14157 |
# File 'lib/models/porcelain.rb', line 14155 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
14157 14158 14159 |
# File 'lib/models/porcelain.rb', line 14157 def secret_store_root_path @secret_store_root_path end |
#tags ⇒ Object
Tags is a map of key, value pairs.
14159 14160 14161 |
# File 'lib/models/porcelain.rb', line 14159 def @tags end |
#tls ⇒ Object
TLS enables TLS/SSL when connecting to the Postgres server.
14161 14162 14163 |
# File 'lib/models/porcelain.rb', line 14161 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.
14163 14164 14165 |
# File 'lib/models/porcelain.rb', line 14163 def ttl @ttl end |
#username ⇒ Object
Username is the username to connect to the Postgres server.
14165 14166 14167 |
# File 'lib/models/porcelain.rb', line 14165 def username @username end |
Instance Method Details
#to_json(options = {}) ⇒ Object
14205 14206 14207 14208 14209 14210 14211 |
# File 'lib/models/porcelain.rb', line 14205 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 |