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.
14060 14061 14062 14063 14064 14065 14066 14067 14068 14069 14070 14071 14072 14073 14074 14075 14076 14077 14078 14079 14080 14081 14082 14083 14084 14085 14086 14087 14088 14089 14090 14091 14092 14093 14094 14095 14096 |
# File 'lib/models/porcelain.rb', line 14060 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.
14026 14027 14028 |
# File 'lib/models/porcelain.rb', line 14026 def after_read_ttl @after_read_ttl end |
#database ⇒ Object
Database is the database to verify credential against.
14028 14029 14030 |
# File 'lib/models/porcelain.rb', line 14028 def database @database end |
#hostname ⇒ Object
Hostname is the hostname or IP address of the Postgres server.
14030 14031 14032 |
# File 'lib/models/porcelain.rb', line 14030 def hostname @hostname end |
#id ⇒ Object
Unique identifier of the Secret Engine.
14032 14033 14034 |
# File 'lib/models/porcelain.rb', line 14032 def id @id end |
#key_rotation_interval_days ⇒ Object
An interval of public/private key rotation for secret engine in days
14034 14035 14036 |
# File 'lib/models/porcelain.rb', line 14034 def key_rotation_interval_days @key_rotation_interval_days end |
#name ⇒ Object
Unique human-readable name of the Secret Engine.
14036 14037 14038 |
# File 'lib/models/porcelain.rb', line 14036 def name @name end |
#node_selector ⇒ Object
node selector is used to narrow down the nodes used to communicate with with secret engine
14038 14039 14040 |
# File 'lib/models/porcelain.rb', line 14038 def node_selector @node_selector end |
#password ⇒ Object
Password is the password to connect to the Postgres server.
14040 14041 14042 |
# File 'lib/models/porcelain.rb', line 14040 def password @password end |
#policy ⇒ Object
Policy for password creation
14042 14043 14044 |
# File 'lib/models/porcelain.rb', line 14042 def policy @policy end |
#port ⇒ Object
Port is the port number of the Postgres server.
14044 14045 14046 |
# File 'lib/models/porcelain.rb', line 14044 def port @port end |
#public_key ⇒ Object
Public key linked with a secret engine
14046 14047 14048 |
# File 'lib/models/porcelain.rb', line 14046 def public_key @public_key end |
#secret_store_id ⇒ Object
Backing secret store identifier
14048 14049 14050 |
# File 'lib/models/porcelain.rb', line 14048 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
14050 14051 14052 |
# File 'lib/models/porcelain.rb', line 14050 def secret_store_root_path @secret_store_root_path end |
#tags ⇒ Object
Tags is a map of key, value pairs.
14052 14053 14054 |
# File 'lib/models/porcelain.rb', line 14052 def @tags end |
#tls ⇒ Object
TLS enables TLS/SSL when connecting to the Postgres server.
14054 14055 14056 |
# File 'lib/models/porcelain.rb', line 14054 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.
14056 14057 14058 |
# File 'lib/models/porcelain.rb', line 14056 def ttl @ttl end |
#username ⇒ Object
Username is the username to connect to the Postgres server.
14058 14059 14060 |
# File 'lib/models/porcelain.rb', line 14058 def username @username end |
Instance Method Details
#to_json(options = {}) ⇒ Object
14098 14099 14100 14101 14102 14103 14104 |
# File 'lib/models/porcelain.rb', line 14098 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 |