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
@@ -16,6 +16,8 @@ require 'time'
16
16
  module Akeyless
17
17
  # dynamicSecretCreateGcp is a command that creates a GCP dynamic secret
18
18
  class DynamicSecretCreateGcp
19
+ attr_accessor :access_type
20
+
19
21
  # Customize how temporary usernames are generated using go template
20
22
  attr_accessor :custom_username_template
21
23
 
@@ -25,18 +27,24 @@ module Akeyless
25
27
  # Description of the object
26
28
  attr_accessor :description
27
29
 
30
+ # For externally provided users, denotes the key-name of IdP claim to extract the username from (Relevant only when --access-type=external)
31
+ attr_accessor :fixed_user_claim_keyname
32
+
28
33
  attr_accessor :gcp_cred_type
29
34
 
30
35
  # Base64-encoded service account private key text
31
36
  attr_accessor :gcp_key
32
37
 
33
- # Service account key algorithm, e.g. KEY_ALG_RSA_1024
38
+ # Service account key algorithm, e.g. KEY_ALG_RSA_1024 (Relevant only when --access-type=sa and --gcp-cred-type=key)
34
39
  attr_accessor :gcp_key_algo
35
40
 
36
- # The email of the fixed service acocunt to generate keys or tokens for. (revelant for service-account-type=fixed)
41
+ # GCP Project ID override for dynamic secret operations
42
+ attr_accessor :gcp_project_id
43
+
44
+ # The email of the fixed service account to generate keys or tokens for (Relevant only when --access-type=sa and --service-account-type=fixed)
37
45
  attr_accessor :gcp_sa_email
38
46
 
39
- # Access token scopes list, e.g. scope1,scope2
47
+ # Access token scopes list, e.g. scope1,scope2 (Relevant only when --access-type=sa; required when --gcp-cred-type=token)
40
48
  attr_accessor :gcp_token_scopes
41
49
 
42
50
  # Additional custom fields to associate with the item
@@ -51,10 +59,28 @@ module Akeyless
51
59
  # Dynamic producer encryption key
52
60
  attr_accessor :producer_encryption_key_name
53
61
 
54
- # Role binding definitions in json format
62
+ # Role binding definitions in JSON format (Relevant only when --access-type=sa and --service-account-type=dynamic)
55
63
  attr_accessor :role_binding
56
64
 
57
- # The type of the gcp dynamic secret. Options[fixed, dynamic]
65
+ # Comma-separated list of GCP roles to assign to the user (Relevant only when --access-type=external)
66
+ attr_accessor :role_names
67
+
68
+ # The delay duration, in seconds, to wait after generating just-in-time credentials. Accepted range: 0-120 seconds
69
+ attr_accessor :secure_access_delay
70
+
71
+ # Enable/Disable secure remote access [true/false]
72
+ attr_accessor :secure_access_enable
73
+
74
+ # Destination URL to inject secrets
75
+ attr_accessor :secure_access_url
76
+
77
+ # Secure browser via Akeyless's Secure Remote Access (SRA)
78
+ attr_accessor :secure_access_web_browsing
79
+
80
+ # Web-Proxy via Akeyless's Secure Remote Access (SRA)
81
+ attr_accessor :secure_access_web_proxy
82
+
83
+ # The type of the GCP service account. Options [fixed, dynamic] (Relevant only when --access-type=sa)
58
84
  attr_accessor :service_account_type
59
85
 
60
86
  # Add tags attached to this object
@@ -75,12 +101,15 @@ module Akeyless
75
101
  # Attribute mapping from ruby-style variable name to JSON key.
76
102
  def self.attribute_map
77
103
  {
104
+ :'access_type' => :'access-type',
78
105
  :'custom_username_template' => :'custom-username-template',
79
106
  :'delete_protection' => :'delete_protection',
80
107
  :'description' => :'description',
108
+ :'fixed_user_claim_keyname' => :'fixed-user-claim-keyname',
81
109
  :'gcp_cred_type' => :'gcp-cred-type',
82
110
  :'gcp_key' => :'gcp-key',
83
111
  :'gcp_key_algo' => :'gcp-key-algo',
112
+ :'gcp_project_id' => :'gcp-project-id',
84
113
  :'gcp_sa_email' => :'gcp-sa-email',
85
114
  :'gcp_token_scopes' => :'gcp-token-scopes',
86
115
  :'item_custom_fields' => :'item-custom-fields',
@@ -88,6 +117,12 @@ module Akeyless
88
117
  :'name' => :'name',
89
118
  :'producer_encryption_key_name' => :'producer-encryption-key-name',
90
119
  :'role_binding' => :'role-binding',
120
+ :'role_names' => :'role-names',
121
+ :'secure_access_delay' => :'secure-access-delay',
122
+ :'secure_access_enable' => :'secure-access-enable',
123
+ :'secure_access_url' => :'secure-access-url',
124
+ :'secure_access_web_browsing' => :'secure-access-web-browsing',
125
+ :'secure_access_web_proxy' => :'secure-access-web-proxy',
91
126
  :'service_account_type' => :'service-account-type',
92
127
  :'tags' => :'tags',
93
128
  :'target_name' => :'target-name',
@@ -105,12 +140,15 @@ module Akeyless
105
140
  # Attribute type mapping.
106
141
  def self.openapi_types
107
142
  {
143
+ :'access_type' => :'String',
108
144
  :'custom_username_template' => :'String',
109
145
  :'delete_protection' => :'String',
110
146
  :'description' => :'String',
147
+ :'fixed_user_claim_keyname' => :'String',
111
148
  :'gcp_cred_type' => :'String',
112
149
  :'gcp_key' => :'String',
113
150
  :'gcp_key_algo' => :'String',
151
+ :'gcp_project_id' => :'String',
114
152
  :'gcp_sa_email' => :'String',
115
153
  :'gcp_token_scopes' => :'String',
116
154
  :'item_custom_fields' => :'Hash<String, String>',
@@ -118,6 +156,12 @@ module Akeyless
118
156
  :'name' => :'String',
119
157
  :'producer_encryption_key_name' => :'String',
120
158
  :'role_binding' => :'String',
159
+ :'role_names' => :'String',
160
+ :'secure_access_delay' => :'Integer',
161
+ :'secure_access_enable' => :'String',
162
+ :'secure_access_url' => :'String',
163
+ :'secure_access_web_browsing' => :'Boolean',
164
+ :'secure_access_web_proxy' => :'Boolean',
121
165
  :'service_account_type' => :'String',
122
166
  :'tags' => :'Array<String>',
123
167
  :'target_name' => :'String',
@@ -148,6 +192,10 @@ module Akeyless
148
192
  h[k.to_sym] = v
149
193
  }
150
194
 
195
+ if attributes.key?(:'access_type')
196
+ self.access_type = attributes[:'access_type']
197
+ end
198
+
151
199
  if attributes.key?(:'custom_username_template')
152
200
  self.custom_username_template = attributes[:'custom_username_template']
153
201
  end
@@ -160,6 +208,12 @@ module Akeyless
160
208
  self.description = attributes[:'description']
161
209
  end
162
210
 
211
+ if attributes.key?(:'fixed_user_claim_keyname')
212
+ self.fixed_user_claim_keyname = attributes[:'fixed_user_claim_keyname']
213
+ else
214
+ self.fixed_user_claim_keyname = 'ext_email'
215
+ end
216
+
163
217
  if attributes.key?(:'gcp_cred_type')
164
218
  self.gcp_cred_type = attributes[:'gcp_cred_type']
165
219
  end
@@ -172,6 +226,10 @@ module Akeyless
172
226
  self.gcp_key_algo = attributes[:'gcp_key_algo']
173
227
  end
174
228
 
229
+ if attributes.key?(:'gcp_project_id')
230
+ self.gcp_project_id = attributes[:'gcp_project_id']
231
+ end
232
+
175
233
  if attributes.key?(:'gcp_sa_email')
176
234
  self.gcp_sa_email = attributes[:'gcp_sa_email']
177
235
  end
@@ -206,6 +264,34 @@ module Akeyless
206
264
  self.role_binding = attributes[:'role_binding']
207
265
  end
208
266
 
267
+ if attributes.key?(:'role_names')
268
+ self.role_names = attributes[:'role_names']
269
+ end
270
+
271
+ if attributes.key?(:'secure_access_delay')
272
+ self.secure_access_delay = attributes[:'secure_access_delay']
273
+ end
274
+
275
+ if attributes.key?(:'secure_access_enable')
276
+ self.secure_access_enable = attributes[:'secure_access_enable']
277
+ end
278
+
279
+ if attributes.key?(:'secure_access_url')
280
+ self.secure_access_url = attributes[:'secure_access_url']
281
+ end
282
+
283
+ if attributes.key?(:'secure_access_web_browsing')
284
+ self.secure_access_web_browsing = attributes[:'secure_access_web_browsing']
285
+ else
286
+ self.secure_access_web_browsing = false
287
+ end
288
+
289
+ if attributes.key?(:'secure_access_web_proxy')
290
+ self.secure_access_web_proxy = attributes[:'secure_access_web_proxy']
291
+ else
292
+ self.secure_access_web_proxy = false
293
+ end
294
+
209
295
  if attributes.key?(:'service_account_type')
210
296
  self.service_account_type = attributes[:'service_account_type']
211
297
  else
@@ -246,10 +332,6 @@ module Akeyless
246
332
  invalid_properties.push('invalid value for "name", name cannot be nil.')
247
333
  end
248
334
 
249
- if @service_account_type.nil?
250
- invalid_properties.push('invalid value for "service_account_type", service_account_type cannot be nil.')
251
- end
252
-
253
335
  invalid_properties
254
336
  end
255
337
 
@@ -258,7 +340,6 @@ module Akeyless
258
340
  def valid?
259
341
  warn '[DEPRECATED] the `valid?` method is obsolete'
260
342
  return false if @name.nil?
261
- return false if @service_account_type.nil?
262
343
  true
263
344
  end
264
345
 
@@ -267,12 +348,15 @@ module Akeyless
267
348
  def ==(o)
268
349
  return true if self.equal?(o)
269
350
  self.class == o.class &&
351
+ access_type == o.access_type &&
270
352
  custom_username_template == o.custom_username_template &&
271
353
  delete_protection == o.delete_protection &&
272
354
  description == o.description &&
355
+ fixed_user_claim_keyname == o.fixed_user_claim_keyname &&
273
356
  gcp_cred_type == o.gcp_cred_type &&
274
357
  gcp_key == o.gcp_key &&
275
358
  gcp_key_algo == o.gcp_key_algo &&
359
+ gcp_project_id == o.gcp_project_id &&
276
360
  gcp_sa_email == o.gcp_sa_email &&
277
361
  gcp_token_scopes == o.gcp_token_scopes &&
278
362
  item_custom_fields == o.item_custom_fields &&
@@ -280,6 +364,12 @@ module Akeyless
280
364
  name == o.name &&
281
365
  producer_encryption_key_name == o.producer_encryption_key_name &&
282
366
  role_binding == o.role_binding &&
367
+ role_names == o.role_names &&
368
+ secure_access_delay == o.secure_access_delay &&
369
+ secure_access_enable == o.secure_access_enable &&
370
+ secure_access_url == o.secure_access_url &&
371
+ secure_access_web_browsing == o.secure_access_web_browsing &&
372
+ secure_access_web_proxy == o.secure_access_web_proxy &&
283
373
  service_account_type == o.service_account_type &&
284
374
  tags == o.tags &&
285
375
  target_name == o.target_name &&
@@ -297,7 +387,7 @@ module Akeyless
297
387
  # Calculates hash code according to all attributes.
298
388
  # @return [Integer] Hash code
299
389
  def hash
300
- [custom_username_template, delete_protection, description, gcp_cred_type, gcp_key, gcp_key_algo, gcp_sa_email, gcp_token_scopes, item_custom_fields, json, name, producer_encryption_key_name, role_binding, service_account_type, tags, target_name, token, uid_token, user_ttl].hash
390
+ [access_type, custom_username_template, delete_protection, description, fixed_user_claim_keyname, gcp_cred_type, gcp_key, gcp_key_algo, gcp_project_id, gcp_sa_email, gcp_token_scopes, item_custom_fields, json, name, producer_encryption_key_name, role_binding, role_names, secure_access_delay, secure_access_enable, secure_access_url, secure_access_web_browsing, secure_access_web_proxy, service_account_type, tags, target_name, token, uid_token, user_ttl].hash
301
391
  end
302
392
 
303
393
  # Builds the object from hash
@@ -55,6 +55,9 @@ module Akeyless
55
55
 
56
56
  attr_accessor :role_scope
57
57
 
58
+ # The delay duration, in seconds, to wait after generating just-in-time credentials. Accepted range: 0-120 seconds
59
+ attr_accessor :secure_access_delay
60
+
58
61
  # Enable/Disable secure remote access [true/false]
59
62
  attr_accessor :secure_access_enable
60
63
 
@@ -102,6 +105,7 @@ module Akeyless
102
105
  :'producer_encryption_key_name' => :'producer-encryption-key-name',
103
106
  :'role_name' => :'role-name',
104
107
  :'role_scope' => :'role-scope',
108
+ :'secure_access_delay' => :'secure-access-delay',
105
109
  :'secure_access_enable' => :'secure-access-enable',
106
110
  :'secure_access_url' => :'secure-access-url',
107
111
  :'secure_access_web' => :'secure-access-web',
@@ -137,6 +141,7 @@ module Akeyless
137
141
  :'producer_encryption_key_name' => :'String',
138
142
  :'role_name' => :'String',
139
143
  :'role_scope' => :'String',
144
+ :'secure_access_delay' => :'Integer',
140
145
  :'secure_access_enable' => :'String',
141
146
  :'secure_access_url' => :'String',
142
147
  :'secure_access_web' => :'Boolean',
@@ -239,6 +244,10 @@ module Akeyless
239
244
  self.role_scope = attributes[:'role_scope']
240
245
  end
241
246
 
247
+ if attributes.key?(:'secure_access_delay')
248
+ self.secure_access_delay = attributes[:'secure_access_delay']
249
+ end
250
+
242
251
  if attributes.key?(:'secure_access_enable')
243
252
  self.secure_access_enable = attributes[:'secure_access_enable']
244
253
  end
@@ -339,6 +348,7 @@ module Akeyless
339
348
  producer_encryption_key_name == o.producer_encryption_key_name &&
340
349
  role_name == o.role_name &&
341
350
  role_scope == o.role_scope &&
351
+ secure_access_delay == o.secure_access_delay &&
342
352
  secure_access_enable == o.secure_access_enable &&
343
353
  secure_access_url == o.secure_access_url &&
344
354
  secure_access_web == o.secure_access_web &&
@@ -360,7 +370,7 @@ module Akeyless
360
370
  # Calculates hash code according to all attributes.
361
371
  # @return [Integer] Hash code
362
372
  def hash
363
- [access_mode, admin_email, delete_protection, description, fixed_user_claim_keyname, gcp_key, group_email, group_role, item_custom_fields, json, name, producer_encryption_key_name, role_name, role_scope, secure_access_enable, secure_access_url, secure_access_web, secure_access_web_browsing, secure_access_web_proxy, tags, target_name, token, uid_token, user_ttl].hash
373
+ [access_mode, admin_email, delete_protection, description, fixed_user_claim_keyname, gcp_key, group_email, group_role, item_custom_fields, json, name, producer_encryption_key_name, role_name, role_scope, secure_access_delay, secure_access_enable, secure_access_url, secure_access_web, secure_access_web_browsing, secure_access_web_proxy, tags, target_name, token, uid_token, user_ttl].hash
364
374
  end
365
375
 
366
376
  # Builds the object from hash
@@ -58,6 +58,9 @@ module Akeyless
58
58
  # MongoDB Roles
59
59
  attr_accessor :mongodb_roles
60
60
 
61
+ # MongoDB Scopes (Atlas only)
62
+ attr_accessor :mongodb_scopes
63
+
61
64
  # MongoDB server URI
62
65
  attr_accessor :mongodb_server_uri
63
66
 
@@ -129,6 +132,7 @@ module Akeyless
129
132
  :'mongodb_name' => :'mongodb-name',
130
133
  :'mongodb_password' => :'mongodb-password',
131
134
  :'mongodb_roles' => :'mongodb-roles',
135
+ :'mongodb_scopes' => :'mongodb-scopes',
132
136
  :'mongodb_server_uri' => :'mongodb-server-uri',
133
137
  :'mongodb_uri_options' => :'mongodb-uri-options',
134
138
  :'mongodb_username' => :'mongodb-username',
@@ -172,6 +176,7 @@ module Akeyless
172
176
  :'mongodb_name' => :'String',
173
177
  :'mongodb_password' => :'String',
174
178
  :'mongodb_roles' => :'String',
179
+ :'mongodb_scopes' => :'String',
175
180
  :'mongodb_server_uri' => :'String',
176
181
  :'mongodb_uri_options' => :'String',
177
182
  :'mongodb_username' => :'String',
@@ -276,6 +281,10 @@ module Akeyless
276
281
  self.mongodb_roles = '[]'
277
282
  end
278
283
 
284
+ if attributes.key?(:'mongodb_scopes')
285
+ self.mongodb_scopes = attributes[:'mongodb_scopes']
286
+ end
287
+
279
288
  if attributes.key?(:'mongodb_server_uri')
280
289
  self.mongodb_server_uri = attributes[:'mongodb_server_uri']
281
290
  end
@@ -398,6 +407,7 @@ module Akeyless
398
407
  mongodb_name == o.mongodb_name &&
399
408
  mongodb_password == o.mongodb_password &&
400
409
  mongodb_roles == o.mongodb_roles &&
410
+ mongodb_scopes == o.mongodb_scopes &&
401
411
  mongodb_server_uri == o.mongodb_server_uri &&
402
412
  mongodb_uri_options == o.mongodb_uri_options &&
403
413
  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, description, 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, 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, description, 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, 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
@@ -31,6 +31,9 @@ module Akeyless
31
31
  # Set output format to JSON
32
32
  attr_accessor :json
33
33
 
34
+ # 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
35
+ attr_accessor :mssql_allowed_db_names
36
+
34
37
  # MSSQL Creation statements
35
38
  attr_accessor :mssql_create_statements
36
39
 
@@ -108,6 +111,7 @@ module Akeyless
108
111
  :'description' => :'description',
109
112
  :'item_custom_fields' => :'item-custom-fields',
110
113
  :'json' => :'json',
114
+ :'mssql_allowed_db_names' => :'mssql-allowed-db-names',
111
115
  :'mssql_create_statements' => :'mssql-create-statements',
112
116
  :'mssql_dbname' => :'mssql-dbname',
113
117
  :'mssql_host' => :'mssql-host',
@@ -147,6 +151,7 @@ module Akeyless
147
151
  :'description' => :'String',
148
152
  :'item_custom_fields' => :'Hash<String, String>',
149
153
  :'json' => :'Boolean',
154
+ :'mssql_allowed_db_names' => :'String',
150
155
  :'mssql_create_statements' => :'String',
151
156
  :'mssql_dbname' => :'String',
152
157
  :'mssql_host' => :'String',
@@ -218,6 +223,10 @@ module Akeyless
218
223
  self.json = false
219
224
  end
220
225
 
226
+ if attributes.key?(:'mssql_allowed_db_names')
227
+ self.mssql_allowed_db_names = attributes[:'mssql_allowed_db_names']
228
+ end
229
+
221
230
  if attributes.key?(:'mssql_create_statements')
222
231
  self.mssql_create_statements = attributes[:'mssql_create_statements']
223
232
  end
@@ -355,6 +364,7 @@ module Akeyless
355
364
  description == o.description &&
356
365
  item_custom_fields == o.item_custom_fields &&
357
366
  json == o.json &&
367
+ mssql_allowed_db_names == o.mssql_allowed_db_names &&
358
368
  mssql_create_statements == o.mssql_create_statements &&
359
369
  mssql_dbname == o.mssql_dbname &&
360
370
  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, description, item_custom_fields, json, mssql_create_statements, mssql_dbname, mssql_host, mssql_password, mssql_port, mssql_revocation_statements, mssql_username, 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, description, 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, 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
@@ -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