akeyless 5.0.13 → 5.0.16

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 (231) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +17 -1
  3. data/docs/AccountGeneralSettings.md +2 -0
  4. data/docs/ActiveDirectoryPayload.md +2 -0
  5. data/docs/AllowedClientType.md +20 -0
  6. data/docs/AuthMethodAccessInfo.md +2 -0
  7. data/docs/AuthMethodCreateApiKey.md +2 -0
  8. data/docs/AuthMethodCreateAwsIam.md +2 -0
  9. data/docs/AuthMethodCreateAzureAD.md +2 -0
  10. data/docs/AuthMethodCreateCert.md +2 -0
  11. data/docs/AuthMethodCreateEmail.md +2 -0
  12. data/docs/AuthMethodCreateGcp.md +2 -0
  13. data/docs/AuthMethodCreateK8s.md +2 -0
  14. data/docs/AuthMethodCreateKerberos.md +2 -0
  15. data/docs/AuthMethodCreateLdap.md +2 -0
  16. data/docs/AuthMethodCreateOCI.md +2 -0
  17. data/docs/AuthMethodCreateOIDC.md +2 -0
  18. data/docs/AuthMethodCreateOauth2.md +2 -0
  19. data/docs/AuthMethodCreateSAML.md +2 -0
  20. data/docs/AuthMethodCreateUniversalIdentity.md +2 -0
  21. data/docs/AuthMethodUpdateApiKey.md +2 -0
  22. data/docs/AuthMethodUpdateAwsIam.md +2 -0
  23. data/docs/AuthMethodUpdateAzureAD.md +2 -0
  24. data/docs/AuthMethodUpdateCert.md +2 -0
  25. data/docs/AuthMethodUpdateEmail.md +2 -0
  26. data/docs/AuthMethodUpdateGcp.md +2 -0
  27. data/docs/AuthMethodUpdateK8s.md +2 -0
  28. data/docs/AuthMethodUpdateKerberos.md +2 -0
  29. data/docs/AuthMethodUpdateLdap.md +2 -0
  30. data/docs/AuthMethodUpdateOCI.md +2 -0
  31. data/docs/AuthMethodUpdateOIDC.md +2 -0
  32. data/docs/AuthMethodUpdateOauth2.md +2 -0
  33. data/docs/AuthMethodUpdateSAML.md +2 -0
  34. data/docs/AuthMethodUpdateUniversalIdentity.md +2 -0
  35. data/docs/BastionGlobalConf.md +4 -0
  36. data/docs/CreateAuthMethod.md +2 -0
  37. data/docs/CreateAuthMethodAWSIAM.md +2 -0
  38. data/docs/CreateAuthMethodAzureAD.md +2 -0
  39. data/docs/CreateAuthMethodCert.md +2 -0
  40. data/docs/CreateAuthMethodEmail.md +2 -0
  41. data/docs/CreateAuthMethodGCP.md +2 -0
  42. data/docs/CreateAuthMethodHuawei.md +2 -0
  43. data/docs/CreateAuthMethodK8S.md +2 -0
  44. data/docs/CreateAuthMethodLDAP.md +2 -0
  45. data/docs/CreateAuthMethodOAuth2.md +2 -0
  46. data/docs/CreateAuthMethodOCI.md +2 -0
  47. data/docs/CreateAuthMethodOIDC.md +2 -0
  48. data/docs/CreateAuthMethodSAML.md +2 -0
  49. data/docs/CreateAuthMethodUniversalIdentity.md +2 -0
  50. data/docs/CreateESM.md +2 -0
  51. data/docs/CreatePKICertIssuer.md +6 -0
  52. data/docs/CreateRole.md +2 -0
  53. data/docs/CreateUSC.md +2 -0
  54. data/docs/DSProducerDetails.md +10 -0
  55. data/docs/DecryptWithClassicKey.md +2 -0
  56. data/docs/DynamicSecretCreateGcp.md +23 -5
  57. data/docs/DynamicSecretCreateGoogleWorkspace.md +2 -0
  58. data/docs/DynamicSecretCreateMongoDb.md +2 -0
  59. data/docs/DynamicSecretCreateMsSql.md +2 -0
  60. data/docs/DynamicSecretGetValue.md +2 -0
  61. data/docs/DynamicSecretUpdateGcp.md +23 -5
  62. data/docs/DynamicSecretUpdateGoogleWorkspace.md +2 -0
  63. data/docs/DynamicSecretUpdateMongoDb.md +2 -0
  64. data/docs/DynamicSecretUpdateMsSql.md +2 -0
  65. data/docs/EncryptWithClassicKey.md +2 -0
  66. data/docs/EventForwarderGetOutput.md +3 -1
  67. data/docs/FolderCreate.md +34 -0
  68. data/docs/FolderCreateOutput.md +18 -0
  69. data/docs/FolderDelete.md +28 -0
  70. data/docs/FolderGet.md +28 -0
  71. data/docs/FolderGetOutput.md +18 -0
  72. data/docs/FolderUpdate.md +36 -0
  73. data/docs/GatewayCreateMigration.md +2 -0
  74. data/docs/GatewayCreateProducerGcp.md +23 -5
  75. data/docs/GatewayCreateProducerMSSQL.md +2 -0
  76. data/docs/GatewayCreateProducerMongo.md +2 -0
  77. data/docs/GatewayUpdateMigration.md +2 -0
  78. data/docs/GatewayUpdateProducerGcp.md +23 -5
  79. data/docs/GatewayUpdateProducerMSSQL.md +2 -0
  80. data/docs/GatewayUpdateProducerMongo.md +2 -0
  81. data/docs/GatewayUpdateRemoteAccess.md +4 -0
  82. data/docs/GetDynamicSecretValue.md +2 -0
  83. data/docs/GetFolderOutput.md +36 -0
  84. data/docs/NotiForwarderDetailsInput.md +28 -0
  85. data/docs/PKICertificateIssueDetails.md +6 -0
  86. data/docs/RotatedSecretCreateSsh.md +4 -0
  87. data/docs/RotatedSecretDeleteSync.md +2 -0
  88. data/docs/RotatedSecretDetailsInfo.md +4 -0
  89. data/docs/RotatedSecretUpdateSsh.md +4 -0
  90. data/docs/SlackNotiForwarderDetails.md +18 -0
  91. data/docs/StaticSecretDeleteSync.md +2 -0
  92. data/docs/TeamsNotiForwarderDetails.md +18 -0
  93. data/docs/UpdateAccountSettings.md +4 -0
  94. data/docs/UpdateAuthMethod.md +2 -0
  95. data/docs/UpdateAuthMethodAWSIAM.md +2 -0
  96. data/docs/UpdateAuthMethodAzureAD.md +2 -0
  97. data/docs/UpdateAuthMethodCert.md +2 -0
  98. data/docs/UpdateAuthMethodGCP.md +2 -0
  99. data/docs/UpdateAuthMethodK8S.md +2 -0
  100. data/docs/UpdateAuthMethodLDAP.md +2 -0
  101. data/docs/UpdateAuthMethodOAuth2.md +2 -0
  102. data/docs/UpdateAuthMethodOCI.md +2 -0
  103. data/docs/UpdateAuthMethodOIDC.md +2 -0
  104. data/docs/UpdateAuthMethodSAML.md +2 -0
  105. data/docs/UpdateAuthMethodUniversalIdentity.md +2 -0
  106. data/docs/UpdatePKICertIssuer.md +6 -0
  107. data/docs/V2Api.md +256 -4
  108. data/docs/WebhookNotiForwarderDetails.md +26 -0
  109. data/docs/WindowsServiceAttributes.md +4 -0
  110. data/lib/akeyless/api/v2_api.rb +256 -0
  111. data/lib/akeyless/models/account_general_settings.rb +10 -1
  112. data/lib/akeyless/models/active_directory_payload.rb +10 -1
  113. data/lib/akeyless/models/allowed_client_type.rb +225 -0
  114. data/lib/akeyless/models/auth_method_access_info.rb +12 -1
  115. data/lib/akeyless/models/auth_method_create_api_key.rb +12 -1
  116. data/lib/akeyless/models/auth_method_create_aws_iam.rb +12 -1
  117. data/lib/akeyless/models/auth_method_create_azure_ad.rb +12 -1
  118. data/lib/akeyless/models/auth_method_create_cert.rb +12 -1
  119. data/lib/akeyless/models/auth_method_create_email.rb +12 -1
  120. data/lib/akeyless/models/auth_method_create_gcp.rb +12 -1
  121. data/lib/akeyless/models/auth_method_create_k8s.rb +12 -1
  122. data/lib/akeyless/models/auth_method_create_kerberos.rb +12 -1
  123. data/lib/akeyless/models/auth_method_create_ldap.rb +12 -1
  124. data/lib/akeyless/models/auth_method_create_oauth2.rb +12 -1
  125. data/lib/akeyless/models/auth_method_create_oci.rb +12 -1
  126. data/lib/akeyless/models/auth_method_create_oidc.rb +12 -1
  127. data/lib/akeyless/models/auth_method_create_saml.rb +12 -1
  128. data/lib/akeyless/models/auth_method_create_universal_identity.rb +12 -1
  129. data/lib/akeyless/models/auth_method_update_api_key.rb +12 -1
  130. data/lib/akeyless/models/auth_method_update_aws_iam.rb +12 -1
  131. data/lib/akeyless/models/auth_method_update_azure_ad.rb +12 -1
  132. data/lib/akeyless/models/auth_method_update_cert.rb +12 -1
  133. data/lib/akeyless/models/auth_method_update_email.rb +12 -1
  134. data/lib/akeyless/models/auth_method_update_gcp.rb +12 -1
  135. data/lib/akeyless/models/auth_method_update_k8s.rb +12 -1
  136. data/lib/akeyless/models/auth_method_update_kerberos.rb +12 -1
  137. data/lib/akeyless/models/auth_method_update_ldap.rb +12 -1
  138. data/lib/akeyless/models/auth_method_update_oauth2.rb +12 -1
  139. data/lib/akeyless/models/auth_method_update_oci.rb +12 -1
  140. data/lib/akeyless/models/auth_method_update_oidc.rb +12 -1
  141. data/lib/akeyless/models/auth_method_update_saml.rb +12 -1
  142. data/lib/akeyless/models/auth_method_update_universal_identity.rb +12 -1
  143. data/lib/akeyless/models/bastion_global_conf.rb +19 -1
  144. data/lib/akeyless/models/create_auth_method.rb +12 -1
  145. data/lib/akeyless/models/create_auth_method_awsiam.rb +12 -1
  146. data/lib/akeyless/models/create_auth_method_azure_ad.rb +12 -1
  147. data/lib/akeyless/models/create_auth_method_cert.rb +12 -1
  148. data/lib/akeyless/models/create_auth_method_email.rb +12 -1
  149. data/lib/akeyless/models/create_auth_method_gcp.rb +12 -1
  150. data/lib/akeyless/models/create_auth_method_huawei.rb +12 -1
  151. data/lib/akeyless/models/create_auth_method_k8_s.rb +12 -1
  152. data/lib/akeyless/models/create_auth_method_ldap.rb +12 -1
  153. data/lib/akeyless/models/create_auth_method_o_auth2.rb +12 -1
  154. data/lib/akeyless/models/create_auth_method_oci.rb +12 -1
  155. data/lib/akeyless/models/create_auth_method_oidc.rb +12 -1
  156. data/lib/akeyless/models/create_auth_method_saml.rb +12 -1
  157. data/lib/akeyless/models/create_auth_method_universal_identity.rb +12 -1
  158. data/lib/akeyless/models/create_esm.rb +11 -1
  159. data/lib/akeyless/models/create_pki_cert_issuer.rb +28 -1
  160. data/lib/akeyless/models/create_role.rb +13 -1
  161. data/lib/akeyless/models/create_usc.rb +11 -1
  162. data/lib/akeyless/models/decrypt_with_classic_key.rb +13 -1
  163. data/lib/akeyless/models/ds_producer_details.rb +47 -1
  164. data/lib/akeyless/models/dynamic_secret_create_gcp.rb +101 -11
  165. data/lib/akeyless/models/dynamic_secret_create_google_workspace.rb +11 -1
  166. data/lib/akeyless/models/dynamic_secret_create_mongo_db.rb +11 -1
  167. data/lib/akeyless/models/dynamic_secret_create_ms_sql.rb +11 -1
  168. data/lib/akeyless/models/dynamic_secret_get_value.rb +11 -1
  169. data/lib/akeyless/models/dynamic_secret_update_gcp.rb +101 -11
  170. data/lib/akeyless/models/dynamic_secret_update_google_workspace.rb +11 -1
  171. data/lib/akeyless/models/dynamic_secret_update_mongo_db.rb +11 -1
  172. data/lib/akeyless/models/dynamic_secret_update_ms_sql.rb +11 -1
  173. data/lib/akeyless/models/encrypt_with_classic_key.rb +13 -1
  174. data/lib/akeyless/models/event_forwarder_get_output.rb +13 -4
  175. data/lib/akeyless/models/folder_create.rb +308 -0
  176. data/lib/akeyless/models/folder_create_output.rb +214 -0
  177. data/lib/akeyless/models/folder_delete.rb +276 -0
  178. data/lib/akeyless/models/folder_get.rb +276 -0
  179. data/lib/akeyless/models/folder_get_output.rb +214 -0
  180. data/lib/akeyless/models/folder_update.rb +320 -0
  181. data/lib/akeyless/models/gateway_create_migration.rb +13 -1
  182. data/lib/akeyless/models/gateway_create_producer_gcp.rb +101 -11
  183. data/lib/akeyless/models/gateway_create_producer_mongo.rb +11 -1
  184. data/lib/akeyless/models/gateway_create_producer_mssql.rb +11 -1
  185. data/lib/akeyless/models/gateway_update_migration.rb +13 -1
  186. data/lib/akeyless/models/gateway_update_producer_gcp.rb +101 -11
  187. data/lib/akeyless/models/gateway_update_producer_mongo.rb +11 -1
  188. data/lib/akeyless/models/gateway_update_producer_mssql.rb +11 -1
  189. data/lib/akeyless/models/gateway_update_remote_access.rb +25 -1
  190. data/lib/akeyless/models/get_dynamic_secret_value.rb +11 -1
  191. data/lib/akeyless/models/get_folder_output.rb +298 -0
  192. data/lib/akeyless/models/noti_forwarder_details_input.rb +261 -0
  193. data/lib/akeyless/models/pki_certificate_issue_details.rb +31 -1
  194. data/lib/akeyless/models/rotated_secret_create_ssh.rb +21 -1
  195. data/lib/akeyless/models/rotated_secret_delete_sync.rb +11 -1
  196. data/lib/akeyless/models/rotated_secret_details_info.rb +21 -1
  197. data/lib/akeyless/models/rotated_secret_update_ssh.rb +21 -1
  198. data/lib/akeyless/models/slack_noti_forwarder_details.rb +214 -0
  199. data/lib/akeyless/models/static_secret_delete_sync.rb +11 -1
  200. data/lib/akeyless/models/teams_noti_forwarder_details.rb +214 -0
  201. data/lib/akeyless/models/update_account_settings.rb +21 -1
  202. data/lib/akeyless/models/update_auth_method.rb +12 -1
  203. data/lib/akeyless/models/update_auth_method_awsiam.rb +12 -1
  204. data/lib/akeyless/models/update_auth_method_azure_ad.rb +12 -1
  205. data/lib/akeyless/models/update_auth_method_cert.rb +12 -1
  206. data/lib/akeyless/models/update_auth_method_gcp.rb +12 -1
  207. data/lib/akeyless/models/update_auth_method_k8_s.rb +12 -1
  208. data/lib/akeyless/models/update_auth_method_ldap.rb +12 -1
  209. data/lib/akeyless/models/update_auth_method_o_auth2.rb +12 -1
  210. data/lib/akeyless/models/update_auth_method_oci.rb +12 -1
  211. data/lib/akeyless/models/update_auth_method_oidc.rb +12 -1
  212. data/lib/akeyless/models/update_auth_method_saml.rb +12 -1
  213. data/lib/akeyless/models/update_auth_method_universal_identity.rb +12 -1
  214. data/lib/akeyless/models/update_pki_cert_issuer.rb +28 -1
  215. data/lib/akeyless/models/webhook_noti_forwarder_details.rb +253 -0
  216. data/lib/akeyless/models/windows_service_attributes.rb +21 -1
  217. data/lib/akeyless/version.rb +1 -1
  218. data/lib/akeyless.rb +12 -0
  219. data/spec/models/allowed_client_type_spec.rb +42 -0
  220. data/spec/models/folder_create_output_spec.rb +36 -0
  221. data/spec/models/folder_create_spec.rb +84 -0
  222. data/spec/models/folder_delete_spec.rb +66 -0
  223. data/spec/models/folder_get_output_spec.rb +36 -0
  224. data/spec/models/folder_get_spec.rb +66 -0
  225. data/spec/models/folder_update_spec.rb +90 -0
  226. data/spec/models/get_folder_output_spec.rb +90 -0
  227. data/spec/models/noti_forwarder_details_input_spec.rb +66 -0
  228. data/spec/models/slack_noti_forwarder_details_spec.rb +36 -0
  229. data/spec/models/teams_noti_forwarder_details_spec.rb +36 -0
  230. data/spec/models/webhook_noti_forwarder_details_spec.rb +60 -0
  231. metadata +49 -1
@@ -55,6 +55,9 @@ module Akeyless
55
55
  # MongoDB Roles
56
56
  attr_accessor :mongodb_roles
57
57
 
58
+ # MongoDB Scopes (Atlas only)
59
+ attr_accessor :mongodb_scopes
60
+
58
61
  # MongoDB server URI
59
62
  attr_accessor :mongodb_server_uri
60
63
 
@@ -128,6 +131,7 @@ module Akeyless
128
131
  :'mongodb_name' => :'mongodb-name',
129
132
  :'mongodb_password' => :'mongodb-password',
130
133
  :'mongodb_roles' => :'mongodb-roles',
134
+ :'mongodb_scopes' => :'mongodb-scopes',
131
135
  :'mongodb_server_uri' => :'mongodb-server-uri',
132
136
  :'mongodb_uri_options' => :'mongodb-uri-options',
133
137
  :'mongodb_username' => :'mongodb-username',
@@ -171,6 +175,7 @@ module Akeyless
171
175
  :'mongodb_name' => :'String',
172
176
  :'mongodb_password' => :'String',
173
177
  :'mongodb_roles' => :'String',
178
+ :'mongodb_scopes' => :'String',
174
179
  :'mongodb_server_uri' => :'String',
175
180
  :'mongodb_uri_options' => :'String',
176
181
  :'mongodb_username' => :'String',
@@ -272,6 +277,10 @@ module Akeyless
272
277
  self.mongodb_roles = '[]'
273
278
  end
274
279
 
280
+ if attributes.key?(:'mongodb_scopes')
281
+ self.mongodb_scopes = attributes[:'mongodb_scopes']
282
+ end
283
+
275
284
  if attributes.key?(:'mongodb_server_uri')
276
285
  self.mongodb_server_uri = attributes[:'mongodb_server_uri']
277
286
  end
@@ -397,6 +406,7 @@ module Akeyless
397
406
  mongodb_name == o.mongodb_name &&
398
407
  mongodb_password == o.mongodb_password &&
399
408
  mongodb_roles == o.mongodb_roles &&
409
+ mongodb_scopes == o.mongodb_scopes &&
400
410
  mongodb_server_uri == o.mongodb_server_uri &&
401
411
  mongodb_uri_options == o.mongodb_uri_options &&
402
412
  mongodb_username == o.mongodb_username &&
@@ -427,7 +437,7 @@ module Akeyless
427
437
  # Calculates hash code according to all attributes.
428
438
  # @return [Integer] Hash code
429
439
  def hash
430
- [custom_username_template, delete_protection, item_custom_fields, json, mongodb_atlas_api_private_key, mongodb_atlas_api_public_key, mongodb_atlas_project_id, mongodb_custom_data, mongodb_default_auth_db, mongodb_host_port, mongodb_name, mongodb_password, mongodb_roles, mongodb_server_uri, mongodb_uri_options, mongodb_username, name, new_name, password_length, producer_encryption_key_name, secure_access_bastion_issuer, secure_access_certificate_issuer, secure_access_db_name, secure_access_delay, secure_access_enable, secure_access_host, secure_access_web, tags, target_name, token, uid_token, user_ttl].hash
440
+ [custom_username_template, delete_protection, item_custom_fields, json, mongodb_atlas_api_private_key, mongodb_atlas_api_public_key, mongodb_atlas_project_id, mongodb_custom_data, mongodb_default_auth_db, mongodb_host_port, mongodb_name, mongodb_password, mongodb_roles, mongodb_scopes, mongodb_server_uri, mongodb_uri_options, mongodb_username, name, new_name, password_length, producer_encryption_key_name, secure_access_bastion_issuer, secure_access_certificate_issuer, secure_access_db_name, secure_access_delay, secure_access_enable, secure_access_host, secure_access_web, tags, target_name, token, uid_token, user_ttl].hash
431
441
  end
432
442
 
433
443
  # Builds the object from hash
@@ -28,6 +28,9 @@ module Akeyless
28
28
  # Set output format to JSON
29
29
  attr_accessor :json
30
30
 
31
+ # CSV of allowed DB names for runtime selection when getting the secret value. Empty => use target DB only; \"*\" => any DB allowed; One or more names => user must choose from this list
32
+ attr_accessor :mssql_allowed_db_names
33
+
31
34
  # MSSQL Creation statements
32
35
  attr_accessor :mssql_create_statements
33
36
 
@@ -107,6 +110,7 @@ module Akeyless
107
110
  :'delete_protection' => :'delete_protection',
108
111
  :'item_custom_fields' => :'item-custom-fields',
109
112
  :'json' => :'json',
113
+ :'mssql_allowed_db_names' => :'mssql-allowed-db-names',
110
114
  :'mssql_create_statements' => :'mssql-create-statements',
111
115
  :'mssql_dbname' => :'mssql-dbname',
112
116
  :'mssql_host' => :'mssql-host',
@@ -146,6 +150,7 @@ module Akeyless
146
150
  :'delete_protection' => :'String',
147
151
  :'item_custom_fields' => :'Hash<String, String>',
148
152
  :'json' => :'Boolean',
153
+ :'mssql_allowed_db_names' => :'String',
149
154
  :'mssql_create_statements' => :'String',
150
155
  :'mssql_dbname' => :'String',
151
156
  :'mssql_host' => :'String',
@@ -214,6 +219,10 @@ module Akeyless
214
219
  self.json = false
215
220
  end
216
221
 
222
+ if attributes.key?(:'mssql_allowed_db_names')
223
+ self.mssql_allowed_db_names = attributes[:'mssql_allowed_db_names']
224
+ end
225
+
217
226
  if attributes.key?(:'mssql_create_statements')
218
227
  self.mssql_create_statements = attributes[:'mssql_create_statements']
219
228
  end
@@ -354,6 +363,7 @@ module Akeyless
354
363
  delete_protection == o.delete_protection &&
355
364
  item_custom_fields == o.item_custom_fields &&
356
365
  json == o.json &&
366
+ mssql_allowed_db_names == o.mssql_allowed_db_names &&
357
367
  mssql_create_statements == o.mssql_create_statements &&
358
368
  mssql_dbname == o.mssql_dbname &&
359
369
  mssql_host == o.mssql_host &&
@@ -389,7 +399,7 @@ module Akeyless
389
399
  # Calculates hash code according to all attributes.
390
400
  # @return [Integer] Hash code
391
401
  def hash
392
- [custom_username_template, delete_protection, item_custom_fields, json, mssql_create_statements, mssql_dbname, mssql_host, mssql_password, mssql_port, mssql_revocation_statements, mssql_username, name, new_name, password_length, producer_encryption_key_name, secure_access_bastion_issuer, secure_access_certificate_issuer, secure_access_db_name, secure_access_db_schema, secure_access_delay, secure_access_enable, secure_access_host, secure_access_web, tags, target_name, token, uid_token, user_ttl].hash
402
+ [custom_username_template, delete_protection, item_custom_fields, json, mssql_allowed_db_names, mssql_create_statements, mssql_dbname, mssql_host, mssql_password, mssql_port, mssql_revocation_statements, mssql_username, name, new_name, password_length, producer_encryption_key_name, secure_access_bastion_issuer, secure_access_certificate_issuer, secure_access_db_name, secure_access_db_schema, secure_access_delay, secure_access_enable, secure_access_host, secure_access_web, tags, target_name, token, uid_token, user_ttl].hash
393
403
  end
394
404
 
395
405
  # Builds the object from hash
@@ -16,9 +16,15 @@ require 'time'
16
16
  module Akeyless
17
17
  # gatewayUpdateRemoteAccess is a command that update remote access config
18
18
  class GatewayUpdateRemoteAccess
19
+ # Specify a valid SSH-URL to tunnel to SSH session
20
+ attr_accessor :allowed_ssh_url
21
+
19
22
  # List of valid URLs to redirect from the Portal back to the remote access server (in a comma-delimited list)
20
23
  attr_accessor :allowed_urls
21
24
 
25
+ # Default session TTL in minutes
26
+ attr_accessor :default_session_ttl_minutes
27
+
22
28
  # Specifies whether to show/hide if the session is currently recorded [true/false]
23
29
  attr_accessor :hide_session_recording
24
30
 
@@ -49,7 +55,9 @@ module Akeyless
49
55
  # Attribute mapping from ruby-style variable name to JSON key.
50
56
  def self.attribute_map
51
57
  {
58
+ :'allowed_ssh_url' => :'allowed-ssh-url',
52
59
  :'allowed_urls' => :'allowed-urls',
60
+ :'default_session_ttl_minutes' => :'default-session-ttl-minutes',
53
61
  :'hide_session_recording' => :'hide-session-recording',
54
62
  :'json' => :'json',
55
63
  :'kexalgs' => :'kexalgs',
@@ -70,7 +78,9 @@ module Akeyless
70
78
  # Attribute type mapping.
71
79
  def self.openapi_types
72
80
  {
81
+ :'allowed_ssh_url' => :'String',
73
82
  :'allowed_urls' => :'String',
83
+ :'default_session_ttl_minutes' => :'String',
74
84
  :'hide_session_recording' => :'String',
75
85
  :'json' => :'Boolean',
76
86
  :'kexalgs' => :'String',
@@ -104,12 +114,24 @@ module Akeyless
104
114
  h[k.to_sym] = v
105
115
  }
106
116
 
117
+ if attributes.key?(:'allowed_ssh_url')
118
+ self.allowed_ssh_url = attributes[:'allowed_ssh_url']
119
+ else
120
+ self.allowed_ssh_url = 'use-existing'
121
+ end
122
+
107
123
  if attributes.key?(:'allowed_urls')
108
124
  self.allowed_urls = attributes[:'allowed_urls']
109
125
  else
110
126
  self.allowed_urls = 'use-existing'
111
127
  end
112
128
 
129
+ if attributes.key?(:'default_session_ttl_minutes')
130
+ self.default_session_ttl_minutes = attributes[:'default_session_ttl_minutes']
131
+ else
132
+ self.default_session_ttl_minutes = 'use-existing'
133
+ end
134
+
113
135
  if attributes.key?(:'hide_session_recording')
114
136
  self.hide_session_recording = attributes[:'hide_session_recording']
115
137
  end
@@ -177,7 +199,9 @@ module Akeyless
177
199
  def ==(o)
178
200
  return true if self.equal?(o)
179
201
  self.class == o.class &&
202
+ allowed_ssh_url == o.allowed_ssh_url &&
180
203
  allowed_urls == o.allowed_urls &&
204
+ default_session_ttl_minutes == o.default_session_ttl_minutes &&
181
205
  hide_session_recording == o.hide_session_recording &&
182
206
  json == o.json &&
183
207
  kexalgs == o.kexalgs &&
@@ -198,7 +222,7 @@ module Akeyless
198
222
  # Calculates hash code according to all attributes.
199
223
  # @return [Integer] Hash code
200
224
  def hash
201
- [allowed_urls, hide_session_recording, json, kexalgs, keyboard_layout, legacy_ssh_algorithm, rdp_target_configuration, ssh_target_configuration, token, uid_token].hash
225
+ [allowed_ssh_url, allowed_urls, default_session_ttl_minutes, hide_session_recording, json, kexalgs, keyboard_layout, legacy_ssh_algorithm, rdp_target_configuration, ssh_target_configuration, token, uid_token].hash
202
226
  end
203
227
 
204
228
  # Builds the object from hash
@@ -18,6 +18,9 @@ module Akeyless
18
18
  # Optional arguments as key=value pairs or JSON strings, e.g - \\\"--args=csr=base64_encoded_csr --args=common_name=bar\\\" or args='{\\\"csr\\\":\\\"base64_encoded_csr\\\"}. It is possible to combine both formats.'
19
19
  attr_accessor :args
20
20
 
21
+ # DBName: Optional override DB name (works only if DS allows it. only relevant for MSSQL)
22
+ attr_accessor :dbname
23
+
21
24
  # Host
22
25
  attr_accessor :host
23
26
 
@@ -43,6 +46,7 @@ module Akeyless
43
46
  def self.attribute_map
44
47
  {
45
48
  :'args' => :'args',
49
+ :'dbname' => :'dbname',
46
50
  :'host' => :'host',
47
51
  :'json' => :'json',
48
52
  :'name' => :'name',
@@ -62,6 +66,7 @@ module Akeyless
62
66
  def self.openapi_types
63
67
  {
64
68
  :'args' => :'Array<String>',
69
+ :'dbname' => :'String',
65
70
  :'host' => :'String',
66
71
  :'json' => :'Boolean',
67
72
  :'name' => :'String',
@@ -99,6 +104,10 @@ module Akeyless
99
104
  end
100
105
  end
101
106
 
107
+ if attributes.key?(:'dbname')
108
+ self.dbname = attributes[:'dbname']
109
+ end
110
+
102
111
  if attributes.key?(:'host')
103
112
  self.host = attributes[:'host']
104
113
  end
@@ -160,6 +169,7 @@ module Akeyless
160
169
  return true if self.equal?(o)
161
170
  self.class == o.class &&
162
171
  args == o.args &&
172
+ dbname == o.dbname &&
163
173
  host == o.host &&
164
174
  json == o.json &&
165
175
  name == o.name &&
@@ -178,7 +188,7 @@ module Akeyless
178
188
  # Calculates hash code according to all attributes.
179
189
  # @return [Integer] Hash code
180
190
  def hash
181
- [args, host, json, name, target, timeout, token, uid_token].hash
191
+ [args, dbname, host, json, name, target, timeout, token, uid_token].hash
182
192
  end
183
193
 
184
194
  # Builds the object from hash
@@ -0,0 +1,298 @@
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
+ # GetFolderOutput is the result of the getFolder operation
18
+ class GetFolderOutput
19
+ attr_accessor :access_date
20
+
21
+ attr_accessor :access_date_display
22
+
23
+ attr_accessor :accessibility
24
+
25
+ attr_accessor :creation_date
26
+
27
+ attr_accessor :delete_protection
28
+
29
+ attr_accessor :folder_id
30
+
31
+ attr_accessor :folder_name
32
+
33
+ attr_accessor :metadata
34
+
35
+ attr_accessor :modification_date
36
+
37
+ attr_accessor :tags
38
+
39
+ # Attribute mapping from ruby-style variable name to JSON key.
40
+ def self.attribute_map
41
+ {
42
+ :'access_date' => :'access_date',
43
+ :'access_date_display' => :'access_date_display',
44
+ :'accessibility' => :'accessibility',
45
+ :'creation_date' => :'creation_date',
46
+ :'delete_protection' => :'delete_protection',
47
+ :'folder_id' => :'folder_id',
48
+ :'folder_name' => :'folder_name',
49
+ :'metadata' => :'metadata',
50
+ :'modification_date' => :'modification_date',
51
+ :'tags' => :'tags'
52
+ }
53
+ end
54
+
55
+ # Returns all the JSON keys this model knows about
56
+ def self.acceptable_attributes
57
+ attribute_map.values
58
+ end
59
+
60
+ # Attribute type mapping.
61
+ def self.openapi_types
62
+ {
63
+ :'access_date' => :'Time',
64
+ :'access_date_display' => :'String',
65
+ :'accessibility' => :'Integer',
66
+ :'creation_date' => :'Time',
67
+ :'delete_protection' => :'Boolean',
68
+ :'folder_id' => :'Integer',
69
+ :'folder_name' => :'String',
70
+ :'metadata' => :'String',
71
+ :'modification_date' => :'Time',
72
+ :'tags' => :'Array<String>'
73
+ }
74
+ end
75
+
76
+ # List of attributes with nullable: true
77
+ def self.openapi_nullable
78
+ Set.new([
79
+ ])
80
+ end
81
+
82
+ # Initializes the object
83
+ # @param [Hash] attributes Model attributes in the form of hash
84
+ def initialize(attributes = {})
85
+ if (!attributes.is_a?(Hash))
86
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Akeyless::GetFolderOutput` initialize method"
87
+ end
88
+
89
+ # check to see if the attribute exists and convert string to symbol for hash key
90
+ attributes = attributes.each_with_object({}) { |(k, v), h|
91
+ if (!self.class.attribute_map.key?(k.to_sym))
92
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Akeyless::GetFolderOutput`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
93
+ end
94
+ h[k.to_sym] = v
95
+ }
96
+
97
+ if attributes.key?(:'access_date')
98
+ self.access_date = attributes[:'access_date']
99
+ end
100
+
101
+ if attributes.key?(:'access_date_display')
102
+ self.access_date_display = attributes[:'access_date_display']
103
+ end
104
+
105
+ if attributes.key?(:'accessibility')
106
+ self.accessibility = attributes[:'accessibility']
107
+ end
108
+
109
+ if attributes.key?(:'creation_date')
110
+ self.creation_date = attributes[:'creation_date']
111
+ end
112
+
113
+ if attributes.key?(:'delete_protection')
114
+ self.delete_protection = attributes[:'delete_protection']
115
+ end
116
+
117
+ if attributes.key?(:'folder_id')
118
+ self.folder_id = attributes[:'folder_id']
119
+ end
120
+
121
+ if attributes.key?(:'folder_name')
122
+ self.folder_name = attributes[:'folder_name']
123
+ end
124
+
125
+ if attributes.key?(:'metadata')
126
+ self.metadata = attributes[:'metadata']
127
+ end
128
+
129
+ if attributes.key?(:'modification_date')
130
+ self.modification_date = attributes[:'modification_date']
131
+ end
132
+
133
+ if attributes.key?(:'tags')
134
+ if (value = attributes[:'tags']).is_a?(Array)
135
+ self.tags = value
136
+ end
137
+ end
138
+ end
139
+
140
+ # Show invalid properties with the reasons. Usually used together with valid?
141
+ # @return Array for valid properties with the reasons
142
+ def list_invalid_properties
143
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
144
+ invalid_properties = Array.new
145
+ invalid_properties
146
+ end
147
+
148
+ # Check to see if the all the properties in the model are valid
149
+ # @return true if the model is valid
150
+ def valid?
151
+ warn '[DEPRECATED] the `valid?` method is obsolete'
152
+ true
153
+ end
154
+
155
+ # Checks equality by comparing each attribute.
156
+ # @param [Object] Object to be compared
157
+ def ==(o)
158
+ return true if self.equal?(o)
159
+ self.class == o.class &&
160
+ access_date == o.access_date &&
161
+ access_date_display == o.access_date_display &&
162
+ accessibility == o.accessibility &&
163
+ creation_date == o.creation_date &&
164
+ delete_protection == o.delete_protection &&
165
+ folder_id == o.folder_id &&
166
+ folder_name == o.folder_name &&
167
+ metadata == o.metadata &&
168
+ modification_date == o.modification_date &&
169
+ tags == o.tags
170
+ end
171
+
172
+ # @see the `==` method
173
+ # @param [Object] Object to be compared
174
+ def eql?(o)
175
+ self == o
176
+ end
177
+
178
+ # Calculates hash code according to all attributes.
179
+ # @return [Integer] Hash code
180
+ def hash
181
+ [access_date, access_date_display, accessibility, creation_date, delete_protection, folder_id, folder_name, metadata, modification_date, tags].hash
182
+ end
183
+
184
+ # Builds the object from hash
185
+ # @param [Hash] attributes Model attributes in the form of hash
186
+ # @return [Object] Returns the model itself
187
+ def self.build_from_hash(attributes)
188
+ return nil unless attributes.is_a?(Hash)
189
+ attributes = attributes.transform_keys(&:to_sym)
190
+ transformed_hash = {}
191
+ openapi_types.each_pair do |key, type|
192
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
193
+ transformed_hash["#{key}"] = nil
194
+ elsif type =~ /\AArray<(.*)>/i
195
+ # check to ensure the input is an array given that the attribute
196
+ # is documented as an array but the input is not
197
+ if attributes[attribute_map[key]].is_a?(Array)
198
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
199
+ end
200
+ elsif !attributes[attribute_map[key]].nil?
201
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
202
+ end
203
+ end
204
+ new(transformed_hash)
205
+ end
206
+
207
+ # Deserializes the data based on type
208
+ # @param string type Data type
209
+ # @param string value Value to be deserialized
210
+ # @return [Object] Deserialized data
211
+ def self._deserialize(type, value)
212
+ case type.to_sym
213
+ when :Time
214
+ Time.parse(value)
215
+ when :Date
216
+ Date.parse(value)
217
+ when :String
218
+ value.to_s
219
+ when :Integer
220
+ value.to_i
221
+ when :Float
222
+ value.to_f
223
+ when :Boolean
224
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
225
+ true
226
+ else
227
+ false
228
+ end
229
+ when :Object
230
+ # generic object (usually a Hash), return directly
231
+ value
232
+ when /\AArray<(?<inner_type>.+)>\z/
233
+ inner_type = Regexp.last_match[:inner_type]
234
+ value.map { |v| _deserialize(inner_type, v) }
235
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
236
+ k_type = Regexp.last_match[:k_type]
237
+ v_type = Regexp.last_match[:v_type]
238
+ {}.tap do |hash|
239
+ value.each do |k, v|
240
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
241
+ end
242
+ end
243
+ else # model
244
+ # models (e.g. Pet) or oneOf
245
+ klass = Akeyless.const_get(type)
246
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
247
+ end
248
+ end
249
+
250
+ # Returns the string representation of the object
251
+ # @return [String] String presentation of the object
252
+ def to_s
253
+ to_hash.to_s
254
+ end
255
+
256
+ # to_body is an alias to to_hash (backward compatibility)
257
+ # @return [Hash] Returns the object in the form of hash
258
+ def to_body
259
+ to_hash
260
+ end
261
+
262
+ # Returns the object in the form of hash
263
+ # @return [Hash] Returns the object in the form of hash
264
+ def to_hash
265
+ hash = {}
266
+ self.class.attribute_map.each_pair do |attr, param|
267
+ value = self.send(attr)
268
+ if value.nil?
269
+ is_nullable = self.class.openapi_nullable.include?(attr)
270
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
271
+ end
272
+
273
+ hash[param] = _to_hash(value)
274
+ end
275
+ hash
276
+ end
277
+
278
+ # Outputs non-array value in the form of hash
279
+ # For object, use to_hash. Otherwise, just return the value
280
+ # @param [Object] value Any valid value
281
+ # @return [Hash] Returns the value in the form of hash
282
+ def _to_hash(value)
283
+ if value.is_a?(Array)
284
+ value.compact.map { |v| _to_hash(v) }
285
+ elsif value.is_a?(Hash)
286
+ {}.tap do |hash|
287
+ value.each { |k, v| hash[k] = _to_hash(v) }
288
+ end
289
+ elsif value.respond_to? :to_hash
290
+ value.to_hash
291
+ else
292
+ value
293
+ end
294
+ end
295
+
296
+ end
297
+
298
+ end