akeyless 5.0.20 → 5.0.22

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 (188) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +40 -1
  3. data/docs/AccountGeneralSettings.md +2 -0
  4. data/docs/ActiveDirectoryPayload.md +6 -0
  5. data/docs/Auth.md +2 -0
  6. data/docs/AuthMethodCreateCert.md +2 -0
  7. data/docs/AuthMethodUpdateCert.md +2 -0
  8. data/docs/AzureADAccessRules.md +2 -0
  9. data/docs/AzureTargetDetails.md +2 -0
  10. data/docs/CertAccessRules.md +2 -0
  11. data/docs/CertificateChainInfo.md +2 -0
  12. data/docs/Configure.md +2 -0
  13. data/docs/ConjurMigration.md +20 -0
  14. data/docs/ConjurPayload.md +24 -0
  15. data/docs/CreateAuthMethodCert.md +2 -0
  16. data/docs/CreateAzureTarget.md +2 -0
  17. data/docs/CreateUSC.md +10 -0
  18. data/docs/DSProducerDetails.md +2 -0
  19. data/docs/DefaultAuthMethodSettings.md +20 -0
  20. data/docs/GCPPayload.md +5 -1
  21. data/docs/GatewayCreateMigration.md +20 -2
  22. data/docs/GatewayUpdateMigration.md +19 -1
  23. data/docs/GetPKICertificateOutput.md +2 -0
  24. data/docs/GithubMetadata.md +28 -0
  25. data/docs/HTTPChallengeInfo.md +26 -0
  26. data/docs/IssuerOverviewInfo.md +22 -0
  27. data/docs/ItemGeneralInfo.md +2 -0
  28. data/docs/LetsEncryptTargetDetails.md +38 -0
  29. data/docs/MigrationStatusReplyObj.md +2 -0
  30. data/docs/MigrationsConfigPart.md +2 -0
  31. data/docs/PoliciesCreateOutput.md +18 -0
  32. data/docs/PoliciesDelete.md +24 -0
  33. data/docs/PoliciesGet.md +24 -0
  34. data/docs/PoliciesGetOutput.md +18 -0
  35. data/docs/PoliciesList.md +30 -0
  36. data/docs/PoliciesListOutput.md +18 -0
  37. data/docs/PolicyCreateKeys.md +34 -0
  38. data/docs/PolicyOutput.md +34 -0
  39. data/docs/PolicyUpdateKeys.md +36 -0
  40. data/docs/RotatedSecretCreateAws.md +4 -2
  41. data/docs/RotatedSecretCreateAzure.md +4 -2
  42. data/docs/RotatedSecretCreateCassandra.md +1 -1
  43. data/docs/RotatedSecretCreateCustom.md +1 -1
  44. data/docs/RotatedSecretCreateDockerhub.md +1 -1
  45. data/docs/RotatedSecretCreateGcp.md +4 -2
  46. data/docs/RotatedSecretCreateHanadb.md +1 -1
  47. data/docs/RotatedSecretCreateLdap.md +1 -1
  48. data/docs/RotatedSecretCreateMongodb.md +1 -1
  49. data/docs/RotatedSecretCreateMssql.md +1 -1
  50. data/docs/RotatedSecretCreateMysql.md +1 -1
  51. data/docs/RotatedSecretCreateOpenAI.md +1 -1
  52. data/docs/RotatedSecretCreateOracledb.md +1 -1
  53. data/docs/RotatedSecretCreatePostgresql.md +1 -1
  54. data/docs/RotatedSecretCreateRedis.md +1 -1
  55. data/docs/RotatedSecretCreateRedshift.md +1 -1
  56. data/docs/RotatedSecretCreateSnowflake.md +1 -1
  57. data/docs/RotatedSecretCreateSplunk.md +68 -0
  58. data/docs/RotatedSecretCreateSsh.md +1 -1
  59. data/docs/RotatedSecretCreateWindows.md +1 -1
  60. data/docs/RotatedSecretDetailsInfo.md +2 -0
  61. data/docs/RotatedSecretUpdateAws.md +3 -1
  62. data/docs/RotatedSecretUpdateAzure.md +3 -1
  63. data/docs/RotatedSecretUpdateGcp.md +3 -1
  64. data/docs/RotatedSecretUpdateSplunk.md +64 -0
  65. data/docs/SecretInfo.md +2 -0
  66. data/docs/SplunkPayload.md +30 -0
  67. data/docs/SplunkTargetDetails.md +34 -0
  68. data/docs/TargetCreateAzure.md +2 -0
  69. data/docs/TargetCreateLetsEncrypt.md +46 -0
  70. data/docs/TargetCreateSplunk.md +42 -0
  71. data/docs/TargetTypeDetailsInput.md +4 -0
  72. data/docs/TargetUpdateAzure.md +2 -0
  73. data/docs/TargetUpdateLetsEncrypt.md +50 -0
  74. data/docs/UpdateAuthMethodCert.md +2 -0
  75. data/docs/UpdateAzureTarget.md +2 -0
  76. data/docs/V2Api.md +756 -0
  77. data/docs/ValidateCertificateChallenge.md +30 -0
  78. data/docs/ValidateCertificateChallengeOutput.md +24 -0
  79. data/docs/VaultAddress.md +20 -0
  80. data/docs/VaultAddressOutput.md +20 -0
  81. data/lib/akeyless/api/v2_api.rb +775 -7
  82. data/lib/akeyless/models/account_general_settings.rb +10 -1
  83. data/lib/akeyless/models/active_directory_payload.rb +30 -1
  84. data/lib/akeyless/models/auth.rb +13 -1
  85. data/lib/akeyless/models/auth_method_create_cert.rb +11 -1
  86. data/lib/akeyless/models/auth_method_update_cert.rb +11 -1
  87. data/lib/akeyless/models/azure_ad_access_rules.rb +11 -1
  88. data/lib/akeyless/models/azure_target_details.rb +10 -1
  89. data/lib/akeyless/models/cert_access_rules.rb +11 -1
  90. data/lib/akeyless/models/certificate_chain_info.rb +11 -1
  91. data/lib/akeyless/models/configure.rb +13 -1
  92. data/lib/akeyless/models/conjur_migration.rb +223 -0
  93. data/lib/akeyless/models/conjur_payload.rb +241 -0
  94. data/lib/akeyless/models/create_auth_method_cert.rb +11 -1
  95. data/lib/akeyless/models/create_azure_target.rb +13 -1
  96. data/lib/akeyless/models/create_usc.rb +54 -1
  97. data/lib/akeyless/models/default_auth_method_settings.rb +223 -0
  98. data/lib/akeyless/models/ds_producer_details.rb +10 -1
  99. data/lib/akeyless/models/gateway_create_migration.rb +97 -5
  100. data/lib/akeyless/models/gateway_update_migration.rb +96 -4
  101. data/lib/akeyless/models/gcp_payload.rb +22 -4
  102. data/lib/akeyless/models/get_pki_certificate_output.rb +10 -1
  103. data/lib/akeyless/models/github_metadata.rb +259 -0
  104. data/lib/akeyless/models/http_challenge_info.rb +251 -0
  105. data/lib/akeyless/models/issuer_overview_info.rb +232 -0
  106. data/lib/akeyless/models/item_general_info.rb +10 -1
  107. data/lib/akeyless/models/lets_encrypt_target_details.rb +315 -0
  108. data/lib/akeyless/models/migration_status_reply_obj.rb +10 -1
  109. data/lib/akeyless/models/migrations_config_part.rb +12 -1
  110. data/lib/akeyless/models/policies_create_output.rb +214 -0
  111. data/lib/akeyless/models/policies_delete.rb +254 -0
  112. data/lib/akeyless/models/policies_get.rb +254 -0
  113. data/lib/akeyless/models/policies_get_output.rb +214 -0
  114. data/lib/akeyless/models/policies_list.rb +283 -0
  115. data/lib/akeyless/models/policies_list_output.rb +216 -0
  116. data/lib/akeyless/models/policy_create_keys.rb +312 -0
  117. data/lib/akeyless/models/policy_output.rb +295 -0
  118. data/lib/akeyless/models/policy_update_keys.rb +322 -0
  119. data/lib/akeyless/models/rotated_secret_create_aws.rb +13 -3
  120. data/lib/akeyless/models/rotated_secret_create_azure.rb +13 -3
  121. data/lib/akeyless/models/rotated_secret_create_cassandra.rb +1 -1
  122. data/lib/akeyless/models/rotated_secret_create_custom.rb +1 -1
  123. data/lib/akeyless/models/rotated_secret_create_dockerhub.rb +1 -1
  124. data/lib/akeyless/models/rotated_secret_create_gcp.rb +13 -3
  125. data/lib/akeyless/models/rotated_secret_create_hanadb.rb +1 -1
  126. data/lib/akeyless/models/rotated_secret_create_ldap.rb +1 -1
  127. data/lib/akeyless/models/rotated_secret_create_mongodb.rb +1 -1
  128. data/lib/akeyless/models/rotated_secret_create_mssql.rb +1 -1
  129. data/lib/akeyless/models/rotated_secret_create_mysql.rb +1 -1
  130. data/lib/akeyless/models/rotated_secret_create_open_ai.rb +1 -1
  131. data/lib/akeyless/models/rotated_secret_create_oracledb.rb +1 -1
  132. data/lib/akeyless/models/rotated_secret_create_postgresql.rb +1 -1
  133. data/lib/akeyless/models/rotated_secret_create_redis.rb +1 -1
  134. data/lib/akeyless/models/rotated_secret_create_redshift.rb +1 -1
  135. data/lib/akeyless/models/rotated_secret_create_snowflake.rb +1 -1
  136. data/lib/akeyless/models/rotated_secret_create_splunk.rb +497 -0
  137. data/lib/akeyless/models/rotated_secret_create_ssh.rb +1 -1
  138. data/lib/akeyless/models/rotated_secret_create_windows.rb +1 -1
  139. data/lib/akeyless/models/rotated_secret_details_info.rb +10 -1
  140. data/lib/akeyless/models/rotated_secret_update_aws.rb +12 -2
  141. data/lib/akeyless/models/rotated_secret_update_azure.rb +12 -2
  142. data/lib/akeyless/models/rotated_secret_update_gcp.rb +12 -2
  143. data/lib/akeyless/models/rotated_secret_update_splunk.rb +467 -0
  144. data/lib/akeyless/models/secret_info.rb +10 -1
  145. data/lib/akeyless/models/splunk_payload.rb +268 -0
  146. data/lib/akeyless/models/splunk_target_details.rb +294 -0
  147. data/lib/akeyless/models/target_create_azure.rb +13 -1
  148. data/lib/akeyless/models/target_create_lets_encrypt.rb +368 -0
  149. data/lib/akeyless/models/target_create_splunk.rb +354 -0
  150. data/lib/akeyless/models/target_type_details_input.rb +19 -1
  151. data/lib/akeyless/models/target_update_azure.rb +13 -1
  152. data/lib/akeyless/models/target_update_lets_encrypt.rb +388 -0
  153. data/lib/akeyless/models/update_auth_method_cert.rb +11 -1
  154. data/lib/akeyless/models/update_azure_target.rb +13 -1
  155. data/lib/akeyless/models/validate_certificate_challenge.rb +279 -0
  156. data/lib/akeyless/models/validate_certificate_challenge_output.rb +242 -0
  157. data/lib/akeyless/models/vault_address.rb +227 -0
  158. data/lib/akeyless/models/vault_address_output.rb +223 -0
  159. data/lib/akeyless/version.rb +1 -1
  160. data/lib/akeyless.rb +27 -0
  161. data/spec/models/conjur_migration_spec.rb +42 -0
  162. data/spec/models/conjur_payload_spec.rb +54 -0
  163. data/spec/models/default_auth_method_settings_spec.rb +42 -0
  164. data/spec/models/github_metadata_spec.rb +66 -0
  165. data/spec/models/http_challenge_info_spec.rb +60 -0
  166. data/spec/models/issuer_overview_info_spec.rb +48 -0
  167. data/spec/models/lets_encrypt_target_details_spec.rb +96 -0
  168. data/spec/models/policies_create_output_spec.rb +36 -0
  169. data/spec/models/policies_delete_spec.rb +54 -0
  170. data/spec/models/policies_get_output_spec.rb +36 -0
  171. data/spec/models/policies_get_spec.rb +54 -0
  172. data/spec/models/policies_list_output_spec.rb +36 -0
  173. data/spec/models/policies_list_spec.rb +72 -0
  174. data/spec/models/policy_create_keys_spec.rb +84 -0
  175. data/spec/models/policy_output_spec.rb +84 -0
  176. data/spec/models/policy_update_keys_spec.rb +90 -0
  177. data/spec/models/rotated_secret_create_splunk_spec.rb +186 -0
  178. data/spec/models/rotated_secret_update_splunk_spec.rb +174 -0
  179. data/spec/models/splunk_payload_spec.rb +72 -0
  180. data/spec/models/splunk_target_details_spec.rb +84 -0
  181. data/spec/models/target_create_lets_encrypt_spec.rb +120 -0
  182. data/spec/models/target_create_splunk_spec.rb +108 -0
  183. data/spec/models/target_update_lets_encrypt_spec.rb +132 -0
  184. data/spec/models/validate_certificate_challenge_output_spec.rb +54 -0
  185. data/spec/models/validate_certificate_challenge_spec.rb +72 -0
  186. data/spec/models/vault_address_output_spec.rb +42 -0
  187. data/spec/models/vault_address_spec.rb +42 -0
  188. metadata +109 -1
@@ -25,12 +25,18 @@ module Akeyless
25
25
  # Description of the Universal Secrets Connector
26
26
  attr_accessor :description
27
27
 
28
+ # The environments in repo-name/environment-name format, comma-separated (only relevant for: github-scope=repository-environment)
29
+ attr_accessor :environment_names
30
+
28
31
  # GCP Project ID (Relevant only for GCP targets)
29
32
  attr_accessor :gcp_project_id
30
33
 
31
34
  # GCP Secret Manager regions to query for regional secrets (comma-separated, e.g., us-east1,us-west1). Max 12 regions. Required when listing with object-type=regional-secrets.
32
35
  attr_accessor :gcp_sm_regions
33
36
 
37
+ # The scope where secrets will be created, available options: [repository, organization, repository-environment]
38
+ attr_accessor :github_scope
39
+
34
40
  # Additional custom fields to associate with the item
35
41
  attr_accessor :item_custom_fields
36
42
 
@@ -43,6 +49,14 @@ module Akeyless
43
49
  # Universal Secrets Connector name
44
50
  attr_accessor :name
45
51
 
52
+ # The organization name to create the secret in (only relevant for: github-scope=organization)
53
+ attr_accessor :organization_name
54
+
55
+ attr_accessor :repository_access
56
+
57
+ # The repository names, comma-separated (only relevant for: github-scope=repository)
58
+ attr_accessor :repository_names
59
+
46
60
  # List of the tags attached to this Universal Secrets Connector
47
61
  attr_accessor :tags
48
62
 
@@ -67,12 +81,17 @@ module Akeyless
67
81
  :'azure_kv_name' => :'azure-kv-name',
68
82
  :'delete_protection' => :'delete_protection',
69
83
  :'description' => :'description',
84
+ :'environment_names' => :'environment-names',
70
85
  :'gcp_project_id' => :'gcp-project-id',
71
86
  :'gcp_sm_regions' => :'gcp-sm-regions',
87
+ :'github_scope' => :'github-scope',
72
88
  :'item_custom_fields' => :'item-custom-fields',
73
89
  :'json' => :'json',
74
90
  :'k8s_namespace' => :'k8s-namespace',
75
91
  :'name' => :'name',
92
+ :'organization_name' => :'organization-name',
93
+ :'repository_access' => :'repository-access',
94
+ :'repository_names' => :'repository-names',
76
95
  :'tags' => :'tags',
77
96
  :'target_to_associate' => :'target-to-associate',
78
97
  :'token' => :'token',
@@ -93,12 +112,17 @@ module Akeyless
93
112
  :'azure_kv_name' => :'String',
94
113
  :'delete_protection' => :'String',
95
114
  :'description' => :'String',
115
+ :'environment_names' => :'String',
96
116
  :'gcp_project_id' => :'String',
97
117
  :'gcp_sm_regions' => :'String',
118
+ :'github_scope' => :'String',
98
119
  :'item_custom_fields' => :'Hash<String, String>',
99
120
  :'json' => :'Boolean',
100
121
  :'k8s_namespace' => :'String',
101
122
  :'name' => :'String',
123
+ :'organization_name' => :'String',
124
+ :'repository_access' => :'String',
125
+ :'repository_names' => :'String',
102
126
  :'tags' => :'Array<String>',
103
127
  :'target_to_associate' => :'String',
104
128
  :'token' => :'String',
@@ -141,6 +165,10 @@ module Akeyless
141
165
  self.description = attributes[:'description']
142
166
  end
143
167
 
168
+ if attributes.key?(:'environment_names')
169
+ self.environment_names = attributes[:'environment_names']
170
+ end
171
+
144
172
  if attributes.key?(:'gcp_project_id')
145
173
  self.gcp_project_id = attributes[:'gcp_project_id']
146
174
  end
@@ -149,6 +177,12 @@ module Akeyless
149
177
  self.gcp_sm_regions = attributes[:'gcp_sm_regions']
150
178
  end
151
179
 
180
+ if attributes.key?(:'github_scope')
181
+ self.github_scope = attributes[:'github_scope']
182
+ else
183
+ self.github_scope = 'repository'
184
+ end
185
+
152
186
  if attributes.key?(:'item_custom_fields')
153
187
  if (value = attributes[:'item_custom_fields']).is_a?(Hash)
154
188
  self.item_custom_fields = value
@@ -171,6 +205,20 @@ module Akeyless
171
205
  self.name = nil
172
206
  end
173
207
 
208
+ if attributes.key?(:'organization_name')
209
+ self.organization_name = attributes[:'organization_name']
210
+ end
211
+
212
+ if attributes.key?(:'repository_access')
213
+ self.repository_access = attributes[:'repository_access']
214
+ else
215
+ self.repository_access = 'public'
216
+ end
217
+
218
+ if attributes.key?(:'repository_names')
219
+ self.repository_names = attributes[:'repository_names']
220
+ end
221
+
174
222
  if attributes.key?(:'tags')
175
223
  if (value = attributes[:'tags']).is_a?(Array)
176
224
  self.tags = value
@@ -235,12 +283,17 @@ module Akeyless
235
283
  azure_kv_name == o.azure_kv_name &&
236
284
  delete_protection == o.delete_protection &&
237
285
  description == o.description &&
286
+ environment_names == o.environment_names &&
238
287
  gcp_project_id == o.gcp_project_id &&
239
288
  gcp_sm_regions == o.gcp_sm_regions &&
289
+ github_scope == o.github_scope &&
240
290
  item_custom_fields == o.item_custom_fields &&
241
291
  json == o.json &&
242
292
  k8s_namespace == o.k8s_namespace &&
243
293
  name == o.name &&
294
+ organization_name == o.organization_name &&
295
+ repository_access == o.repository_access &&
296
+ repository_names == o.repository_names &&
244
297
  tags == o.tags &&
245
298
  target_to_associate == o.target_to_associate &&
246
299
  token == o.token &&
@@ -258,7 +311,7 @@ module Akeyless
258
311
  # Calculates hash code according to all attributes.
259
312
  # @return [Integer] Hash code
260
313
  def hash
261
- [azure_kv_name, delete_protection, description, gcp_project_id, gcp_sm_regions, item_custom_fields, json, k8s_namespace, name, tags, target_to_associate, token, uid_token, usc_prefix, use_prefix_as_filter].hash
314
+ [azure_kv_name, delete_protection, description, environment_names, gcp_project_id, gcp_sm_regions, github_scope, item_custom_fields, json, k8s_namespace, name, organization_name, repository_access, repository_names, tags, target_to_associate, token, uid_token, usc_prefix, use_prefix_as_filter].hash
262
315
  end
263
316
 
264
317
  # Builds the object from hash
@@ -0,0 +1,223 @@
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 DefaultAuthMethodSettings
18
+ attr_accessor :default_access_id
19
+
20
+ attr_accessor :default_auth_method_type
21
+
22
+ # Attribute mapping from ruby-style variable name to JSON key.
23
+ def self.attribute_map
24
+ {
25
+ :'default_access_id' => :'default_access_id',
26
+ :'default_auth_method_type' => :'default_auth_method_type'
27
+ }
28
+ end
29
+
30
+ # Returns all the JSON keys this model knows about
31
+ def self.acceptable_attributes
32
+ attribute_map.values
33
+ end
34
+
35
+ # Attribute type mapping.
36
+ def self.openapi_types
37
+ {
38
+ :'default_access_id' => :'String',
39
+ :'default_auth_method_type' => :'String'
40
+ }
41
+ end
42
+
43
+ # List of attributes with nullable: true
44
+ def self.openapi_nullable
45
+ Set.new([
46
+ ])
47
+ end
48
+
49
+ # Initializes the object
50
+ # @param [Hash] attributes Model attributes in the form of hash
51
+ def initialize(attributes = {})
52
+ if (!attributes.is_a?(Hash))
53
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Akeyless::DefaultAuthMethodSettings` initialize method"
54
+ end
55
+
56
+ # check to see if the attribute exists and convert string to symbol for hash key
57
+ attributes = attributes.each_with_object({}) { |(k, v), h|
58
+ if (!self.class.attribute_map.key?(k.to_sym))
59
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Akeyless::DefaultAuthMethodSettings`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
60
+ end
61
+ h[k.to_sym] = v
62
+ }
63
+
64
+ if attributes.key?(:'default_access_id')
65
+ self.default_access_id = attributes[:'default_access_id']
66
+ end
67
+
68
+ if attributes.key?(:'default_auth_method_type')
69
+ self.default_auth_method_type = attributes[:'default_auth_method_type']
70
+ end
71
+ end
72
+
73
+ # Show invalid properties with the reasons. Usually used together with valid?
74
+ # @return Array for valid properties with the reasons
75
+ def list_invalid_properties
76
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
77
+ invalid_properties = Array.new
78
+ invalid_properties
79
+ end
80
+
81
+ # Check to see if the all the properties in the model are valid
82
+ # @return true if the model is valid
83
+ def valid?
84
+ warn '[DEPRECATED] the `valid?` method is obsolete'
85
+ true
86
+ end
87
+
88
+ # Checks equality by comparing each attribute.
89
+ # @param [Object] Object to be compared
90
+ def ==(o)
91
+ return true if self.equal?(o)
92
+ self.class == o.class &&
93
+ default_access_id == o.default_access_id &&
94
+ default_auth_method_type == o.default_auth_method_type
95
+ end
96
+
97
+ # @see the `==` method
98
+ # @param [Object] Object to be compared
99
+ def eql?(o)
100
+ self == o
101
+ end
102
+
103
+ # Calculates hash code according to all attributes.
104
+ # @return [Integer] Hash code
105
+ def hash
106
+ [default_access_id, default_auth_method_type].hash
107
+ end
108
+
109
+ # Builds the object from hash
110
+ # @param [Hash] attributes Model attributes in the form of hash
111
+ # @return [Object] Returns the model itself
112
+ def self.build_from_hash(attributes)
113
+ return nil unless attributes.is_a?(Hash)
114
+ attributes = attributes.transform_keys(&:to_sym)
115
+ transformed_hash = {}
116
+ openapi_types.each_pair do |key, type|
117
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
118
+ transformed_hash["#{key}"] = nil
119
+ elsif type =~ /\AArray<(.*)>/i
120
+ # check to ensure the input is an array given that the attribute
121
+ # is documented as an array but the input is not
122
+ if attributes[attribute_map[key]].is_a?(Array)
123
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
124
+ end
125
+ elsif !attributes[attribute_map[key]].nil?
126
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
127
+ end
128
+ end
129
+ new(transformed_hash)
130
+ end
131
+
132
+ # Deserializes the data based on type
133
+ # @param string type Data type
134
+ # @param string value Value to be deserialized
135
+ # @return [Object] Deserialized data
136
+ def self._deserialize(type, value)
137
+ case type.to_sym
138
+ when :Time
139
+ Time.parse(value)
140
+ when :Date
141
+ Date.parse(value)
142
+ when :String
143
+ value.to_s
144
+ when :Integer
145
+ value.to_i
146
+ when :Float
147
+ value.to_f
148
+ when :Boolean
149
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
150
+ true
151
+ else
152
+ false
153
+ end
154
+ when :Object
155
+ # generic object (usually a Hash), return directly
156
+ value
157
+ when /\AArray<(?<inner_type>.+)>\z/
158
+ inner_type = Regexp.last_match[:inner_type]
159
+ value.map { |v| _deserialize(inner_type, v) }
160
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
161
+ k_type = Regexp.last_match[:k_type]
162
+ v_type = Regexp.last_match[:v_type]
163
+ {}.tap do |hash|
164
+ value.each do |k, v|
165
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
166
+ end
167
+ end
168
+ else # model
169
+ # models (e.g. Pet) or oneOf
170
+ klass = Akeyless.const_get(type)
171
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
172
+ end
173
+ end
174
+
175
+ # Returns the string representation of the object
176
+ # @return [String] String presentation of the object
177
+ def to_s
178
+ to_hash.to_s
179
+ end
180
+
181
+ # to_body is an alias to to_hash (backward compatibility)
182
+ # @return [Hash] Returns the object in the form of hash
183
+ def to_body
184
+ to_hash
185
+ end
186
+
187
+ # Returns the object in the form of hash
188
+ # @return [Hash] Returns the object in the form of hash
189
+ def to_hash
190
+ hash = {}
191
+ self.class.attribute_map.each_pair do |attr, param|
192
+ value = self.send(attr)
193
+ if value.nil?
194
+ is_nullable = self.class.openapi_nullable.include?(attr)
195
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
196
+ end
197
+
198
+ hash[param] = _to_hash(value)
199
+ end
200
+ hash
201
+ end
202
+
203
+ # Outputs non-array value in the form of hash
204
+ # For object, use to_hash. Otherwise, just return the value
205
+ # @param [Object] value Any valid value
206
+ # @return [Hash] Returns the value in the form of hash
207
+ def _to_hash(value)
208
+ if value.is_a?(Array)
209
+ value.compact.map { |v| _to_hash(v) }
210
+ elsif value.is_a?(Hash)
211
+ {}.tap do |hash|
212
+ value.each { |k, v| hash[k] = _to_hash(v) }
213
+ end
214
+ elsif value.respond_to? :to_hash
215
+ value.to_hash
216
+ else
217
+ value
218
+ end
219
+ end
220
+
221
+ end
222
+
223
+ end
@@ -79,6 +79,8 @@ module Akeyless
79
79
 
80
80
  attr_accessor :azure_client_secret
81
81
 
82
+ attr_accessor :azure_cloud
83
+
82
84
  attr_accessor :azure_fixed_user_name_sub_claim_key
83
85
 
84
86
  attr_accessor :azure_fixed_user_only
@@ -600,6 +602,7 @@ module Akeyless
600
602
  :'azure_app_object_id' => :'azure_app_object_id',
601
603
  :'azure_client_id' => :'azure_client_id',
602
604
  :'azure_client_secret' => :'azure_client_secret',
605
+ :'azure_cloud' => :'azure_cloud',
603
606
  :'azure_fixed_user_name_sub_claim_key' => :'azure_fixed_user_name_sub_claim_key',
604
607
  :'azure_fixed_user_only' => :'azure_fixed_user_only',
605
608
  :'azure_resource_group_name' => :'azure_resource_group_name',
@@ -875,6 +878,7 @@ module Akeyless
875
878
  :'azure_app_object_id' => :'String',
876
879
  :'azure_client_id' => :'String',
877
880
  :'azure_client_secret' => :'String',
881
+ :'azure_cloud' => :'String',
878
882
  :'azure_fixed_user_name_sub_claim_key' => :'String',
879
883
  :'azure_fixed_user_only' => :'Boolean',
880
884
  :'azure_resource_group_name' => :'String',
@@ -1261,6 +1265,10 @@ module Akeyless
1261
1265
  self.azure_client_secret = attributes[:'azure_client_secret']
1262
1266
  end
1263
1267
 
1268
+ if attributes.key?(:'azure_cloud')
1269
+ self.azure_cloud = attributes[:'azure_cloud']
1270
+ end
1271
+
1264
1272
  if attributes.key?(:'azure_fixed_user_name_sub_claim_key')
1265
1273
  self.azure_fixed_user_name_sub_claim_key = attributes[:'azure_fixed_user_name_sub_claim_key']
1266
1274
  end
@@ -2270,6 +2278,7 @@ module Akeyless
2270
2278
  azure_app_object_id == o.azure_app_object_id &&
2271
2279
  azure_client_id == o.azure_client_id &&
2272
2280
  azure_client_secret == o.azure_client_secret &&
2281
+ azure_cloud == o.azure_cloud &&
2273
2282
  azure_fixed_user_name_sub_claim_key == o.azure_fixed_user_name_sub_claim_key &&
2274
2283
  azure_fixed_user_only == o.azure_fixed_user_only &&
2275
2284
  azure_resource_group_name == o.azure_resource_group_name &&
@@ -2513,7 +2522,7 @@ module Akeyless
2513
2522
  # Calculates hash code according to all attributes.
2514
2523
  # @return [Integer] Hash code
2515
2524
  def hash
2516
- [access_token_manager_id, acl_rules, active, admin_name, admin_pwd, admin_rotation_interval_days, administrative_port, api_key, api_key_id, artifactory_admin_apikey, artifactory_admin_username, artifactory_base_url, artifactory_token_audience, artifactory_token_scope, authorization_port, aws_access_key_id, aws_access_mode, aws_external_id, aws_region, aws_role_arns, aws_secret_access_key, aws_session_tags, aws_session_token, aws_transitive_tag_keys, aws_user_console_access, aws_user_groups, aws_user_policies, aws_user_programmatic_access, azure_administrative_unit, azure_app_object_id, azure_client_id, azure_client_secret, azure_fixed_user_name_sub_claim_key, azure_fixed_user_only, azure_resource_group_name, azure_resource_name, azure_subscription_id, azure_tenant_id, azure_user_groups_obj_id, azure_user_portal_access, azure_user_programmatic_access, azure_user_roles_template_id, azure_username, cassandra_creation_statements, chef_organizations, chef_server_access_mode, chef_server_host_name, chef_server_key, chef_server_port, chef_server_url, chef_server_username, chef_skip_ssl, client_authentication_type, cloud_service_provider, cluster_mode, connection_type, create_sync_url, db_client_id, db_client_secret, db_host_name, db_isolation_level, db_max_idle_conns, db_max_open_conns, db_name, db_port, db_private_key, db_private_key_passphrase, db_pwd, db_server_certificates, db_server_name, db_tenant_id, db_user_name, delete_protection, dynamic_secret_id, dynamic_secret_key, dynamic_secret_name, dynamic_secret_type, eks_access_key_id, eks_assume_role, eks_cluster_ca_certificate, eks_cluster_endpoint, eks_cluster_name, eks_region, eks_secret_access_key, enable_admin_rotation, enforce_replay_prevention, expiration_date, externally_provided_user, failure_message, fixed_user_only, gcp_access_type, gcp_fixed_user_claim_keyname, gcp_key_algo, gcp_project_id, gcp_role_bindings, gcp_role_names, gcp_service_account_email, gcp_service_account_key, gcp_service_account_key_base64, gcp_service_account_key_id, gcp_service_account_type, gcp_tmp_service_account_name, gcp_token_lifetime, gcp_token_scope, gcp_token_type, github_app_id, github_app_private_key, github_base_url, github_installation_id, github_installation_token_permissions, github_installation_token_repositories, github_installation_token_repositories_ids, github_organization_name, github_repository_path, gitlab_access_token, gitlab_access_type, gitlab_certificate, gitlab_group_name, gitlab_project_name, gitlab_role, gitlab_token_scope, gitlab_url, gke_cluster_ca_certificate, gke_cluster_endpoint, gke_cluster_name, gke_service_account_key, gke_service_account_name, google_workspace_access_mode, google_workspace_admin_name, google_workspace_fixed_user_name_sub_claim_key, google_workspace_group_name, google_workspace_group_role, google_workspace_role_name, google_workspace_role_scope, grace_rotated_secret_key, grant_types, groups, gw_cloud_identity_external_id_opt, hanadb_creation_statements, hanadb_revocation_statements, host_name, host_port, implementation_type, is_fixed_user, issuer, item_custom_fields_details, item_targets_assoc, jwks, jwks_url, k8s_allowed_namespaces, k8s_auth_type, k8s_bearer_token, k8s_client_cert_data, k8s_client_key_data, k8s_cluster_ca_certificate, k8s_cluster_endpoint, k8s_cluster_name, k8s_dynamic_mode, k8s_multiple_doc_yaml_temp_definition, k8s_namespace, k8s_role_name, k8s_role_type, k8s_service_account, last_admin_rotation, ldap_audience, ldap_bind_dn, ldap_bind_password, ldap_certificate, ldap_fixed_user_name_sub_claim_key, ldap_fixed_user_type, ldap_group_dn, ldap_token_expiration, ldap_url, ldap_user_attr, ldap_user_dn, metadata, mongodb_atlas_api_private_key, mongodb_atlas_api_public_key, mongodb_atlas_project_id, mongodb_custom_data, mongodb_db_name, mongodb_default_auth_db, mongodb_host_port, mongodb_is_atlas, mongodb_password, mongodb_roles, mongodb_scopes, mongodb_uri_connection, mongodb_uri_options, mongodb_username, mssql_allowed_db_names, mssql_creation_statements, mssql_revocation_statements, mysql_creation_statements, mysql_revocation_statements, openai_url, oracle_creation_statements, oracle_revocation_statements, oracle_wallet_details, organization_id, password, password_length, password_policy, payload, ping_url, postgres_creation_statements, postgres_revocation_statements, privileged_user, project_id, rabbitmq_server_password, rabbitmq_server_uri, rabbitmq_server_user, rabbitmq_user_conf_permission, rabbitmq_user_read_permission, rabbitmq_user_tags, rabbitmq_user_vhost, rabbitmq_user_write_permission, rdp_fixed_user_name_sub_claim_key, redirect_uris, redshift_creation_statements, restricted_scopes, revoke_sync_url, rotate_sync_url, scopes, secure_remote_access_details, session_extension_warn_interval_min, sf_account, sf_auth_mode, sf_key_algo, sf_user_role, sf_warehouse_name, should_stop, signing_algorithm, ssl_connection_certificate, ssl_connection_mode, subject_dn, tags, timeout_seconds, use_gw_cloud_identity, use_gw_service_account, user_name, user_password, user_principal_name, user_ttl, username_length, username_policy, username_template, venafi_allow_subdomains, venafi_allowed_domains, venafi_api_key, venafi_auto_generated_folder, venafi_base_url, venafi_root_first_in_chain, venafi_sign_using_akeyless_pki, venafi_signer_key_name, venafi_store_private_key, venafi_tpp_access_token, venafi_tpp_client_id, venafi_tpp_password, venafi_tpp_refresh_token, venafi_tpp_username, venafi_use_tpp, venafi_zone, warn_before_user_expiration_min].hash
2525
+ [access_token_manager_id, acl_rules, active, admin_name, admin_pwd, admin_rotation_interval_days, administrative_port, api_key, api_key_id, artifactory_admin_apikey, artifactory_admin_username, artifactory_base_url, artifactory_token_audience, artifactory_token_scope, authorization_port, aws_access_key_id, aws_access_mode, aws_external_id, aws_region, aws_role_arns, aws_secret_access_key, aws_session_tags, aws_session_token, aws_transitive_tag_keys, aws_user_console_access, aws_user_groups, aws_user_policies, aws_user_programmatic_access, azure_administrative_unit, azure_app_object_id, azure_client_id, azure_client_secret, azure_cloud, azure_fixed_user_name_sub_claim_key, azure_fixed_user_only, azure_resource_group_name, azure_resource_name, azure_subscription_id, azure_tenant_id, azure_user_groups_obj_id, azure_user_portal_access, azure_user_programmatic_access, azure_user_roles_template_id, azure_username, cassandra_creation_statements, chef_organizations, chef_server_access_mode, chef_server_host_name, chef_server_key, chef_server_port, chef_server_url, chef_server_username, chef_skip_ssl, client_authentication_type, cloud_service_provider, cluster_mode, connection_type, create_sync_url, db_client_id, db_client_secret, db_host_name, db_isolation_level, db_max_idle_conns, db_max_open_conns, db_name, db_port, db_private_key, db_private_key_passphrase, db_pwd, db_server_certificates, db_server_name, db_tenant_id, db_user_name, delete_protection, dynamic_secret_id, dynamic_secret_key, dynamic_secret_name, dynamic_secret_type, eks_access_key_id, eks_assume_role, eks_cluster_ca_certificate, eks_cluster_endpoint, eks_cluster_name, eks_region, eks_secret_access_key, enable_admin_rotation, enforce_replay_prevention, expiration_date, externally_provided_user, failure_message, fixed_user_only, gcp_access_type, gcp_fixed_user_claim_keyname, gcp_key_algo, gcp_project_id, gcp_role_bindings, gcp_role_names, gcp_service_account_email, gcp_service_account_key, gcp_service_account_key_base64, gcp_service_account_key_id, gcp_service_account_type, gcp_tmp_service_account_name, gcp_token_lifetime, gcp_token_scope, gcp_token_type, github_app_id, github_app_private_key, github_base_url, github_installation_id, github_installation_token_permissions, github_installation_token_repositories, github_installation_token_repositories_ids, github_organization_name, github_repository_path, gitlab_access_token, gitlab_access_type, gitlab_certificate, gitlab_group_name, gitlab_project_name, gitlab_role, gitlab_token_scope, gitlab_url, gke_cluster_ca_certificate, gke_cluster_endpoint, gke_cluster_name, gke_service_account_key, gke_service_account_name, google_workspace_access_mode, google_workspace_admin_name, google_workspace_fixed_user_name_sub_claim_key, google_workspace_group_name, google_workspace_group_role, google_workspace_role_name, google_workspace_role_scope, grace_rotated_secret_key, grant_types, groups, gw_cloud_identity_external_id_opt, hanadb_creation_statements, hanadb_revocation_statements, host_name, host_port, implementation_type, is_fixed_user, issuer, item_custom_fields_details, item_targets_assoc, jwks, jwks_url, k8s_allowed_namespaces, k8s_auth_type, k8s_bearer_token, k8s_client_cert_data, k8s_client_key_data, k8s_cluster_ca_certificate, k8s_cluster_endpoint, k8s_cluster_name, k8s_dynamic_mode, k8s_multiple_doc_yaml_temp_definition, k8s_namespace, k8s_role_name, k8s_role_type, k8s_service_account, last_admin_rotation, ldap_audience, ldap_bind_dn, ldap_bind_password, ldap_certificate, ldap_fixed_user_name_sub_claim_key, ldap_fixed_user_type, ldap_group_dn, ldap_token_expiration, ldap_url, ldap_user_attr, ldap_user_dn, metadata, mongodb_atlas_api_private_key, mongodb_atlas_api_public_key, mongodb_atlas_project_id, mongodb_custom_data, mongodb_db_name, mongodb_default_auth_db, mongodb_host_port, mongodb_is_atlas, mongodb_password, mongodb_roles, mongodb_scopes, mongodb_uri_connection, mongodb_uri_options, mongodb_username, mssql_allowed_db_names, mssql_creation_statements, mssql_revocation_statements, mysql_creation_statements, mysql_revocation_statements, openai_url, oracle_creation_statements, oracle_revocation_statements, oracle_wallet_details, organization_id, password, password_length, password_policy, payload, ping_url, postgres_creation_statements, postgres_revocation_statements, privileged_user, project_id, rabbitmq_server_password, rabbitmq_server_uri, rabbitmq_server_user, rabbitmq_user_conf_permission, rabbitmq_user_read_permission, rabbitmq_user_tags, rabbitmq_user_vhost, rabbitmq_user_write_permission, rdp_fixed_user_name_sub_claim_key, redirect_uris, redshift_creation_statements, restricted_scopes, revoke_sync_url, rotate_sync_url, scopes, secure_remote_access_details, session_extension_warn_interval_min, sf_account, sf_auth_mode, sf_key_algo, sf_user_role, sf_warehouse_name, should_stop, signing_algorithm, ssl_connection_certificate, ssl_connection_mode, subject_dn, tags, timeout_seconds, use_gw_cloud_identity, use_gw_service_account, user_name, user_password, user_principal_name, user_ttl, username_length, username_policy, username_template, venafi_allow_subdomains, venafi_allowed_domains, venafi_api_key, venafi_auto_generated_folder, venafi_base_url, venafi_root_first_in_chain, venafi_sign_using_akeyless_pki, venafi_signer_key_name, venafi_store_private_key, venafi_tpp_access_token, venafi_tpp_client_id, venafi_tpp_password, venafi_tpp_refresh_token, venafi_tpp_username, venafi_use_tpp, venafi_zone, warn_before_user_expiration_min].hash
2517
2526
  end
2518
2527
 
2519
2528
  # Builds the object from hash