akeyless 3.1.1 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +23 -1
  3. data/docs/AssocTargetItem.md +2 -0
  4. data/docs/CreateCertificate.md +3 -1
  5. data/docs/CreateClassicKey.md +6 -2
  6. data/docs/CreateDBTarget.md +4 -0
  7. data/docs/CreateDFCKey.md +3 -1
  8. data/docs/CreateDynamicSecret.md +3 -1
  9. data/docs/CreateKey.md +3 -1
  10. data/docs/CreatePKICertIssuer.md +3 -1
  11. data/docs/CreatePingTarget.md +38 -0
  12. data/docs/CreatePingTargetOutput.md +18 -0
  13. data/docs/CreateRotatedSecret.md +5 -1
  14. data/docs/CreateSSHCertIssuer.md +3 -1
  15. data/docs/CreateSecret.md +3 -1
  16. data/docs/CreateTokenizer.md +3 -1
  17. data/docs/DSProducerDetails.md +48 -0
  18. data/docs/DecryptGPG.md +34 -0
  19. data/docs/DecryptGPGOutput.md +18 -0
  20. data/docs/EncryptGPG.md +32 -0
  21. data/docs/EncryptGPGOutput.md +18 -0
  22. data/docs/GatewayCreateProducerPing.md +66 -0
  23. data/docs/GatewayCreateProducerPingOutput.md +18 -0
  24. data/docs/GatewayCreateProducerSnowflake.md +4 -0
  25. data/docs/GatewayUpdateItem.md +3 -1
  26. data/docs/GatewayUpdateProducerPing.md +68 -0
  27. data/docs/GatewayUpdateProducerPingOutput.md +18 -0
  28. data/docs/GatewayUpdateProducerSnowflake.md +4 -0
  29. data/docs/GenCustomerFragment.md +4 -2
  30. data/docs/GetKubeExecCreds.md +5 -3
  31. data/docs/GetPKICertificate.md +5 -3
  32. data/docs/SecureRemoteAccess.md +2 -0
  33. data/docs/SignGPG.md +32 -0
  34. data/docs/SignGPGOutput.md +18 -0
  35. data/docs/TargetTypeDetailsInput.md +14 -0
  36. data/docs/UpdateDBTarget.md +4 -0
  37. data/docs/UpdateItem.md +3 -1
  38. data/docs/UpdatePKICertIssuer.md +3 -1
  39. data/docs/UpdatePingTarget.md +44 -0
  40. data/docs/UpdateRotatedSecret.md +5 -1
  41. data/docs/UpdateSSHCertIssuer.md +3 -1
  42. data/docs/UploadPKCS12.md +3 -1
  43. data/docs/UploadRSA.md +3 -1
  44. data/docs/V2Api.md +504 -0
  45. data/docs/VerifyGPG.md +32 -0
  46. data/lib/akeyless/api/v2_api.rb +512 -0
  47. data/lib/akeyless/models/assoc_target_item.rb +11 -1
  48. data/lib/akeyless/models/create_certificate.rb +12 -2
  49. data/lib/akeyless/models/create_classic_key.rb +23 -3
  50. data/lib/akeyless/models/create_db_target.rb +21 -1
  51. data/lib/akeyless/models/create_dfc_key.rb +12 -2
  52. data/lib/akeyless/models/create_dynamic_secret.rb +12 -4
  53. data/lib/akeyless/models/create_key.rb +12 -2
  54. data/lib/akeyless/models/create_ping_target.rb +329 -0
  55. data/lib/akeyless/models/create_ping_target_output.rb +219 -0
  56. data/lib/akeyless/models/create_pki_cert_issuer.rb +12 -2
  57. data/lib/akeyless/models/create_rotated_secret.rb +24 -2
  58. data/lib/akeyless/models/create_secret.rb +12 -2
  59. data/lib/akeyless/models/create_ssh_cert_issuer.rb +12 -2
  60. data/lib/akeyless/models/create_tokenizer.rb +12 -2
  61. data/lib/akeyless/models/decrypt_gpg.rb +310 -0
  62. data/lib/akeyless/models/decrypt_gpg_output.rb +219 -0
  63. data/lib/akeyless/models/ds_producer_details.rb +235 -1
  64. data/lib/akeyless/models/encrypt_gpg.rb +300 -0
  65. data/lib/akeyless/models/encrypt_gpg_output.rb +219 -0
  66. data/lib/akeyless/models/gateway_create_producer_ping.rb +482 -0
  67. data/lib/akeyless/models/gateway_create_producer_ping_output.rb +219 -0
  68. data/lib/akeyless/models/gateway_create_producer_snowflake.rb +22 -2
  69. data/lib/akeyless/models/gateway_update_item.rb +14 -2
  70. data/lib/akeyless/models/gateway_update_producer_ping.rb +492 -0
  71. data/lib/akeyless/models/gateway_update_producer_ping_output.rb +219 -0
  72. data/lib/akeyless/models/gateway_update_producer_snowflake.rb +22 -2
  73. data/lib/akeyless/models/gen_customer_fragment.rb +15 -5
  74. data/lib/akeyless/models/get_kube_exec_creds.rb +14 -4
  75. data/lib/akeyless/models/get_pki_certificate.rb +14 -4
  76. data/lib/akeyless/models/secure_remote_access.rb +10 -1
  77. data/lib/akeyless/models/sign_gpg.rb +300 -0
  78. data/lib/akeyless/models/sign_gpg_output.rb +219 -0
  79. data/lib/akeyless/models/target_type_details_input.rb +65 -1
  80. data/lib/akeyless/models/update_db_target.rb +21 -1
  81. data/lib/akeyless/models/update_item.rb +14 -2
  82. data/lib/akeyless/models/update_ping_target.rb +358 -0
  83. data/lib/akeyless/models/update_pki_cert_issuer.rb +12 -2
  84. data/lib/akeyless/models/update_rotated_secret.rb +26 -2
  85. data/lib/akeyless/models/update_ssh_cert_issuer.rb +12 -2
  86. data/lib/akeyless/models/upload_pkcs12.rb +12 -2
  87. data/lib/akeyless/models/upload_rsa.rb +12 -2
  88. data/lib/akeyless/models/verify_gpg.rb +300 -0
  89. data/lib/akeyless/version.rb +1 -1
  90. data/lib/akeyless.rb +14 -0
  91. data/spec/models/create_ping_target_output_spec.rb +34 -0
  92. data/spec/models/create_ping_target_spec.rb +94 -0
  93. data/spec/models/decrypt_gpg_output_spec.rb +34 -0
  94. data/spec/models/decrypt_gpg_spec.rb +82 -0
  95. data/spec/models/encrypt_gpg_output_spec.rb +34 -0
  96. data/spec/models/encrypt_gpg_spec.rb +76 -0
  97. data/spec/models/gateway_create_producer_ping_output_spec.rb +34 -0
  98. data/spec/models/gateway_create_producer_ping_spec.rb +178 -0
  99. data/spec/models/gateway_update_producer_ping_output_spec.rb +34 -0
  100. data/spec/models/gateway_update_producer_ping_spec.rb +184 -0
  101. data/spec/models/sign_gpg_output_spec.rb +34 -0
  102. data/spec/models/sign_gpg_spec.rb +76 -0
  103. data/spec/models/update_ping_target_spec.rb +112 -0
  104. data/spec/models/verify_gpg_spec.rb +76 -0
  105. metadata +609 -553
@@ -0,0 +1,358 @@
1
+ =begin
2
+ #Akeyless API
3
+
4
+ #The purpose of this application is to provide access to Akeyless API.
5
+
6
+ The version of the OpenAPI document: 2.0
7
+ Contact: support@akeyless.io
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 6.3.0-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Akeyless
17
+ class UpdatePingTarget
18
+ # Ping Federate administrative port
19
+ attr_accessor :administrative_port
20
+
21
+ # Ping Federate authorization port
22
+ attr_accessor :authorization_port
23
+
24
+ # Comment about the target
25
+ attr_accessor :comment
26
+
27
+ # Set output format to JSON
28
+ attr_accessor :json
29
+
30
+ attr_accessor :keep_prev_version
31
+
32
+ # The name of a key that used to encrypt the target secret value (if empty, the account default protectionKey key will be used)
33
+ attr_accessor :key
34
+
35
+ # Target name
36
+ attr_accessor :name
37
+
38
+ # New target name
39
+ attr_accessor :new_name
40
+
41
+ # Ping Federate privileged user password
42
+ attr_accessor :password
43
+
44
+ # Ping URL
45
+ attr_accessor :ping_url
46
+
47
+ # Ping Federate privileged user
48
+ attr_accessor :privileged_user
49
+
50
+ # Authentication token (see `/auth` and `/configure`)
51
+ attr_accessor :token
52
+
53
+ # The universal identity token, Required only for universal_identity authentication
54
+ attr_accessor :uid_token
55
+
56
+ # Deprecated
57
+ attr_accessor :update_version
58
+
59
+ # Attribute mapping from ruby-style variable name to JSON key.
60
+ def self.attribute_map
61
+ {
62
+ :'administrative_port' => :'administrative-port',
63
+ :'authorization_port' => :'authorization-port',
64
+ :'comment' => :'comment',
65
+ :'json' => :'json',
66
+ :'keep_prev_version' => :'keep-prev-version',
67
+ :'key' => :'key',
68
+ :'name' => :'name',
69
+ :'new_name' => :'new-name',
70
+ :'password' => :'password',
71
+ :'ping_url' => :'ping-url',
72
+ :'privileged_user' => :'privileged-user',
73
+ :'token' => :'token',
74
+ :'uid_token' => :'uid-token',
75
+ :'update_version' => :'update-version'
76
+ }
77
+ end
78
+
79
+ # Returns all the JSON keys this model knows about
80
+ def self.acceptable_attributes
81
+ attribute_map.values
82
+ end
83
+
84
+ # Attribute type mapping.
85
+ def self.openapi_types
86
+ {
87
+ :'administrative_port' => :'String',
88
+ :'authorization_port' => :'String',
89
+ :'comment' => :'String',
90
+ :'json' => :'Boolean',
91
+ :'keep_prev_version' => :'String',
92
+ :'key' => :'String',
93
+ :'name' => :'String',
94
+ :'new_name' => :'String',
95
+ :'password' => :'String',
96
+ :'ping_url' => :'String',
97
+ :'privileged_user' => :'String',
98
+ :'token' => :'String',
99
+ :'uid_token' => :'String',
100
+ :'update_version' => :'Boolean'
101
+ }
102
+ end
103
+
104
+ # List of attributes with nullable: true
105
+ def self.openapi_nullable
106
+ Set.new([
107
+ ])
108
+ end
109
+
110
+ # Initializes the object
111
+ # @param [Hash] attributes Model attributes in the form of hash
112
+ def initialize(attributes = {})
113
+ if (!attributes.is_a?(Hash))
114
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Akeyless::UpdatePingTarget` initialize method"
115
+ end
116
+
117
+ # check to see if the attribute exists and convert string to symbol for hash key
118
+ attributes = attributes.each_with_object({}) { |(k, v), h|
119
+ if (!self.class.attribute_map.key?(k.to_sym))
120
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Akeyless::UpdatePingTarget`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
121
+ end
122
+ h[k.to_sym] = v
123
+ }
124
+
125
+ if attributes.key?(:'administrative_port')
126
+ self.administrative_port = attributes[:'administrative_port']
127
+ else
128
+ self.administrative_port = '9999'
129
+ end
130
+
131
+ if attributes.key?(:'authorization_port')
132
+ self.authorization_port = attributes[:'authorization_port']
133
+ else
134
+ self.authorization_port = '9031'
135
+ end
136
+
137
+ if attributes.key?(:'comment')
138
+ self.comment = attributes[:'comment']
139
+ end
140
+
141
+ if attributes.key?(:'json')
142
+ self.json = attributes[:'json']
143
+ end
144
+
145
+ if attributes.key?(:'keep_prev_version')
146
+ self.keep_prev_version = attributes[:'keep_prev_version']
147
+ end
148
+
149
+ if attributes.key?(:'key')
150
+ self.key = attributes[:'key']
151
+ end
152
+
153
+ if attributes.key?(:'name')
154
+ self.name = attributes[:'name']
155
+ end
156
+
157
+ if attributes.key?(:'new_name')
158
+ self.new_name = attributes[:'new_name']
159
+ end
160
+
161
+ if attributes.key?(:'password')
162
+ self.password = attributes[:'password']
163
+ end
164
+
165
+ if attributes.key?(:'ping_url')
166
+ self.ping_url = attributes[:'ping_url']
167
+ end
168
+
169
+ if attributes.key?(:'privileged_user')
170
+ self.privileged_user = attributes[:'privileged_user']
171
+ end
172
+
173
+ if attributes.key?(:'token')
174
+ self.token = attributes[:'token']
175
+ end
176
+
177
+ if attributes.key?(:'uid_token')
178
+ self.uid_token = attributes[:'uid_token']
179
+ end
180
+
181
+ if attributes.key?(:'update_version')
182
+ self.update_version = attributes[:'update_version']
183
+ end
184
+ end
185
+
186
+ # Show invalid properties with the reasons. Usually used together with valid?
187
+ # @return Array for valid properties with the reasons
188
+ def list_invalid_properties
189
+ invalid_properties = Array.new
190
+ if @name.nil?
191
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
192
+ end
193
+
194
+ invalid_properties
195
+ end
196
+
197
+ # Check to see if the all the properties in the model are valid
198
+ # @return true if the model is valid
199
+ def valid?
200
+ return false if @name.nil?
201
+ true
202
+ end
203
+
204
+ # Checks equality by comparing each attribute.
205
+ # @param [Object] Object to be compared
206
+ def ==(o)
207
+ return true if self.equal?(o)
208
+ self.class == o.class &&
209
+ administrative_port == o.administrative_port &&
210
+ authorization_port == o.authorization_port &&
211
+ comment == o.comment &&
212
+ json == o.json &&
213
+ keep_prev_version == o.keep_prev_version &&
214
+ key == o.key &&
215
+ name == o.name &&
216
+ new_name == o.new_name &&
217
+ password == o.password &&
218
+ ping_url == o.ping_url &&
219
+ privileged_user == o.privileged_user &&
220
+ token == o.token &&
221
+ uid_token == o.uid_token &&
222
+ update_version == o.update_version
223
+ end
224
+
225
+ # @see the `==` method
226
+ # @param [Object] Object to be compared
227
+ def eql?(o)
228
+ self == o
229
+ end
230
+
231
+ # Calculates hash code according to all attributes.
232
+ # @return [Integer] Hash code
233
+ def hash
234
+ [administrative_port, authorization_port, comment, json, keep_prev_version, key, name, new_name, password, ping_url, privileged_user, token, uid_token, update_version].hash
235
+ end
236
+
237
+ # Builds the object from hash
238
+ # @param [Hash] attributes Model attributes in the form of hash
239
+ # @return [Object] Returns the model itself
240
+ def self.build_from_hash(attributes)
241
+ new.build_from_hash(attributes)
242
+ end
243
+
244
+ # Builds the object from hash
245
+ # @param [Hash] attributes Model attributes in the form of hash
246
+ # @return [Object] Returns the model itself
247
+ def build_from_hash(attributes)
248
+ return nil unless attributes.is_a?(Hash)
249
+ attributes = attributes.transform_keys(&:to_sym)
250
+ self.class.openapi_types.each_pair do |key, type|
251
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
252
+ self.send("#{key}=", nil)
253
+ elsif type =~ /\AArray<(.*)>/i
254
+ # check to ensure the input is an array given that the attribute
255
+ # is documented as an array but the input is not
256
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
257
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
258
+ end
259
+ elsif !attributes[self.class.attribute_map[key]].nil?
260
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
261
+ end
262
+ end
263
+
264
+ self
265
+ end
266
+
267
+ # Deserializes the data based on type
268
+ # @param string type Data type
269
+ # @param string value Value to be deserialized
270
+ # @return [Object] Deserialized data
271
+ def _deserialize(type, value)
272
+ case type.to_sym
273
+ when :Time
274
+ Time.parse(value)
275
+ when :Date
276
+ Date.parse(value)
277
+ when :String
278
+ value.to_s
279
+ when :Integer
280
+ value.to_i
281
+ when :Float
282
+ value.to_f
283
+ when :Boolean
284
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
285
+ true
286
+ else
287
+ false
288
+ end
289
+ when :Object
290
+ # generic object (usually a Hash), return directly
291
+ value
292
+ when /\AArray<(?<inner_type>.+)>\z/
293
+ inner_type = Regexp.last_match[:inner_type]
294
+ value.map { |v| _deserialize(inner_type, v) }
295
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
296
+ k_type = Regexp.last_match[:k_type]
297
+ v_type = Regexp.last_match[:v_type]
298
+ {}.tap do |hash|
299
+ value.each do |k, v|
300
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
301
+ end
302
+ end
303
+ else # model
304
+ # models (e.g. Pet) or oneOf
305
+ klass = Akeyless.const_get(type)
306
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
307
+ end
308
+ end
309
+
310
+ # Returns the string representation of the object
311
+ # @return [String] String presentation of the object
312
+ def to_s
313
+ to_hash.to_s
314
+ end
315
+
316
+ # to_body is an alias to to_hash (backward compatibility)
317
+ # @return [Hash] Returns the object in the form of hash
318
+ def to_body
319
+ to_hash
320
+ end
321
+
322
+ # Returns the object in the form of hash
323
+ # @return [Hash] Returns the object in the form of hash
324
+ def to_hash
325
+ hash = {}
326
+ self.class.attribute_map.each_pair do |attr, param|
327
+ value = self.send(attr)
328
+ if value.nil?
329
+ is_nullable = self.class.openapi_nullable.include?(attr)
330
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
331
+ end
332
+
333
+ hash[param] = _to_hash(value)
334
+ end
335
+ hash
336
+ end
337
+
338
+ # Outputs non-array value in the form of hash
339
+ # For object, use to_hash. Otherwise, just return the value
340
+ # @param [Object] value Any valid value
341
+ # @return [Hash] Returns the value in the form of hash
342
+ def _to_hash(value)
343
+ if value.is_a?(Array)
344
+ value.compact.map { |v| _to_hash(v) }
345
+ elsif value.is_a?(Hash)
346
+ {}.tap do |hash|
347
+ value.each { |k, v| hash[k] = _to_hash(v) }
348
+ end
349
+ elsif value.respond_to? :to_hash
350
+ value.to_hash
351
+ else
352
+ value
353
+ end
354
+ end
355
+
356
+ end
357
+
358
+ end
@@ -39,6 +39,9 @@ module Akeyless
39
39
  # A comma-separated list of the country that will be set in the issued certificate
40
40
  attr_accessor :country
41
41
 
42
+ # Description of the object
43
+ attr_accessor :description
44
+
42
45
  # Set output format to JSON
43
46
  attr_accessor :json
44
47
 
@@ -48,7 +51,7 @@ module Akeyless
48
51
  # A comma-separated list of the locality that will be set in the issued certificate
49
52
  attr_accessor :locality
50
53
 
51
- # A metadata about the issuer
54
+ # Deprecated - use description
52
55
  attr_accessor :metadata
53
56
 
54
57
  # PKI certificate issuer name
@@ -107,6 +110,7 @@ module Akeyless
107
110
  :'client_flag' => :'client-flag',
108
111
  :'code_signing_flag' => :'code-signing-flag',
109
112
  :'country' => :'country',
113
+ :'description' => :'description',
110
114
  :'json' => :'json',
111
115
  :'key_usage' => :'key-usage',
112
116
  :'locality' => :'locality',
@@ -145,6 +149,7 @@ module Akeyless
145
149
  :'client_flag' => :'Boolean',
146
150
  :'code_signing_flag' => :'Boolean',
147
151
  :'country' => :'String',
152
+ :'description' => :'String',
148
153
  :'json' => :'Boolean',
149
154
  :'key_usage' => :'String',
150
155
  :'locality' => :'String',
@@ -222,6 +227,10 @@ module Akeyless
222
227
  self.country = attributes[:'country']
223
228
  end
224
229
 
230
+ if attributes.key?(:'description')
231
+ self.description = attributes[:'description']
232
+ end
233
+
225
234
  if attributes.key?(:'json')
226
235
  self.json = attributes[:'json']
227
236
  end
@@ -344,6 +353,7 @@ module Akeyless
344
353
  client_flag == o.client_flag &&
345
354
  code_signing_flag == o.code_signing_flag &&
346
355
  country == o.country &&
356
+ description == o.description &&
347
357
  json == o.json &&
348
358
  key_usage == o.key_usage &&
349
359
  locality == o.locality &&
@@ -374,7 +384,7 @@ module Akeyless
374
384
  # Calculates hash code according to all attributes.
375
385
  # @return [Integer] Hash code
376
386
  def hash
377
- [add_tag, allow_any_name, allow_subdomains, allowed_domains, allowed_uri_sans, client_flag, code_signing_flag, country, json, key_usage, locality, metadata, name, new_name, not_enforce_hostnames, not_require_cn, organizational_units, organizations, postal_code, province, rm_tag, server_flag, signer_key_name, street_address, token, ttl, uid_token].hash
387
+ [add_tag, allow_any_name, allow_subdomains, allowed_domains, allowed_uri_sans, client_flag, code_signing_flag, country, description, json, key_usage, locality, metadata, name, new_name, not_enforce_hostnames, not_require_cn, organizational_units, organizations, postal_code, province, rm_tag, server_flag, signer_key_name, street_address, token, ttl, uid_token].hash
378
388
  end
379
389
 
380
390
  # Builds the object from hash
@@ -31,6 +31,9 @@ module Akeyless
31
31
 
32
32
  attr_accessor :custom_payload
33
33
 
34
+ # Description of the object
35
+ attr_accessor :description
36
+
34
37
  # Base64-encoded service account private key text
35
38
  attr_accessor :gcp_key
36
39
 
@@ -45,7 +48,7 @@ module Akeyless
45
48
  # Secret name
46
49
  attr_accessor :name
47
50
 
48
- # New item metadata
51
+ # Deprecated - use description
49
52
  attr_accessor :new_metadata
50
53
 
51
54
  # New item name
@@ -57,6 +60,9 @@ module Akeyless
57
60
  # List of the existent tags that will be removed from this item
58
61
  attr_accessor :rm_tag
59
62
 
63
+ # Rotate the value of the secret after SRA session ends
64
+ attr_accessor :rotate_after_disconnect
65
+
60
66
  attr_accessor :rotated_password
61
67
 
62
68
  attr_accessor :rotated_username
@@ -133,6 +139,7 @@ module Akeyless
133
139
  :'auto_rotate' => :'auto-rotate',
134
140
  :'aws_region' => :'aws-region',
135
141
  :'custom_payload' => :'custom-payload',
142
+ :'description' => :'description',
136
143
  :'gcp_key' => :'gcp-key',
137
144
  :'json' => :'json',
138
145
  :'keep_prev_version' => :'keep-prev-version',
@@ -142,6 +149,7 @@ module Akeyless
142
149
  :'new_name' => :'new-name',
143
150
  :'new_version' => :'new-version',
144
151
  :'rm_tag' => :'rm-tag',
152
+ :'rotate_after_disconnect' => :'rotate-after-disconnect',
145
153
  :'rotated_password' => :'rotated-password',
146
154
  :'rotated_username' => :'rotated-username',
147
155
  :'rotation_hour' => :'rotation-hour',
@@ -183,6 +191,7 @@ module Akeyless
183
191
  :'auto_rotate' => :'String',
184
192
  :'aws_region' => :'String',
185
193
  :'custom_payload' => :'String',
194
+ :'description' => :'String',
186
195
  :'gcp_key' => :'String',
187
196
  :'json' => :'Boolean',
188
197
  :'keep_prev_version' => :'String',
@@ -192,6 +201,7 @@ module Akeyless
192
201
  :'new_name' => :'String',
193
202
  :'new_version' => :'Boolean',
194
203
  :'rm_tag' => :'Array<String>',
204
+ :'rotate_after_disconnect' => :'String',
195
205
  :'rotated_password' => :'String',
196
206
  :'rotated_username' => :'String',
197
207
  :'rotation_hour' => :'Integer',
@@ -268,6 +278,12 @@ module Akeyless
268
278
  self.custom_payload = attributes[:'custom_payload']
269
279
  end
270
280
 
281
+ if attributes.key?(:'description')
282
+ self.description = attributes[:'description']
283
+ else
284
+ self.description = 'default_metadata'
285
+ end
286
+
271
287
  if attributes.key?(:'gcp_key')
272
288
  self.gcp_key = attributes[:'gcp_key']
273
289
  end
@@ -308,6 +324,12 @@ module Akeyless
308
324
  end
309
325
  end
310
326
 
327
+ if attributes.key?(:'rotate_after_disconnect')
328
+ self.rotate_after_disconnect = attributes[:'rotate_after_disconnect']
329
+ else
330
+ self.rotate_after_disconnect = 'false'
331
+ end
332
+
311
333
  if attributes.key?(:'rotated_password')
312
334
  self.rotated_password = attributes[:'rotated_password']
313
335
  end
@@ -444,6 +466,7 @@ module Akeyless
444
466
  auto_rotate == o.auto_rotate &&
445
467
  aws_region == o.aws_region &&
446
468
  custom_payload == o.custom_payload &&
469
+ description == o.description &&
447
470
  gcp_key == o.gcp_key &&
448
471
  json == o.json &&
449
472
  keep_prev_version == o.keep_prev_version &&
@@ -453,6 +476,7 @@ module Akeyless
453
476
  new_name == o.new_name &&
454
477
  new_version == o.new_version &&
455
478
  rm_tag == o.rm_tag &&
479
+ rotate_after_disconnect == o.rotate_after_disconnect &&
456
480
  rotated_password == o.rotated_password &&
457
481
  rotated_username == o.rotated_username &&
458
482
  rotation_hour == o.rotation_hour &&
@@ -488,7 +512,7 @@ module Akeyless
488
512
  # Calculates hash code according to all attributes.
489
513
  # @return [Integer] Hash code
490
514
  def hash
491
- [add_tag, api_id, api_key, auto_rotate, aws_region, custom_payload, gcp_key, json, keep_prev_version, key, name, new_metadata, new_name, new_version, rm_tag, rotated_password, rotated_username, rotation_hour, rotation_interval, rotator_creds_type, rotator_custom_cmd, secure_access_allow_external_user, secure_access_aws_account_id, secure_access_aws_native_cli, secure_access_bastion_issuer, secure_access_db_name, secure_access_db_schema, secure_access_enable, secure_access_host, secure_access_rdp_domain, secure_access_rdp_user, secure_access_web, secure_access_web_browsing, secure_access_web_proxy, ssh_password, ssh_username, storage_account_key_name, token, uid_token].hash
515
+ [add_tag, api_id, api_key, auto_rotate, aws_region, custom_payload, description, gcp_key, json, keep_prev_version, key, name, new_metadata, new_name, new_version, rm_tag, rotate_after_disconnect, rotated_password, rotated_username, rotation_hour, rotation_interval, rotator_creds_type, rotator_custom_cmd, secure_access_allow_external_user, secure_access_aws_account_id, secure_access_aws_native_cli, secure_access_bastion_issuer, secure_access_db_name, secure_access_db_schema, secure_access_enable, secure_access_host, secure_access_rdp_domain, secure_access_rdp_user, secure_access_web, secure_access_web_browsing, secure_access_web_proxy, ssh_password, ssh_username, storage_account_key_name, token, uid_token].hash
492
516
  end
493
517
 
494
518
  # Builds the object from hash
@@ -21,13 +21,16 @@ module Akeyless
21
21
  # Users allowed to fetch the certificate, e.g root,ubuntu
22
22
  attr_accessor :allowed_users
23
23
 
24
+ # Description of the object
25
+ attr_accessor :description
26
+
24
27
  # Signed certificates with extensions, e.g permit-port-forwarding=\\\"\\\"
25
28
  attr_accessor :extensions
26
29
 
27
30
  # Set output format to JSON
28
31
  attr_accessor :json
29
32
 
30
- # A metadata about the issuer
33
+ # Deprecated - use description
31
34
  attr_accessor :metadata
32
35
 
33
36
  # SSH certificate issuer name
@@ -71,6 +74,7 @@ module Akeyless
71
74
  {
72
75
  :'add_tag' => :'add-tag',
73
76
  :'allowed_users' => :'allowed-users',
77
+ :'description' => :'description',
74
78
  :'extensions' => :'extensions',
75
79
  :'json' => :'json',
76
80
  :'metadata' => :'metadata',
@@ -101,6 +105,7 @@ module Akeyless
101
105
  {
102
106
  :'add_tag' => :'Array<String>',
103
107
  :'allowed_users' => :'String',
108
+ :'description' => :'String',
104
109
  :'extensions' => :'Hash<String, String>',
105
110
  :'json' => :'Boolean',
106
111
  :'metadata' => :'String',
@@ -152,6 +157,10 @@ module Akeyless
152
157
  self.allowed_users = attributes[:'allowed_users']
153
158
  end
154
159
 
160
+ if attributes.key?(:'description')
161
+ self.description = attributes[:'description']
162
+ end
163
+
155
164
  if attributes.key?(:'extensions')
156
165
  if (value = attributes[:'extensions']).is_a?(Hash)
157
166
  self.extensions = value
@@ -267,6 +276,7 @@ module Akeyless
267
276
  self.class == o.class &&
268
277
  add_tag == o.add_tag &&
269
278
  allowed_users == o.allowed_users &&
279
+ description == o.description &&
270
280
  extensions == o.extensions &&
271
281
  json == o.json &&
272
282
  metadata == o.metadata &&
@@ -295,7 +305,7 @@ module Akeyless
295
305
  # Calculates hash code according to all attributes.
296
306
  # @return [Integer] Hash code
297
307
  def hash
298
- [add_tag, allowed_users, extensions, json, metadata, name, new_name, principals, rm_tag, secure_access_bastion_api, secure_access_bastion_ssh, secure_access_enable, secure_access_host, secure_access_ssh_creds_user, secure_access_use_internal_bastion, signer_key_name, token, ttl, uid_token].hash
308
+ [add_tag, allowed_users, description, extensions, json, metadata, name, new_name, principals, rm_tag, secure_access_bastion_api, secure_access_bastion_ssh, secure_access_enable, secure_access_host, secure_access_ssh_creds_user, secure_access_use_internal_bastion, signer_key_name, token, ttl, uid_token].hash
299
309
  end
300
310
 
301
311
  # Builds the object from hash
@@ -21,13 +21,16 @@ module Akeyless
21
21
  # Protection from accidental deletion of this item
22
22
  attr_accessor :delete_protection
23
23
 
24
+ # Description of the object
25
+ attr_accessor :description
26
+
24
27
  # PKCS#12 input file (private key and certificate only)
25
28
  attr_accessor :_in
26
29
 
27
30
  # Set output format to JSON
28
31
  attr_accessor :json
29
32
 
30
- # A metadata about the key
33
+ # Deprecated - use description
31
34
  attr_accessor :metadata
32
35
 
33
36
  # Name of key to be created
@@ -53,6 +56,7 @@ module Akeyless
53
56
  {
54
57
  :'customer_frg_id' => :'customer-frg-id',
55
58
  :'delete_protection' => :'delete_protection',
59
+ :'description' => :'description',
56
60
  :'_in' => :'in',
57
61
  :'json' => :'json',
58
62
  :'metadata' => :'metadata',
@@ -75,6 +79,7 @@ module Akeyless
75
79
  {
76
80
  :'customer_frg_id' => :'String',
77
81
  :'delete_protection' => :'String',
82
+ :'description' => :'String',
78
83
  :'_in' => :'String',
79
84
  :'json' => :'Boolean',
80
85
  :'metadata' => :'String',
@@ -116,6 +121,10 @@ module Akeyless
116
121
  self.delete_protection = attributes[:'delete_protection']
117
122
  end
118
123
 
124
+ if attributes.key?(:'description')
125
+ self.description = attributes[:'description']
126
+ end
127
+
119
128
  if attributes.key?(:'_in')
120
129
  self._in = attributes[:'_in']
121
130
  end
@@ -192,6 +201,7 @@ module Akeyless
192
201
  self.class == o.class &&
193
202
  customer_frg_id == o.customer_frg_id &&
194
203
  delete_protection == o.delete_protection &&
204
+ description == o.description &&
195
205
  _in == o._in &&
196
206
  json == o.json &&
197
207
  metadata == o.metadata &&
@@ -212,7 +222,7 @@ module Akeyless
212
222
  # Calculates hash code according to all attributes.
213
223
  # @return [Integer] Hash code
214
224
  def hash
215
- [customer_frg_id, delete_protection, _in, json, metadata, name, passphrase, split_level, tag, token, uid_token].hash
225
+ [customer_frg_id, delete_protection, description, _in, json, metadata, name, passphrase, split_level, tag, token, uid_token].hash
216
226
  end
217
227
 
218
228
  # Builds the object from hash