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.
13061 13062 13063 13064 13065 13066 13067 13068 13069 13070 13071 13072 13073 13074 13075 13076 13077 13078 13079 13080 13081 13082 13083 13084 13085 13086 13087 13088 13089 13090 13091 13092 13093 13094 13095 |
# File 'lib/models/porcelain.rb', line 13061 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.
13029 13030 13031 |
# File 'lib/models/porcelain.rb', line 13029 def after_read_ttl @after_read_ttl end |
#database ⇒ Object
Database is the database to verify credential against.
13031 13032 13033 |
# File 'lib/models/porcelain.rb', line 13031 def database @database end |
#hostname ⇒ Object
Hostname is the hostname or IP address of the Postgres server.
13033 13034 13035 |
# File 'lib/models/porcelain.rb', line 13033 def hostname @hostname end |
#id ⇒ Object
Unique identifier of the Secret Engine.
13035 13036 13037 |
# File 'lib/models/porcelain.rb', line 13035 def id @id end |
#key_rotation_interval_days ⇒ Object
An interval of public/private key rotation for secret engine in days
13037 13038 13039 |
# File 'lib/models/porcelain.rb', line 13037 def key_rotation_interval_days @key_rotation_interval_days end |
#name ⇒ Object
Unique human-readable name of the Secret Engine.
13039 13040 13041 |
# File 'lib/models/porcelain.rb', line 13039 def name @name end |
#password ⇒ Object
Password is the password to connect to the Postgres server.
13041 13042 13043 |
# File 'lib/models/porcelain.rb', line 13041 def password @password end |
#policy ⇒ Object
Policy for password creation
13043 13044 13045 |
# File 'lib/models/porcelain.rb', line 13043 def policy @policy end |
#port ⇒ Object
Port is the port number of the Postgres server.
13045 13046 13047 |
# File 'lib/models/porcelain.rb', line 13045 def port @port end |
#public_key ⇒ Object
Public key linked with a secret engine
13047 13048 13049 |
# File 'lib/models/porcelain.rb', line 13047 def public_key @public_key end |
#secret_store_id ⇒ Object
Backing secret store identifier
13049 13050 13051 |
# File 'lib/models/porcelain.rb', line 13049 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
13051 13052 13053 |
# File 'lib/models/porcelain.rb', line 13051 def secret_store_root_path @secret_store_root_path end |
#tags ⇒ Object
Tags is a map of key, value pairs.
13053 13054 13055 |
# File 'lib/models/porcelain.rb', line 13053 def @tags end |
#tls ⇒ Object
TLS enables TLS/SSL when connecting to the Postgres server.
13055 13056 13057 |
# File 'lib/models/porcelain.rb', line 13055 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.
13057 13058 13059 |
# File 'lib/models/porcelain.rb', line 13057 def ttl @ttl end |
#username ⇒ Object
Username is the username to connect to the Postgres server.
13059 13060 13061 |
# File 'lib/models/porcelain.rb', line 13059 def username @username end |
Instance Method Details
#to_json(options = {}) ⇒ Object
13097 13098 13099 13100 13101 13102 13103 |
# File 'lib/models/porcelain.rb', line 13097 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 |