akeyless 5.0.3 → 5.0.5

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 (241) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -2
  3. data/docs/AWSGatewayCloudIdentityExternalIdOpt.md +22 -0
  4. data/docs/AWSTargetDetails.md +2 -0
  5. data/docs/AccountGeneralSettings.md +6 -0
  6. data/docs/AzureTargetDetails.md +2 -0
  7. data/docs/CertificateExpirationEventsSettings.md +20 -0
  8. data/docs/CreateAWSTarget.md +4 -0
  9. data/docs/CreatePKICertIssuer.md +3 -1
  10. data/docs/DSProducerDetails.md +14 -0
  11. data/docs/DynamicSecretCreateArtifactory.md +2 -0
  12. data/docs/DynamicSecretCreateAws.md +4 -0
  13. data/docs/DynamicSecretCreateAzure.md +4 -0
  14. data/docs/DynamicSecretCreateCassandra.md +2 -0
  15. data/docs/DynamicSecretCreateChef.md +2 -0
  16. data/docs/DynamicSecretCreateGcp.md +2 -0
  17. data/docs/DynamicSecretCreateHanaDb.md +4 -0
  18. data/docs/DynamicSecretCreateK8s.md +2 -0
  19. data/docs/DynamicSecretCreateLdap.md +2 -0
  20. data/docs/DynamicSecretCreateMongoDb.md +4 -0
  21. data/docs/DynamicSecretCreateMsSql.md +4 -0
  22. data/docs/DynamicSecretCreateMySql.md +4 -0
  23. data/docs/DynamicSecretCreateOracleDb.md +2 -0
  24. data/docs/DynamicSecretCreatePostgreSql.md +4 -0
  25. data/docs/DynamicSecretCreateRdp.md +2 -0
  26. data/docs/DynamicSecretCreateRedis.md +2 -0
  27. data/docs/DynamicSecretCreateRedshift.md +2 -0
  28. data/docs/DynamicSecretCreateSnowflake.md +6 -0
  29. data/docs/DynamicSecretUpdateArtifactory.md +2 -0
  30. data/docs/DynamicSecretUpdateAws.md +4 -0
  31. data/docs/DynamicSecretUpdateAzure.md +4 -0
  32. data/docs/DynamicSecretUpdateCassandra.md +2 -0
  33. data/docs/DynamicSecretUpdateChef.md +2 -0
  34. data/docs/DynamicSecretUpdateGcp.md +2 -0
  35. data/docs/DynamicSecretUpdateHanaDb.md +4 -0
  36. data/docs/DynamicSecretUpdateK8s.md +2 -0
  37. data/docs/DynamicSecretUpdateLdap.md +2 -0
  38. data/docs/DynamicSecretUpdateMongoDb.md +4 -0
  39. data/docs/DynamicSecretUpdateMsSql.md +4 -0
  40. data/docs/DynamicSecretUpdateMySql.md +4 -0
  41. data/docs/DynamicSecretUpdateOracleDb.md +2 -0
  42. data/docs/DynamicSecretUpdatePostgreSql.md +4 -0
  43. data/docs/DynamicSecretUpdateRdp.md +2 -0
  44. data/docs/DynamicSecretUpdateRedis.md +2 -0
  45. data/docs/DynamicSecretUpdateRedshift.md +2 -0
  46. data/docs/DynamicSecretUpdateSnowflake.md +6 -0
  47. data/docs/GatewayCreateProducerArtifactory.md +2 -0
  48. data/docs/GatewayCreateProducerAws.md +4 -0
  49. data/docs/GatewayCreateProducerAzure.md +4 -0
  50. data/docs/GatewayCreateProducerCassandra.md +2 -0
  51. data/docs/GatewayCreateProducerChef.md +2 -0
  52. data/docs/GatewayCreateProducerGcp.md +2 -0
  53. data/docs/GatewayCreateProducerHanaDb.md +4 -0
  54. data/docs/GatewayCreateProducerLdap.md +2 -0
  55. data/docs/GatewayCreateProducerMSSQL.md +4 -0
  56. data/docs/GatewayCreateProducerMongo.md +4 -0
  57. data/docs/GatewayCreateProducerMySQL.md +4 -0
  58. data/docs/GatewayCreateProducerNativeK8S.md +2 -0
  59. data/docs/GatewayCreateProducerOracleDb.md +2 -0
  60. data/docs/GatewayCreateProducerPostgreSQL.md +4 -0
  61. data/docs/GatewayCreateProducerRdp.md +2 -0
  62. data/docs/GatewayCreateProducerRedis.md +2 -0
  63. data/docs/GatewayCreateProducerRedshift.md +2 -0
  64. data/docs/GatewayCreateProducerSnowflake.md +6 -0
  65. data/docs/GatewayDetailsForItemReplyObj.md +2 -0
  66. data/docs/GatewayUpdateProducerArtifactory.md +2 -0
  67. data/docs/GatewayUpdateProducerAws.md +4 -0
  68. data/docs/GatewayUpdateProducerAzure.md +4 -0
  69. data/docs/GatewayUpdateProducerCassandra.md +2 -0
  70. data/docs/GatewayUpdateProducerChef.md +2 -0
  71. data/docs/GatewayUpdateProducerGcp.md +2 -0
  72. data/docs/GatewayUpdateProducerHanaDb.md +4 -0
  73. data/docs/GatewayUpdateProducerLdap.md +2 -0
  74. data/docs/GatewayUpdateProducerMSSQL.md +4 -0
  75. data/docs/GatewayUpdateProducerMongo.md +4 -0
  76. data/docs/GatewayUpdateProducerMySQL.md +4 -0
  77. data/docs/GatewayUpdateProducerNativeK8S.md +2 -0
  78. data/docs/GatewayUpdateProducerOracleDb.md +2 -0
  79. data/docs/GatewayUpdateProducerPostgreSQL.md +4 -0
  80. data/docs/GatewayUpdateProducerRdp.md +2 -0
  81. data/docs/GatewayUpdateProducerRedis.md +2 -0
  82. data/docs/GatewayUpdateProducerRedshift.md +2 -0
  83. data/docs/GatewayUpdateProducerSnowflake.md +6 -0
  84. data/docs/GcpTargetDetails.md +2 -0
  85. data/docs/ItemUSCSyncAssociation.md +1 -1
  86. data/docs/ItemVersion.md +4 -0
  87. data/docs/ListItemsInPathOutput.md +2 -0
  88. data/docs/ListItemsOutput.md +2 -0
  89. data/docs/PKICertificateIssueDetails.md +2 -0
  90. data/docs/RotatedSecretCreateAws.md +5 -1
  91. data/docs/RotatedSecretCreateAzure.md +12 -0
  92. data/docs/RotatedSecretCreateCustom.md +11 -1
  93. data/docs/RotatedSecretCreateGcp.md +6 -0
  94. data/docs/RotatedSecretCreateSnowflake.md +6 -2
  95. data/docs/RotatedSecretDeleteSyncOutput.md +20 -0
  96. data/docs/RotatedSecretDetailsInfo.md +8 -0
  97. data/docs/RotatedSecretSync.md +2 -0
  98. data/docs/RotatedSecretUpdateAws.md +5 -1
  99. data/docs/RotatedSecretUpdateAzure.md +12 -0
  100. data/docs/RotatedSecretUpdateCustom.md +11 -1
  101. data/docs/RotatedSecretUpdateGcp.md +6 -0
  102. data/docs/RotatedSecretUpdateSnowflake.md +5 -1
  103. data/docs/SecretSyncOutput.md +22 -0
  104. data/docs/StaticSecretDeleteSync.md +26 -0
  105. data/docs/StaticSecretDeleteSyncOutput.md +20 -0
  106. data/docs/StaticSecretSync.md +30 -0
  107. data/docs/TargetCreateAws.md +4 -0
  108. data/docs/TargetItemVersion.md +4 -0
  109. data/docs/TargetUpdateAws.md +4 -0
  110. data/docs/UpdateAWSTarget.md +4 -0
  111. data/docs/UpdateAccountSettings.md +8 -0
  112. data/docs/UpdatePKICertIssuer.md +3 -1
  113. data/docs/UscCreate.md +2 -0
  114. data/docs/UscSyncInfo.md +26 -0
  115. data/docs/UscUpdate.md +2 -0
  116. data/docs/V2Api.md +130 -4
  117. data/lib/akeyless/api/v2_api.rb +131 -3
  118. data/lib/akeyless/models/account_general_settings.rb +28 -1
  119. data/lib/akeyless/models/aws_gateway_cloud_identity_external_id_opt.rb +232 -0
  120. data/lib/akeyless/models/aws_target_details.rb +10 -1
  121. data/lib/akeyless/models/azure_target_details.rb +10 -1
  122. data/lib/akeyless/models/certificate_expiration_events_settings.rb +226 -0
  123. data/lib/akeyless/models/create_aws_target.rb +21 -1
  124. data/lib/akeyless/models/create_pki_cert_issuer.rb +12 -2
  125. data/lib/akeyless/models/ds_producer_details.rb +64 -1
  126. data/lib/akeyless/models/dynamic_secret_create_artifactory.rb +11 -1
  127. data/lib/akeyless/models/dynamic_secret_create_aws.rb +21 -1
  128. data/lib/akeyless/models/dynamic_secret_create_azure.rb +21 -1
  129. data/lib/akeyless/models/dynamic_secret_create_cassandra.rb +11 -1
  130. data/lib/akeyless/models/dynamic_secret_create_chef.rb +11 -1
  131. data/lib/akeyless/models/dynamic_secret_create_gcp.rb +11 -1
  132. data/lib/akeyless/models/dynamic_secret_create_hana_db.rb +21 -1
  133. data/lib/akeyless/models/dynamic_secret_create_k8s.rb +11 -1
  134. data/lib/akeyless/models/dynamic_secret_create_ldap.rb +11 -1
  135. data/lib/akeyless/models/dynamic_secret_create_mongo_db.rb +21 -1
  136. data/lib/akeyless/models/dynamic_secret_create_ms_sql.rb +21 -1
  137. data/lib/akeyless/models/dynamic_secret_create_my_sql.rb +21 -1
  138. data/lib/akeyless/models/dynamic_secret_create_oracle_db.rb +11 -1
  139. data/lib/akeyless/models/dynamic_secret_create_postgre_sql.rb +21 -1
  140. data/lib/akeyless/models/dynamic_secret_create_rdp.rb +11 -1
  141. data/lib/akeyless/models/dynamic_secret_create_redis.rb +11 -1
  142. data/lib/akeyless/models/dynamic_secret_create_redshift.rb +11 -1
  143. data/lib/akeyless/models/dynamic_secret_create_snowflake.rb +32 -1
  144. data/lib/akeyless/models/dynamic_secret_update_artifactory.rb +11 -1
  145. data/lib/akeyless/models/dynamic_secret_update_aws.rb +21 -1
  146. data/lib/akeyless/models/dynamic_secret_update_azure.rb +21 -1
  147. data/lib/akeyless/models/dynamic_secret_update_cassandra.rb +11 -1
  148. data/lib/akeyless/models/dynamic_secret_update_chef.rb +11 -1
  149. data/lib/akeyless/models/dynamic_secret_update_gcp.rb +11 -1
  150. data/lib/akeyless/models/dynamic_secret_update_hana_db.rb +21 -1
  151. data/lib/akeyless/models/dynamic_secret_update_k8s.rb +11 -1
  152. data/lib/akeyless/models/dynamic_secret_update_ldap.rb +11 -1
  153. data/lib/akeyless/models/dynamic_secret_update_mongo_db.rb +21 -1
  154. data/lib/akeyless/models/dynamic_secret_update_ms_sql.rb +21 -1
  155. data/lib/akeyless/models/dynamic_secret_update_my_sql.rb +21 -1
  156. data/lib/akeyless/models/dynamic_secret_update_oracle_db.rb +11 -1
  157. data/lib/akeyless/models/dynamic_secret_update_postgre_sql.rb +21 -1
  158. data/lib/akeyless/models/dynamic_secret_update_rdp.rb +11 -1
  159. data/lib/akeyless/models/dynamic_secret_update_redis.rb +11 -1
  160. data/lib/akeyless/models/dynamic_secret_update_redshift.rb +11 -1
  161. data/lib/akeyless/models/dynamic_secret_update_snowflake.rb +32 -1
  162. data/lib/akeyless/models/gateway_create_producer_artifactory.rb +11 -1
  163. data/lib/akeyless/models/gateway_create_producer_aws.rb +21 -1
  164. data/lib/akeyless/models/gateway_create_producer_azure.rb +21 -1
  165. data/lib/akeyless/models/gateway_create_producer_cassandra.rb +11 -1
  166. data/lib/akeyless/models/gateway_create_producer_chef.rb +11 -1
  167. data/lib/akeyless/models/gateway_create_producer_gcp.rb +11 -1
  168. data/lib/akeyless/models/gateway_create_producer_hana_db.rb +21 -1
  169. data/lib/akeyless/models/gateway_create_producer_ldap.rb +11 -1
  170. data/lib/akeyless/models/gateway_create_producer_mongo.rb +21 -1
  171. data/lib/akeyless/models/gateway_create_producer_mssql.rb +21 -1
  172. data/lib/akeyless/models/gateway_create_producer_my_sql.rb +21 -1
  173. data/lib/akeyless/models/gateway_create_producer_native_k8_s.rb +11 -1
  174. data/lib/akeyless/models/gateway_create_producer_oracle_db.rb +11 -1
  175. data/lib/akeyless/models/gateway_create_producer_postgre_sql.rb +21 -1
  176. data/lib/akeyless/models/gateway_create_producer_rdp.rb +11 -1
  177. data/lib/akeyless/models/gateway_create_producer_redis.rb +11 -1
  178. data/lib/akeyless/models/gateway_create_producer_redshift.rb +11 -1
  179. data/lib/akeyless/models/gateway_create_producer_snowflake.rb +32 -1
  180. data/lib/akeyless/models/gateway_details_for_item_reply_obj.rb +10 -1
  181. data/lib/akeyless/models/gateway_update_producer_artifactory.rb +11 -1
  182. data/lib/akeyless/models/gateway_update_producer_aws.rb +21 -1
  183. data/lib/akeyless/models/gateway_update_producer_azure.rb +21 -1
  184. data/lib/akeyless/models/gateway_update_producer_cassandra.rb +11 -1
  185. data/lib/akeyless/models/gateway_update_producer_chef.rb +11 -1
  186. data/lib/akeyless/models/gateway_update_producer_gcp.rb +11 -1
  187. data/lib/akeyless/models/gateway_update_producer_hana_db.rb +21 -1
  188. data/lib/akeyless/models/gateway_update_producer_ldap.rb +11 -1
  189. data/lib/akeyless/models/gateway_update_producer_mongo.rb +21 -1
  190. data/lib/akeyless/models/gateway_update_producer_mssql.rb +21 -1
  191. data/lib/akeyless/models/gateway_update_producer_my_sql.rb +21 -1
  192. data/lib/akeyless/models/gateway_update_producer_native_k8_s.rb +11 -1
  193. data/lib/akeyless/models/gateway_update_producer_oracle_db.rb +11 -1
  194. data/lib/akeyless/models/gateway_update_producer_postgre_sql.rb +21 -1
  195. data/lib/akeyless/models/gateway_update_producer_rdp.rb +11 -1
  196. data/lib/akeyless/models/gateway_update_producer_redis.rb +11 -1
  197. data/lib/akeyless/models/gateway_update_producer_redshift.rb +11 -1
  198. data/lib/akeyless/models/gateway_update_producer_snowflake.rb +32 -1
  199. data/lib/akeyless/models/gcp_target_details.rb +10 -1
  200. data/lib/akeyless/models/item_usc_sync_association.rb +1 -1
  201. data/lib/akeyless/models/item_version.rb +19 -1
  202. data/lib/akeyless/models/list_items_in_path_output.rb +10 -1
  203. data/lib/akeyless/models/list_items_output.rb +10 -1
  204. data/lib/akeyless/models/pki_certificate_issue_details.rb +10 -1
  205. data/lib/akeyless/models/rotated_secret_create_aws.rb +22 -2
  206. data/lib/akeyless/models/rotated_secret_create_azure.rb +63 -1
  207. data/lib/akeyless/models/rotated_secret_create_custom.rb +54 -4
  208. data/lib/akeyless/models/rotated_secret_create_gcp.rb +31 -1
  209. data/lib/akeyless/models/rotated_secret_create_snowflake.rb +23 -3
  210. data/lib/akeyless/models/rotated_secret_delete_sync_output.rb +223 -0
  211. data/lib/akeyless/models/rotated_secret_details_info.rb +37 -1
  212. data/lib/akeyless/models/rotated_secret_sync.rb +11 -1
  213. data/lib/akeyless/models/rotated_secret_update_aws.rb +22 -2
  214. data/lib/akeyless/models/rotated_secret_update_azure.rb +63 -1
  215. data/lib/akeyless/models/rotated_secret_update_custom.rb +54 -4
  216. data/lib/akeyless/models/rotated_secret_update_gcp.rb +31 -1
  217. data/lib/akeyless/models/rotated_secret_update_snowflake.rb +22 -2
  218. data/lib/akeyless/models/secret_sync_output.rb +232 -0
  219. data/lib/akeyless/models/static_secret_delete_sync.rb +271 -0
  220. data/lib/akeyless/models/static_secret_delete_sync_output.rb +223 -0
  221. data/lib/akeyless/models/static_secret_sync.rb +284 -0
  222. data/lib/akeyless/models/target_create_aws.rb +21 -1
  223. data/lib/akeyless/models/target_item_version.rb +19 -1
  224. data/lib/akeyless/models/target_update_aws.rb +21 -1
  225. data/lib/akeyless/models/update_account_settings.rb +43 -1
  226. data/lib/akeyless/models/update_aws_target.rb +21 -1
  227. data/lib/akeyless/models/update_pki_cert_issuer.rb +12 -2
  228. data/lib/akeyless/models/usc_create.rb +11 -1
  229. data/lib/akeyless/models/usc_sync_info.rb +250 -0
  230. data/lib/akeyless/models/usc_update.rb +11 -1
  231. data/lib/akeyless/version.rb +1 -1
  232. data/lib/akeyless.rb +8 -1
  233. data/spec/models/aws_gateway_cloud_identity_external_id_opt_spec.rb +48 -0
  234. data/spec/models/certificate_expiration_events_settings_spec.rb +42 -0
  235. data/spec/models/rotated_secret_delete_sync_output_spec.rb +42 -0
  236. data/spec/models/secret_sync_output_spec.rb +48 -0
  237. data/spec/models/static_secret_delete_sync_output_spec.rb +42 -0
  238. data/spec/models/static_secret_delete_sync_spec.rb +60 -0
  239. data/spec/models/static_secret_sync_spec.rb +72 -0
  240. data/spec/models/usc_sync_info_spec.rb +60 -0
  241. metadata +1089 -1057
@@ -33,6 +33,9 @@ module Akeyless
33
33
  # Description of the object
34
34
  attr_accessor :description
35
35
 
36
+ # Enable password policy
37
+ attr_accessor :enable_password_policy
38
+
36
39
  # Set output format to JSON
37
40
  attr_accessor :json
38
41
 
@@ -114,6 +117,18 @@ module Akeyless
114
117
  # The universal identity token, Required only for universal_identity authentication
115
118
  attr_accessor :uid_token
116
119
 
120
+ # Password must contain capital letters [true/false]
121
+ attr_accessor :use_capital_letters
122
+
123
+ # Password must contain lower case letters [true/false]
124
+ attr_accessor :use_lower_letters
125
+
126
+ # Password must contain numbers [true/false]
127
+ attr_accessor :use_numbers
128
+
129
+ # Password must contain special characters [true/false]
130
+ attr_accessor :use_special_characters
131
+
117
132
  # Attribute mapping from ruby-style variable name to JSON key.
118
133
  def self.attribute_map
119
134
  {
@@ -123,6 +138,7 @@ module Akeyless
123
138
  :'custom_payload' => :'custom-payload',
124
139
  :'delete_protection' => :'delete_protection',
125
140
  :'description' => :'description',
141
+ :'enable_password_policy' => :'enable-password-policy',
126
142
  :'json' => :'json',
127
143
  :'keep_prev_version' => :'keep-prev-version',
128
144
  :'key' => :'key',
@@ -149,7 +165,11 @@ module Akeyless
149
165
  :'secure_access_web_proxy' => :'secure-access-web-proxy',
150
166
  :'timeout_sec' => :'timeout-sec',
151
167
  :'token' => :'token',
152
- :'uid_token' => :'uid-token'
168
+ :'uid_token' => :'uid-token',
169
+ :'use_capital_letters' => :'use-capital-letters',
170
+ :'use_lower_letters' => :'use-lower-letters',
171
+ :'use_numbers' => :'use-numbers',
172
+ :'use_special_characters' => :'use-special-characters'
153
173
  }
154
174
  end
155
175
 
@@ -167,6 +187,7 @@ module Akeyless
167
187
  :'custom_payload' => :'String',
168
188
  :'delete_protection' => :'String',
169
189
  :'description' => :'String',
190
+ :'enable_password_policy' => :'String',
170
191
  :'json' => :'Boolean',
171
192
  :'keep_prev_version' => :'String',
172
193
  :'key' => :'String',
@@ -193,7 +214,11 @@ module Akeyless
193
214
  :'secure_access_web_proxy' => :'Boolean',
194
215
  :'timeout_sec' => :'Integer',
195
216
  :'token' => :'String',
196
- :'uid_token' => :'String'
217
+ :'uid_token' => :'String',
218
+ :'use_capital_letters' => :'String',
219
+ :'use_lower_letters' => :'String',
220
+ :'use_numbers' => :'String',
221
+ :'use_special_characters' => :'String'
197
222
  }
198
223
  end
199
224
 
@@ -248,6 +273,10 @@ module Akeyless
248
273
  self.description = 'default_metadata'
249
274
  end
250
275
 
276
+ if attributes.key?(:'enable_password_policy')
277
+ self.enable_password_policy = attributes[:'enable_password_policy']
278
+ end
279
+
251
280
  if attributes.key?(:'json')
252
281
  self.json = attributes[:'json']
253
282
  else
@@ -375,6 +404,22 @@ module Akeyless
375
404
  if attributes.key?(:'uid_token')
376
405
  self.uid_token = attributes[:'uid_token']
377
406
  end
407
+
408
+ if attributes.key?(:'use_capital_letters')
409
+ self.use_capital_letters = attributes[:'use_capital_letters']
410
+ end
411
+
412
+ if attributes.key?(:'use_lower_letters')
413
+ self.use_lower_letters = attributes[:'use_lower_letters']
414
+ end
415
+
416
+ if attributes.key?(:'use_numbers')
417
+ self.use_numbers = attributes[:'use_numbers']
418
+ end
419
+
420
+ if attributes.key?(:'use_special_characters')
421
+ self.use_special_characters = attributes[:'use_special_characters']
422
+ end
378
423
  end
379
424
 
380
425
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -408,6 +453,7 @@ module Akeyless
408
453
  custom_payload == o.custom_payload &&
409
454
  delete_protection == o.delete_protection &&
410
455
  description == o.description &&
456
+ enable_password_policy == o.enable_password_policy &&
411
457
  json == o.json &&
412
458
  keep_prev_version == o.keep_prev_version &&
413
459
  key == o.key &&
@@ -434,7 +480,11 @@ module Akeyless
434
480
  secure_access_web_proxy == o.secure_access_web_proxy &&
435
481
  timeout_sec == o.timeout_sec &&
436
482
  token == o.token &&
437
- uid_token == o.uid_token
483
+ uid_token == o.uid_token &&
484
+ use_capital_letters == o.use_capital_letters &&
485
+ use_lower_letters == o.use_lower_letters &&
486
+ use_numbers == o.use_numbers &&
487
+ use_special_characters == o.use_special_characters
438
488
  end
439
489
 
440
490
  # @see the `==` method
@@ -446,7 +496,7 @@ module Akeyless
446
496
  # Calculates hash code according to all attributes.
447
497
  # @return [Integer] Hash code
448
498
  def hash
449
- [add_tag, authentication_credentials, auto_rotate, custom_payload, delete_protection, description, json, keep_prev_version, key, max_versions, name, new_name, password_length, rm_tag, rotate_after_disconnect, rotation_event_in, rotation_hour, rotation_interval, secure_access_allow_external_user, secure_access_bastion_issuer, secure_access_certificate_issuer, secure_access_enable, secure_access_host, secure_access_rdp_domain, secure_access_rdp_user, secure_access_ssh_user, secure_access_url, secure_access_web, secure_access_web_browsing, secure_access_web_proxy, timeout_sec, token, uid_token].hash
499
+ [add_tag, authentication_credentials, auto_rotate, custom_payload, delete_protection, description, enable_password_policy, json, keep_prev_version, key, max_versions, name, new_name, password_length, rm_tag, rotate_after_disconnect, rotation_event_in, rotation_hour, rotation_interval, secure_access_allow_external_user, secure_access_bastion_issuer, secure_access_certificate_issuer, secure_access_enable, secure_access_host, secure_access_rdp_domain, secure_access_rdp_user, secure_access_ssh_user, secure_access_url, secure_access_web, secure_access_web_browsing, secure_access_web_proxy, timeout_sec, token, uid_token, use_capital_letters, use_lower_letters, use_numbers, use_special_characters].hash
450
500
  end
451
501
 
452
502
  # Builds the object from hash
@@ -39,6 +39,15 @@ module Akeyless
39
39
  # The key id of the gcp service account to rotate
40
40
  attr_accessor :gcp_service_account_key_id
41
41
 
42
+ # Create a new access key without deleting the old key from AWS/Azure/GCP for backup (relevant only for AWS/Azure/GCP) [true/false]
43
+ attr_accessor :grace_rotation
44
+
45
+ # The Hour of the grace rotation in UTC
46
+ attr_accessor :grace_rotation_hour
47
+
48
+ # The number of days to wait before deleting the old key (must be bigger than rotation-interval)
49
+ attr_accessor :grace_rotation_interval
50
+
42
51
  # Set output format to JSON
43
52
  attr_accessor :json
44
53
 
@@ -92,6 +101,9 @@ module Akeyless
92
101
  :'gcp_key' => :'gcp-key',
93
102
  :'gcp_service_account_email' => :'gcp-service-account-email',
94
103
  :'gcp_service_account_key_id' => :'gcp-service-account-key-id',
104
+ :'grace_rotation' => :'grace-rotation',
105
+ :'grace_rotation_hour' => :'grace-rotation-hour',
106
+ :'grace_rotation_interval' => :'grace-rotation-interval',
95
107
  :'json' => :'json',
96
108
  :'keep_prev_version' => :'keep-prev-version',
97
109
  :'key' => :'key',
@@ -125,6 +137,9 @@ module Akeyless
125
137
  :'gcp_key' => :'String',
126
138
  :'gcp_service_account_email' => :'String',
127
139
  :'gcp_service_account_key_id' => :'String',
140
+ :'grace_rotation' => :'String',
141
+ :'grace_rotation_hour' => :'Integer',
142
+ :'grace_rotation_interval' => :'String',
128
143
  :'json' => :'Boolean',
129
144
  :'keep_prev_version' => :'String',
130
145
  :'key' => :'String',
@@ -201,6 +216,18 @@ module Akeyless
201
216
  self.gcp_service_account_key_id = attributes[:'gcp_service_account_key_id']
202
217
  end
203
218
 
219
+ if attributes.key?(:'grace_rotation')
220
+ self.grace_rotation = attributes[:'grace_rotation']
221
+ end
222
+
223
+ if attributes.key?(:'grace_rotation_hour')
224
+ self.grace_rotation_hour = attributes[:'grace_rotation_hour']
225
+ end
226
+
227
+ if attributes.key?(:'grace_rotation_interval')
228
+ self.grace_rotation_interval = attributes[:'grace_rotation_interval']
229
+ end
230
+
204
231
  if attributes.key?(:'json')
205
232
  self.json = attributes[:'json']
206
233
  else
@@ -306,6 +333,9 @@ module Akeyless
306
333
  gcp_key == o.gcp_key &&
307
334
  gcp_service_account_email == o.gcp_service_account_email &&
308
335
  gcp_service_account_key_id == o.gcp_service_account_key_id &&
336
+ grace_rotation == o.grace_rotation &&
337
+ grace_rotation_hour == o.grace_rotation_hour &&
338
+ grace_rotation_interval == o.grace_rotation_interval &&
309
339
  json == o.json &&
310
340
  keep_prev_version == o.keep_prev_version &&
311
341
  key == o.key &&
@@ -331,7 +361,7 @@ module Akeyless
331
361
  # Calculates hash code according to all attributes.
332
362
  # @return [Integer] Hash code
333
363
  def hash
334
- [add_tag, authentication_credentials, auto_rotate, delete_protection, description, gcp_key, gcp_service_account_email, gcp_service_account_key_id, json, keep_prev_version, key, max_versions, name, new_name, password_length, rm_tag, rotation_event_in, rotation_hour, rotation_interval, rotator_type, token, uid_token].hash
364
+ [add_tag, authentication_credentials, auto_rotate, delete_protection, description, gcp_key, gcp_service_account_email, gcp_service_account_key_id, grace_rotation, grace_rotation_hour, grace_rotation_interval, json, keep_prev_version, key, max_versions, name, new_name, password_length, rm_tag, rotation_event_in, rotation_hour, rotation_interval, rotator_type, token, uid_token].hash
335
365
  end
336
366
 
337
367
  # Builds the object from hash
@@ -51,13 +51,19 @@ module Akeyless
51
51
  # The length of the password to be generated
52
52
  attr_accessor :password_length
53
53
 
54
+ # RSA Private key (base64 encoded) to rotate (relevant only for rotator-type=key)
55
+ attr_accessor :private_key
56
+
57
+ # The path to the file containing the private key (relevant only for rotator-type=key)
58
+ attr_accessor :private_key_file_name
59
+
54
60
  # List of the existent tags that will be removed from this item
55
61
  attr_accessor :rm_tag
56
62
 
57
63
  # rotated-username password (relevant only for rotator-type=password)
58
64
  attr_accessor :rotated_password
59
65
 
60
- # username to be rotated, if selected use-self-creds at rotator-creds-type, this username will try to rotate it's own password, if use-target-creds is selected, target credentials will be use to rotate the rotated-password (relevant only for rotator-type=password)
66
+ # username to be rotated, if selected use-self-creds at rotator-creds-type, this username will try to rotate it's own password, if use-target-creds is selected, target credentials will be use to rotate the rotated-password (relevant only for rotator-type=password or rotator-type=key)
61
67
  attr_accessor :rotated_username
62
68
 
63
69
  # How many days before the rotation of the item would you like to be notified
@@ -90,6 +96,8 @@ module Akeyless
90
96
  :'name' => :'name',
91
97
  :'new_name' => :'new-name',
92
98
  :'password_length' => :'password-length',
99
+ :'private_key' => :'private-key',
100
+ :'private_key_file_name' => :'private-key-file-name',
93
101
  :'rm_tag' => :'rm-tag',
94
102
  :'rotated_password' => :'rotated-password',
95
103
  :'rotated_username' => :'rotated-username',
@@ -121,6 +129,8 @@ module Akeyless
121
129
  :'name' => :'String',
122
130
  :'new_name' => :'String',
123
131
  :'password_length' => :'String',
132
+ :'private_key' => :'String',
133
+ :'private_key_file_name' => :'String',
124
134
  :'rm_tag' => :'Array<String>',
125
135
  :'rotated_password' => :'String',
126
136
  :'rotated_username' => :'String',
@@ -211,6 +221,14 @@ module Akeyless
211
221
  self.password_length = attributes[:'password_length']
212
222
  end
213
223
 
224
+ if attributes.key?(:'private_key')
225
+ self.private_key = attributes[:'private_key']
226
+ end
227
+
228
+ if attributes.key?(:'private_key_file_name')
229
+ self.private_key_file_name = attributes[:'private_key_file_name']
230
+ end
231
+
214
232
  if attributes.key?(:'rm_tag')
215
233
  if (value = attributes[:'rm_tag']).is_a?(Array)
216
234
  self.rm_tag = value
@@ -285,6 +303,8 @@ module Akeyless
285
303
  name == o.name &&
286
304
  new_name == o.new_name &&
287
305
  password_length == o.password_length &&
306
+ private_key == o.private_key &&
307
+ private_key_file_name == o.private_key_file_name &&
288
308
  rm_tag == o.rm_tag &&
289
309
  rotated_password == o.rotated_password &&
290
310
  rotated_username == o.rotated_username &&
@@ -304,7 +324,7 @@ module Akeyless
304
324
  # Calculates hash code according to all attributes.
305
325
  # @return [Integer] Hash code
306
326
  def hash
307
- [add_tag, authentication_credentials, auto_rotate, delete_protection, description, json, keep_prev_version, key, max_versions, name, new_name, password_length, rm_tag, rotated_password, rotated_username, rotation_event_in, rotation_hour, rotation_interval, token, uid_token].hash
327
+ [add_tag, authentication_credentials, auto_rotate, delete_protection, description, json, keep_prev_version, key, max_versions, name, new_name, password_length, private_key, private_key_file_name, rm_tag, rotated_password, rotated_username, rotation_event_in, rotation_hour, rotation_interval, token, uid_token].hash
308
328
  end
309
329
 
310
330
  # Builds the object from hash
@@ -0,0 +1,232 @@
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: 3.0
7
+ Contact: support@akeyless.io
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.10.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Akeyless
17
+ class SecretSyncOutput
18
+ attr_accessor :remote_secret_name
19
+
20
+ attr_accessor :secret_name
21
+
22
+ attr_accessor :usc_name
23
+
24
+ # Attribute mapping from ruby-style variable name to JSON key.
25
+ def self.attribute_map
26
+ {
27
+ :'remote_secret_name' => :'remote-secret-name',
28
+ :'secret_name' => :'secret-name',
29
+ :'usc_name' => :'usc-name'
30
+ }
31
+ end
32
+
33
+ # Returns all the JSON keys this model knows about
34
+ def self.acceptable_attributes
35
+ attribute_map.values
36
+ end
37
+
38
+ # Attribute type mapping.
39
+ def self.openapi_types
40
+ {
41
+ :'remote_secret_name' => :'String',
42
+ :'secret_name' => :'String',
43
+ :'usc_name' => :'String'
44
+ }
45
+ end
46
+
47
+ # List of attributes with nullable: true
48
+ def self.openapi_nullable
49
+ Set.new([
50
+ ])
51
+ end
52
+
53
+ # Initializes the object
54
+ # @param [Hash] attributes Model attributes in the form of hash
55
+ def initialize(attributes = {})
56
+ if (!attributes.is_a?(Hash))
57
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Akeyless::SecretSyncOutput` initialize method"
58
+ end
59
+
60
+ # check to see if the attribute exists and convert string to symbol for hash key
61
+ attributes = attributes.each_with_object({}) { |(k, v), h|
62
+ if (!self.class.attribute_map.key?(k.to_sym))
63
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Akeyless::SecretSyncOutput`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
64
+ end
65
+ h[k.to_sym] = v
66
+ }
67
+
68
+ if attributes.key?(:'remote_secret_name')
69
+ self.remote_secret_name = attributes[:'remote_secret_name']
70
+ end
71
+
72
+ if attributes.key?(:'secret_name')
73
+ self.secret_name = attributes[:'secret_name']
74
+ end
75
+
76
+ if attributes.key?(:'usc_name')
77
+ self.usc_name = attributes[:'usc_name']
78
+ end
79
+ end
80
+
81
+ # Show invalid properties with the reasons. Usually used together with valid?
82
+ # @return Array for valid properties with the reasons
83
+ def list_invalid_properties
84
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
85
+ invalid_properties = Array.new
86
+ invalid_properties
87
+ end
88
+
89
+ # Check to see if the all the properties in the model are valid
90
+ # @return true if the model is valid
91
+ def valid?
92
+ warn '[DEPRECATED] the `valid?` method is obsolete'
93
+ true
94
+ end
95
+
96
+ # Checks equality by comparing each attribute.
97
+ # @param [Object] Object to be compared
98
+ def ==(o)
99
+ return true if self.equal?(o)
100
+ self.class == o.class &&
101
+ remote_secret_name == o.remote_secret_name &&
102
+ secret_name == o.secret_name &&
103
+ usc_name == o.usc_name
104
+ end
105
+
106
+ # @see the `==` method
107
+ # @param [Object] Object to be compared
108
+ def eql?(o)
109
+ self == o
110
+ end
111
+
112
+ # Calculates hash code according to all attributes.
113
+ # @return [Integer] Hash code
114
+ def hash
115
+ [remote_secret_name, secret_name, usc_name].hash
116
+ end
117
+
118
+ # Builds the object from hash
119
+ # @param [Hash] attributes Model attributes in the form of hash
120
+ # @return [Object] Returns the model itself
121
+ def self.build_from_hash(attributes)
122
+ return nil unless attributes.is_a?(Hash)
123
+ attributes = attributes.transform_keys(&:to_sym)
124
+ transformed_hash = {}
125
+ openapi_types.each_pair do |key, type|
126
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
127
+ transformed_hash["#{key}"] = nil
128
+ elsif type =~ /\AArray<(.*)>/i
129
+ # check to ensure the input is an array given that the attribute
130
+ # is documented as an array but the input is not
131
+ if attributes[attribute_map[key]].is_a?(Array)
132
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
133
+ end
134
+ elsif !attributes[attribute_map[key]].nil?
135
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
136
+ end
137
+ end
138
+ new(transformed_hash)
139
+ end
140
+
141
+ # Deserializes the data based on type
142
+ # @param string type Data type
143
+ # @param string value Value to be deserialized
144
+ # @return [Object] Deserialized data
145
+ def self._deserialize(type, value)
146
+ case type.to_sym
147
+ when :Time
148
+ Time.parse(value)
149
+ when :Date
150
+ Date.parse(value)
151
+ when :String
152
+ value.to_s
153
+ when :Integer
154
+ value.to_i
155
+ when :Float
156
+ value.to_f
157
+ when :Boolean
158
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
159
+ true
160
+ else
161
+ false
162
+ end
163
+ when :Object
164
+ # generic object (usually a Hash), return directly
165
+ value
166
+ when /\AArray<(?<inner_type>.+)>\z/
167
+ inner_type = Regexp.last_match[:inner_type]
168
+ value.map { |v| _deserialize(inner_type, v) }
169
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
170
+ k_type = Regexp.last_match[:k_type]
171
+ v_type = Regexp.last_match[:v_type]
172
+ {}.tap do |hash|
173
+ value.each do |k, v|
174
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
175
+ end
176
+ end
177
+ else # model
178
+ # models (e.g. Pet) or oneOf
179
+ klass = Akeyless.const_get(type)
180
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
181
+ end
182
+ end
183
+
184
+ # Returns the string representation of the object
185
+ # @return [String] String presentation of the object
186
+ def to_s
187
+ to_hash.to_s
188
+ end
189
+
190
+ # to_body is an alias to to_hash (backward compatibility)
191
+ # @return [Hash] Returns the object in the form of hash
192
+ def to_body
193
+ to_hash
194
+ end
195
+
196
+ # Returns the object in the form of hash
197
+ # @return [Hash] Returns the object in the form of hash
198
+ def to_hash
199
+ hash = {}
200
+ self.class.attribute_map.each_pair do |attr, param|
201
+ value = self.send(attr)
202
+ if value.nil?
203
+ is_nullable = self.class.openapi_nullable.include?(attr)
204
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
205
+ end
206
+
207
+ hash[param] = _to_hash(value)
208
+ end
209
+ hash
210
+ end
211
+
212
+ # Outputs non-array value in the form of hash
213
+ # For object, use to_hash. Otherwise, just return the value
214
+ # @param [Object] value Any valid value
215
+ # @return [Hash] Returns the value in the form of hash
216
+ def _to_hash(value)
217
+ if value.is_a?(Array)
218
+ value.compact.map { |v| _to_hash(v) }
219
+ elsif value.is_a?(Hash)
220
+ {}.tap do |hash|
221
+ value.each { |k, v| hash[k] = _to_hash(v) }
222
+ end
223
+ elsif value.respond_to? :to_hash
224
+ value.to_hash
225
+ else
226
+ value
227
+ end
228
+ end
229
+
230
+ end
231
+
232
+ end