akeyless 3.5.4 → 3.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +9 -2
  3. data/docs/AssocTargetItem.md +8 -0
  4. data/docs/AuthMethod.md +2 -0
  5. data/docs/CertificateChainInfo.md +4 -0
  6. data/docs/CertificateVersionInfo.md +22 -0
  7. data/docs/Connect.md +1 -1
  8. data/docs/CreateAuthMethod.md +2 -0
  9. data/docs/CreateAuthMethodAWSIAM.md +2 -0
  10. data/docs/CreateAuthMethodAzureAD.md +3 -1
  11. data/docs/CreateAuthMethodCert.md +2 -0
  12. data/docs/CreateAuthMethodEmail.md +2 -0
  13. data/docs/CreateAuthMethodGCP.md +2 -0
  14. data/docs/CreateAuthMethodHuawei.md +2 -0
  15. data/docs/CreateAuthMethodK8S.md +2 -0
  16. data/docs/CreateAuthMethodLDAP.md +2 -0
  17. data/docs/CreateAuthMethodOAuth2.md +2 -0
  18. data/docs/CreateAuthMethodOIDC.md +2 -0
  19. data/docs/CreateAuthMethodSAML.md +2 -0
  20. data/docs/CreateAuthMethodUniversalIdentity.md +2 -0
  21. data/docs/CreateEventForwarder.md +1 -1
  22. data/docs/CreateLinkedTarget.md +2 -0
  23. data/docs/CreateRole.md +4 -0
  24. data/docs/CreateRotatedSecret.md +7 -1
  25. data/docs/CreateSSHCertIssuer.md +4 -4
  26. data/docs/CreateSecret.md +2 -0
  27. data/docs/GatewayCreateMigration.md +2 -0
  28. data/docs/GatewayCreateProducerCassandra.md +4 -0
  29. data/docs/GatewayUpdateItem.md +2 -0
  30. data/docs/GatewayUpdateMigration.md +2 -0
  31. data/docs/GatewayUpdateProducerCassandra.md +4 -0
  32. data/docs/GenerateCsr.md +1 -1
  33. data/docs/GwClusterIdentity.md +2 -0
  34. data/docs/ImportPasswords.md +3 -1
  35. data/docs/ImportPasswordsOutput.md +3 -1
  36. data/docs/ItemVersion.md +2 -0
  37. data/docs/ProvisionCertificate.md +28 -0
  38. data/docs/ProvisionCertificateOutput.md +24 -0
  39. data/docs/RenewCertificate.md +28 -0
  40. data/docs/RenewCertificateOutput.md +28 -0
  41. data/docs/SecureRemoteAccess.md +2 -0
  42. data/docs/ServerInventoryPayload.md +2 -0
  43. data/docs/SetRoleRule.md +1 -1
  44. data/docs/SignDataWithClassicKey.md +2 -0
  45. data/docs/SignEcDsa.md +5 -1
  46. data/docs/SignPKCS1.md +9 -1
  47. data/docs/SignPKCS1Output.md +1 -1
  48. data/docs/SignRsaSsaPss.md +5 -1
  49. data/docs/StaticSecretDetailsInfo.md +2 -0
  50. data/docs/TargetItemVersion.md +2 -0
  51. data/docs/UpdateAuthMethod.md +2 -0
  52. data/docs/UpdateAuthMethodAWSIAM.md +2 -0
  53. data/docs/UpdateAuthMethodAzureAD.md +3 -1
  54. data/docs/UpdateAuthMethodCert.md +2 -0
  55. data/docs/UpdateAuthMethodGCP.md +2 -0
  56. data/docs/UpdateAuthMethodK8S.md +2 -0
  57. data/docs/UpdateAuthMethodLDAP.md +2 -0
  58. data/docs/UpdateAuthMethodOAuth2.md +2 -0
  59. data/docs/UpdateAuthMethodOIDC.md +2 -0
  60. data/docs/UpdateAuthMethodSAML.md +2 -0
  61. data/docs/UpdateAuthMethodUniversalIdentity.md +2 -0
  62. data/docs/UpdateCertificateValue.md +2 -0
  63. data/docs/UpdateItem.md +6 -0
  64. data/docs/UpdateLinkedTarget.md +2 -0
  65. data/docs/UpdateRole.md +4 -0
  66. data/docs/UpdateSSHCertIssuer.md +3 -3
  67. data/docs/UpdateSecretVal.md +2 -0
  68. data/docs/V2Api.md +138 -9
  69. data/docs/VerifyEcDsa.md +5 -1
  70. data/docs/VerifyPKCS1.md +9 -1
  71. data/docs/VerifyRsaSsaPss.md +5 -1
  72. data/lib/akeyless/api/v2_api.rb +146 -7
  73. data/lib/akeyless/models/assoc_target_item.rb +43 -1
  74. data/lib/akeyless/models/auth_method.rb +10 -1
  75. data/lib/akeyless/models/certificate_chain_info.rb +19 -1
  76. data/lib/akeyless/models/certificate_version_info.rb +232 -0
  77. data/lib/akeyless/models/connect.rb +1 -1
  78. data/lib/akeyless/models/create_auth_method.rb +11 -1
  79. data/lib/akeyless/models/create_auth_method_awsiam.rb +11 -1
  80. data/lib/akeyless/models/create_auth_method_azure_ad.rb +12 -2
  81. data/lib/akeyless/models/create_auth_method_cert.rb +11 -1
  82. data/lib/akeyless/models/create_auth_method_email.rb +11 -1
  83. data/lib/akeyless/models/create_auth_method_gcp.rb +11 -1
  84. data/lib/akeyless/models/create_auth_method_huawei.rb +11 -1
  85. data/lib/akeyless/models/create_auth_method_k8_s.rb +11 -1
  86. data/lib/akeyless/models/create_auth_method_ldap.rb +11 -1
  87. data/lib/akeyless/models/create_auth_method_o_auth2.rb +11 -1
  88. data/lib/akeyless/models/create_auth_method_oidc.rb +11 -1
  89. data/lib/akeyless/models/create_auth_method_saml.rb +11 -1
  90. data/lib/akeyless/models/create_auth_method_universal_identity.rb +11 -1
  91. data/lib/akeyless/models/create_event_forwarder.rb +1 -1
  92. data/lib/akeyless/models/create_linked_target.rb +11 -1
  93. data/lib/akeyless/models/create_role.rb +21 -1
  94. data/lib/akeyless/models/create_rotated_secret.rb +35 -2
  95. data/lib/akeyless/models/create_secret.rb +11 -1
  96. data/lib/akeyless/models/create_ssh_cert_issuer.rb +9 -9
  97. data/lib/akeyless/models/gateway_create_migration.rb +11 -1
  98. data/lib/akeyless/models/gateway_create_producer_cassandra.rb +23 -1
  99. data/lib/akeyless/models/gateway_update_item.rb +11 -1
  100. data/lib/akeyless/models/gateway_update_migration.rb +11 -1
  101. data/lib/akeyless/models/gateway_update_producer_cassandra.rb +23 -1
  102. data/lib/akeyless/models/generate_csr.rb +1 -1
  103. data/lib/akeyless/models/gw_cluster_identity.rb +10 -1
  104. data/lib/akeyless/models/import_passwords.rb +13 -4
  105. data/lib/akeyless/models/import_passwords_output.rb +13 -4
  106. data/lib/akeyless/models/item_version.rb +10 -1
  107. data/lib/akeyless/models/provision_certificate.rb +275 -0
  108. data/lib/akeyless/models/provision_certificate_output.rb +243 -0
  109. data/lib/akeyless/models/renew_certificate.rb +267 -0
  110. data/lib/akeyless/models/renew_certificate_output.rb +259 -0
  111. data/lib/akeyless/models/secure_remote_access.rb +12 -1
  112. data/lib/akeyless/models/server_inventory_payload.rb +12 -1
  113. data/lib/akeyless/models/set_role_rule.rb +1 -1
  114. data/lib/akeyless/models/sign_data_with_classic_key.rb +13 -1
  115. data/lib/akeyless/models/sign_ec_dsa.rb +24 -4
  116. data/lib/akeyless/models/sign_pkcs1.rb +44 -4
  117. data/lib/akeyless/models/sign_pkcs1_output.rb +2 -4
  118. data/lib/akeyless/models/sign_rsa_ssa_pss.rb +24 -4
  119. data/lib/akeyless/models/static_secret_details_info.rb +10 -1
  120. data/lib/akeyless/models/target_item_version.rb +10 -1
  121. data/lib/akeyless/models/update_auth_method.rb +11 -1
  122. data/lib/akeyless/models/update_auth_method_awsiam.rb +11 -1
  123. data/lib/akeyless/models/update_auth_method_azure_ad.rb +12 -2
  124. data/lib/akeyless/models/update_auth_method_cert.rb +11 -1
  125. data/lib/akeyless/models/update_auth_method_gcp.rb +11 -1
  126. data/lib/akeyless/models/update_auth_method_k8_s.rb +11 -1
  127. data/lib/akeyless/models/update_auth_method_ldap.rb +11 -1
  128. data/lib/akeyless/models/update_auth_method_o_auth2.rb +11 -1
  129. data/lib/akeyless/models/update_auth_method_oidc.rb +11 -1
  130. data/lib/akeyless/models/update_auth_method_saml.rb +11 -1
  131. data/lib/akeyless/models/update_auth_method_universal_identity.rb +11 -1
  132. data/lib/akeyless/models/update_certificate_value.rb +11 -1
  133. data/lib/akeyless/models/update_item.rb +32 -1
  134. data/lib/akeyless/models/update_linked_target.rb +11 -1
  135. data/lib/akeyless/models/update_role.rb +21 -1
  136. data/lib/akeyless/models/update_secret_val.rb +11 -1
  137. data/lib/akeyless/models/update_ssh_cert_issuer.rb +8 -8
  138. data/lib/akeyless/models/verify_ec_dsa.rb +24 -4
  139. data/lib/akeyless/models/verify_pkcs1.rb +44 -4
  140. data/lib/akeyless/models/verify_rsa_ssa_pss.rb +24 -4
  141. data/lib/akeyless/version.rb +1 -1
  142. data/lib/akeyless.rb +5 -0
  143. data/spec/models/certificate_version_info_spec.rb +48 -0
  144. data/spec/models/provision_certificate_output_spec.rb +54 -0
  145. data/spec/models/provision_certificate_spec.rb +66 -0
  146. data/spec/models/renew_certificate_output_spec.rb +66 -0
  147. data/spec/models/renew_certificate_spec.rb +66 -0
  148. metadata +23 -3
@@ -16,6 +16,12 @@ require 'time'
16
16
  module Akeyless
17
17
  # assocTargetItem is a command that creates an association between target and item.
18
18
  class AssocTargetItem
19
+ # A path on the target to store the certificate pem file (relevant only for certificate provisioning)
20
+ attr_accessor :certificate_path
21
+
22
+ # A path on the target to store the full chain pem file (relevant only for certificate provisioning)
23
+ attr_accessor :chain_path
24
+
19
25
  # Automatically disable previous key version (required for azure targets)
20
26
  attr_accessor :disable_previous_key_version
21
27
 
@@ -40,6 +46,9 @@ module Akeyless
40
46
  # The item to associate
41
47
  attr_accessor :name
42
48
 
49
+ # A path on the target to store the private key (relevant only for certificate provisioning)
50
+ attr_accessor :private_key_path
51
+
43
52
  # Project id of the GCP KMS (required for gcp targets)
44
53
  attr_accessor :project_id
45
54
 
@@ -49,6 +58,9 @@ module Akeyless
49
58
  # The list of regions to create a copy of the key in (relevant for aws targets)
50
59
  attr_accessor :regions
51
60
 
61
+ # Is the target to associate is for sra, relevant only for linked target association for ldap rotated secret
62
+ attr_accessor :sra_association
63
+
52
64
  # The target to associate
53
65
  attr_accessor :target_name
54
66
 
@@ -67,6 +79,8 @@ module Akeyless
67
79
  # Attribute mapping from ruby-style variable name to JSON key.
68
80
  def self.attribute_map
69
81
  {
82
+ :'certificate_path' => :'certificate-path',
83
+ :'chain_path' => :'chain-path',
70
84
  :'disable_previous_key_version' => :'disable-previous-key-version',
71
85
  :'json' => :'json',
72
86
  :'key_operations' => :'key-operations',
@@ -75,9 +89,11 @@ module Akeyless
75
89
  :'location_id' => :'location-id',
76
90
  :'multi_region' => :'multi-region',
77
91
  :'name' => :'name',
92
+ :'private_key_path' => :'private-key-path',
78
93
  :'project_id' => :'project-id',
79
94
  :'purpose' => :'purpose',
80
95
  :'regions' => :'regions',
96
+ :'sra_association' => :'sra-association',
81
97
  :'target_name' => :'target-name',
82
98
  :'tenant_secret_type' => :'tenant-secret-type',
83
99
  :'token' => :'token',
@@ -94,6 +110,8 @@ module Akeyless
94
110
  # Attribute type mapping.
95
111
  def self.openapi_types
96
112
  {
113
+ :'certificate_path' => :'String',
114
+ :'chain_path' => :'String',
97
115
  :'disable_previous_key_version' => :'Boolean',
98
116
  :'json' => :'Boolean',
99
117
  :'key_operations' => :'Array<String>',
@@ -102,9 +120,11 @@ module Akeyless
102
120
  :'location_id' => :'String',
103
121
  :'multi_region' => :'String',
104
122
  :'name' => :'String',
123
+ :'private_key_path' => :'String',
105
124
  :'project_id' => :'String',
106
125
  :'purpose' => :'String',
107
126
  :'regions' => :'Array<String>',
127
+ :'sra_association' => :'Boolean',
108
128
  :'target_name' => :'String',
109
129
  :'tenant_secret_type' => :'String',
110
130
  :'token' => :'String',
@@ -134,6 +154,14 @@ module Akeyless
134
154
  h[k.to_sym] = v
135
155
  }
136
156
 
157
+ if attributes.key?(:'certificate_path')
158
+ self.certificate_path = attributes[:'certificate_path']
159
+ end
160
+
161
+ if attributes.key?(:'chain_path')
162
+ self.chain_path = attributes[:'chain_path']
163
+ end
164
+
137
165
  if attributes.key?(:'disable_previous_key_version')
138
166
  self.disable_previous_key_version = attributes[:'disable_previous_key_version']
139
167
  else
@@ -176,6 +204,10 @@ module Akeyless
176
204
  self.name = nil
177
205
  end
178
206
 
207
+ if attributes.key?(:'private_key_path')
208
+ self.private_key_path = attributes[:'private_key_path']
209
+ end
210
+
179
211
  if attributes.key?(:'project_id')
180
212
  self.project_id = attributes[:'project_id']
181
213
  end
@@ -190,6 +222,12 @@ module Akeyless
190
222
  end
191
223
  end
192
224
 
225
+ if attributes.key?(:'sra_association')
226
+ self.sra_association = attributes[:'sra_association']
227
+ else
228
+ self.sra_association = false
229
+ end
230
+
193
231
  if attributes.key?(:'target_name')
194
232
  self.target_name = attributes[:'target_name']
195
233
  else
@@ -243,6 +281,8 @@ module Akeyless
243
281
  def ==(o)
244
282
  return true if self.equal?(o)
245
283
  self.class == o.class &&
284
+ certificate_path == o.certificate_path &&
285
+ chain_path == o.chain_path &&
246
286
  disable_previous_key_version == o.disable_previous_key_version &&
247
287
  json == o.json &&
248
288
  key_operations == o.key_operations &&
@@ -251,9 +291,11 @@ module Akeyless
251
291
  location_id == o.location_id &&
252
292
  multi_region == o.multi_region &&
253
293
  name == o.name &&
294
+ private_key_path == o.private_key_path &&
254
295
  project_id == o.project_id &&
255
296
  purpose == o.purpose &&
256
297
  regions == o.regions &&
298
+ sra_association == o.sra_association &&
257
299
  target_name == o.target_name &&
258
300
  tenant_secret_type == o.tenant_secret_type &&
259
301
  token == o.token &&
@@ -270,7 +312,7 @@ module Akeyless
270
312
  # Calculates hash code according to all attributes.
271
313
  # @return [Integer] Hash code
272
314
  def hash
273
- [disable_previous_key_version, json, key_operations, keyring_name, kms_algorithm, location_id, multi_region, name, project_id, purpose, regions, target_name, tenant_secret_type, token, uid_token, vault_name].hash
315
+ [certificate_path, chain_path, disable_previous_key_version, json, key_operations, keyring_name, kms_algorithm, location_id, multi_region, name, private_key_path, project_id, purpose, regions, sra_association, target_name, tenant_secret_type, token, uid_token, vault_name].hash
274
316
  end
275
317
 
276
318
  # Builds the object from hash
@@ -35,6 +35,8 @@ module Akeyless
35
35
 
36
36
  attr_accessor :creation_date
37
37
 
38
+ attr_accessor :description
39
+
38
40
  attr_accessor :is_approved
39
41
 
40
42
  attr_accessor :modification_date
@@ -52,6 +54,7 @@ module Akeyless
52
54
  :'auth_method_roles_assoc' => :'auth_method_roles_assoc',
53
55
  :'client_permissions' => :'client_permissions',
54
56
  :'creation_date' => :'creation_date',
57
+ :'description' => :'description',
55
58
  :'is_approved' => :'is_approved',
56
59
  :'modification_date' => :'modification_date'
57
60
  }
@@ -75,6 +78,7 @@ module Akeyless
75
78
  :'auth_method_roles_assoc' => :'Array<AuthMethodRoleAssociation>',
76
79
  :'client_permissions' => :'Array<String>',
77
80
  :'creation_date' => :'Time',
81
+ :'description' => :'String',
78
82
  :'is_approved' => :'Boolean',
79
83
  :'modification_date' => :'Time'
80
84
  }
@@ -147,6 +151,10 @@ module Akeyless
147
151
  self.creation_date = attributes[:'creation_date']
148
152
  end
149
153
 
154
+ if attributes.key?(:'description')
155
+ self.description = attributes[:'description']
156
+ end
157
+
150
158
  if attributes.key?(:'is_approved')
151
159
  self.is_approved = attributes[:'is_approved']
152
160
  end
@@ -186,6 +194,7 @@ module Akeyless
186
194
  auth_method_roles_assoc == o.auth_method_roles_assoc &&
187
195
  client_permissions == o.client_permissions &&
188
196
  creation_date == o.creation_date &&
197
+ description == o.description &&
189
198
  is_approved == o.is_approved &&
190
199
  modification_date == o.modification_date
191
200
  end
@@ -199,7 +208,7 @@ module Akeyless
199
208
  # Calculates hash code according to all attributes.
200
209
  # @return [Integer] Hash code
201
210
  def hash
202
- [access_date, access_date_display, access_info, account_id, associated_gw_ids, auth_method_access_id, auth_method_name, auth_method_roles_assoc, client_permissions, creation_date, is_approved, modification_date].hash
211
+ [access_date, access_date_display, access_info, account_id, associated_gw_ids, auth_method_access_id, auth_method_name, auth_method_roles_assoc, client_permissions, creation_date, description, is_approved, modification_date].hash
203
212
  end
204
213
 
205
214
  # Builds the object from hash
@@ -19,6 +19,10 @@ module Akeyless
19
19
 
20
20
  attr_accessor :certificate_format
21
21
 
22
+ attr_accessor :certificate_has_private_key
23
+
24
+ attr_accessor :certificate_issuer_gw_cluster_url
25
+
22
26
  attr_accessor :certificate_issuer_item_id
23
27
 
24
28
  attr_accessor :certificate_issuer_name
@@ -34,6 +38,8 @@ module Akeyless
34
38
  {
35
39
  :'certificate_chain' => :'certificate_chain',
36
40
  :'certificate_format' => :'certificate_format',
41
+ :'certificate_has_private_key' => :'certificate_has_private_key',
42
+ :'certificate_issuer_gw_cluster_url' => :'certificate_issuer_gw_cluster_url',
37
43
  :'certificate_issuer_item_id' => :'certificate_issuer_item_id',
38
44
  :'certificate_issuer_name' => :'certificate_issuer_name',
39
45
  :'certificate_pem' => :'certificate_pem',
@@ -52,6 +58,8 @@ module Akeyless
52
58
  {
53
59
  :'certificate_chain' => :'Array<CertificateInfo>',
54
60
  :'certificate_format' => :'String',
61
+ :'certificate_has_private_key' => :'Boolean',
62
+ :'certificate_issuer_gw_cluster_url' => :'String',
55
63
  :'certificate_issuer_item_id' => :'Integer',
56
64
  :'certificate_issuer_name' => :'String',
57
65
  :'certificate_pem' => :'String',
@@ -91,6 +99,14 @@ module Akeyless
91
99
  self.certificate_format = attributes[:'certificate_format']
92
100
  end
93
101
 
102
+ if attributes.key?(:'certificate_has_private_key')
103
+ self.certificate_has_private_key = attributes[:'certificate_has_private_key']
104
+ end
105
+
106
+ if attributes.key?(:'certificate_issuer_gw_cluster_url')
107
+ self.certificate_issuer_gw_cluster_url = attributes[:'certificate_issuer_gw_cluster_url']
108
+ end
109
+
94
110
  if attributes.key?(:'certificate_issuer_item_id')
95
111
  self.certificate_issuer_item_id = attributes[:'certificate_issuer_item_id']
96
112
  end
@@ -136,6 +152,8 @@ module Akeyless
136
152
  self.class == o.class &&
137
153
  certificate_chain == o.certificate_chain &&
138
154
  certificate_format == o.certificate_format &&
155
+ certificate_has_private_key == o.certificate_has_private_key &&
156
+ certificate_issuer_gw_cluster_url == o.certificate_issuer_gw_cluster_url &&
139
157
  certificate_issuer_item_id == o.certificate_issuer_item_id &&
140
158
  certificate_issuer_name == o.certificate_issuer_name &&
141
159
  certificate_pem == o.certificate_pem &&
@@ -152,7 +170,7 @@ module Akeyless
152
170
  # Calculates hash code according to all attributes.
153
171
  # @return [Integer] Hash code
154
172
  def hash
155
- [certificate_chain, certificate_format, certificate_issuer_item_id, certificate_issuer_name, certificate_pem, certificate_status, expiration_events].hash
173
+ [certificate_chain, certificate_format, certificate_has_private_key, certificate_issuer_gw_cluster_url, certificate_issuer_item_id, certificate_issuer_name, certificate_pem, certificate_status, expiration_events].hash
156
174
  end
157
175
 
158
176
  # Builds the object from hash
@@ -0,0 +1,232 @@
1
+ =begin
2
+ #Akeyless API
3
+
4
+ #The purpose of this application is to provide access to Akeyless API.
5
+
6
+ The version of the OpenAPI document: 2.0
7
+ Contact: support@akeyless.io
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 7.3.0-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Akeyless
17
+ class CertificateVersionInfo
18
+ attr_accessor :not_after
19
+
20
+ attr_accessor :not_before
21
+
22
+ attr_accessor :status
23
+
24
+ # Attribute mapping from ruby-style variable name to JSON key.
25
+ def self.attribute_map
26
+ {
27
+ :'not_after' => :'not_after',
28
+ :'not_before' => :'not_before',
29
+ :'status' => :'status'
30
+ }
31
+ end
32
+
33
+ # Returns all the JSON keys this model knows about
34
+ def self.acceptable_attributes
35
+ attribute_map.values
36
+ end
37
+
38
+ # Attribute type mapping.
39
+ def self.openapi_types
40
+ {
41
+ :'not_after' => :'Time',
42
+ :'not_before' => :'Time',
43
+ :'status' => :'String'
44
+ }
45
+ end
46
+
47
+ # List of attributes with nullable: true
48
+ def self.openapi_nullable
49
+ Set.new([
50
+ ])
51
+ end
52
+
53
+ # Initializes the object
54
+ # @param [Hash] attributes Model attributes in the form of hash
55
+ def initialize(attributes = {})
56
+ if (!attributes.is_a?(Hash))
57
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Akeyless::CertificateVersionInfo` initialize method"
58
+ end
59
+
60
+ # check to see if the attribute exists and convert string to symbol for hash key
61
+ attributes = attributes.each_with_object({}) { |(k, v), h|
62
+ if (!self.class.attribute_map.key?(k.to_sym))
63
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Akeyless::CertificateVersionInfo`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
64
+ end
65
+ h[k.to_sym] = v
66
+ }
67
+
68
+ if attributes.key?(:'not_after')
69
+ self.not_after = attributes[:'not_after']
70
+ end
71
+
72
+ if attributes.key?(:'not_before')
73
+ self.not_before = attributes[:'not_before']
74
+ end
75
+
76
+ if attributes.key?(:'status')
77
+ self.status = attributes[:'status']
78
+ end
79
+ end
80
+
81
+ # Show invalid properties with the reasons. Usually used together with valid?
82
+ # @return Array for valid properties with the reasons
83
+ def list_invalid_properties
84
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
85
+ invalid_properties = Array.new
86
+ invalid_properties
87
+ end
88
+
89
+ # Check to see if the all the properties in the model are valid
90
+ # @return true if the model is valid
91
+ def valid?
92
+ warn '[DEPRECATED] the `valid?` method is obsolete'
93
+ true
94
+ end
95
+
96
+ # Checks equality by comparing each attribute.
97
+ # @param [Object] Object to be compared
98
+ def ==(o)
99
+ return true if self.equal?(o)
100
+ self.class == o.class &&
101
+ not_after == o.not_after &&
102
+ not_before == o.not_before &&
103
+ status == o.status
104
+ end
105
+
106
+ # @see the `==` method
107
+ # @param [Object] Object to be compared
108
+ def eql?(o)
109
+ self == o
110
+ end
111
+
112
+ # Calculates hash code according to all attributes.
113
+ # @return [Integer] Hash code
114
+ def hash
115
+ [not_after, not_before, status].hash
116
+ end
117
+
118
+ # Builds the object from hash
119
+ # @param [Hash] attributes Model attributes in the form of hash
120
+ # @return [Object] Returns the model itself
121
+ def self.build_from_hash(attributes)
122
+ return nil unless attributes.is_a?(Hash)
123
+ attributes = attributes.transform_keys(&:to_sym)
124
+ transformed_hash = {}
125
+ openapi_types.each_pair do |key, type|
126
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
127
+ transformed_hash["#{key}"] = nil
128
+ elsif type =~ /\AArray<(.*)>/i
129
+ # check to ensure the input is an array given that the attribute
130
+ # is documented as an array but the input is not
131
+ if attributes[attribute_map[key]].is_a?(Array)
132
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
133
+ end
134
+ elsif !attributes[attribute_map[key]].nil?
135
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
136
+ end
137
+ end
138
+ new(transformed_hash)
139
+ end
140
+
141
+ # Deserializes the data based on type
142
+ # @param string type Data type
143
+ # @param string value Value to be deserialized
144
+ # @return [Object] Deserialized data
145
+ def self._deserialize(type, value)
146
+ case type.to_sym
147
+ when :Time
148
+ Time.parse(value)
149
+ when :Date
150
+ Date.parse(value)
151
+ when :String
152
+ value.to_s
153
+ when :Integer
154
+ value.to_i
155
+ when :Float
156
+ value.to_f
157
+ when :Boolean
158
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
159
+ true
160
+ else
161
+ false
162
+ end
163
+ when :Object
164
+ # generic object (usually a Hash), return directly
165
+ value
166
+ when /\AArray<(?<inner_type>.+)>\z/
167
+ inner_type = Regexp.last_match[:inner_type]
168
+ value.map { |v| _deserialize(inner_type, v) }
169
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
170
+ k_type = Regexp.last_match[:k_type]
171
+ v_type = Regexp.last_match[:v_type]
172
+ {}.tap do |hash|
173
+ value.each do |k, v|
174
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
175
+ end
176
+ end
177
+ else # model
178
+ # models (e.g. Pet) or oneOf
179
+ klass = Akeyless.const_get(type)
180
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
181
+ end
182
+ end
183
+
184
+ # Returns the string representation of the object
185
+ # @return [String] String presentation of the object
186
+ def to_s
187
+ to_hash.to_s
188
+ end
189
+
190
+ # to_body is an alias to to_hash (backward compatibility)
191
+ # @return [Hash] Returns the object in the form of hash
192
+ def to_body
193
+ to_hash
194
+ end
195
+
196
+ # Returns the object in the form of hash
197
+ # @return [Hash] Returns the object in the form of hash
198
+ def to_hash
199
+ hash = {}
200
+ self.class.attribute_map.each_pair do |attr, param|
201
+ value = self.send(attr)
202
+ if value.nil?
203
+ is_nullable = self.class.openapi_nullable.include?(attr)
204
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
205
+ end
206
+
207
+ hash[param] = _to_hash(value)
208
+ end
209
+ hash
210
+ end
211
+
212
+ # Outputs non-array value in the form of hash
213
+ # For object, use to_hash. Otherwise, just return the value
214
+ # @param [Object] value Any valid value
215
+ # @return [Hash] Returns the value in the form of hash
216
+ def _to_hash(value)
217
+ if value.is_a?(Array)
218
+ value.compact.map { |v| _to_hash(v) }
219
+ elsif value.is_a?(Hash)
220
+ {}.tap do |hash|
221
+ value.each { |k, v| hash[k] = _to_hash(v) }
222
+ end
223
+ elsif value.respond_to? :to_hash
224
+ value.to_hash
225
+ else
226
+ value
227
+ end
228
+ end
229
+
230
+ end
231
+
232
+ end
@@ -50,7 +50,7 @@ module Akeyless
50
50
  # Path to SSH executable. e.g. /usr/bin/ssh
51
51
  attr_accessor :ssh_command
52
52
 
53
- # The Use to add offical SSH arguments (except -i)
53
+ # Additional SSH arguments (except -i)
54
54
  attr_accessor :ssh_extra_args
55
55
 
56
56
  # Set this option to output legacy ('ssh-rsa-cert-v01@openssh.com') signing algorithm name in the ssh certificate.
@@ -21,6 +21,9 @@ module Akeyless
21
21
  # A CIDR whitelist with the IPs that the access is restricted to
22
22
  attr_accessor :bound_ips
23
23
 
24
+ # Auth Method description
25
+ attr_accessor :description
26
+
24
27
  # if true: enforce role-association must include sub claims
25
28
  attr_accessor :force_sub_claims
26
29
 
@@ -47,6 +50,7 @@ module Akeyless
47
50
  {
48
51
  :'access_expires' => :'access-expires',
49
52
  :'bound_ips' => :'bound-ips',
53
+ :'description' => :'description',
50
54
  :'force_sub_claims' => :'force-sub-claims',
51
55
  :'gw_bound_ips' => :'gw-bound-ips',
52
56
  :'json' => :'json',
@@ -67,6 +71,7 @@ module Akeyless
67
71
  {
68
72
  :'access_expires' => :'Integer',
69
73
  :'bound_ips' => :'Array<String>',
74
+ :'description' => :'String',
70
75
  :'force_sub_claims' => :'Boolean',
71
76
  :'gw_bound_ips' => :'Array<String>',
72
77
  :'json' => :'Boolean',
@@ -110,6 +115,10 @@ module Akeyless
110
115
  end
111
116
  end
112
117
 
118
+ if attributes.key?(:'description')
119
+ self.description = attributes[:'description']
120
+ end
121
+
113
122
  if attributes.key?(:'force_sub_claims')
114
123
  self.force_sub_claims = attributes[:'force_sub_claims']
115
124
  end
@@ -174,6 +183,7 @@ module Akeyless
174
183
  self.class == o.class &&
175
184
  access_expires == o.access_expires &&
176
185
  bound_ips == o.bound_ips &&
186
+ description == o.description &&
177
187
  force_sub_claims == o.force_sub_claims &&
178
188
  gw_bound_ips == o.gw_bound_ips &&
179
189
  json == o.json &&
@@ -192,7 +202,7 @@ module Akeyless
192
202
  # Calculates hash code according to all attributes.
193
203
  # @return [Integer] Hash code
194
204
  def hash
195
- [access_expires, bound_ips, force_sub_claims, gw_bound_ips, json, jwt_ttl, name, token, uid_token].hash
205
+ [access_expires, bound_ips, description, force_sub_claims, gw_bound_ips, json, jwt_ttl, name, token, uid_token].hash
196
206
  end
197
207
 
198
208
  # Builds the object from hash
@@ -43,6 +43,9 @@ module Akeyless
43
43
  # A list of full user-name that the access is restricted to
44
44
  attr_accessor :bound_user_name
45
45
 
46
+ # Auth Method description
47
+ attr_accessor :description
48
+
46
49
  # if true: enforce role-association must include sub claims
47
50
  attr_accessor :force_sub_claims
48
51
 
@@ -79,6 +82,7 @@ module Akeyless
79
82
  :'bound_role_name' => :'bound-role-name',
80
83
  :'bound_user_id' => :'bound-user-id',
81
84
  :'bound_user_name' => :'bound-user-name',
85
+ :'description' => :'description',
82
86
  :'force_sub_claims' => :'force-sub-claims',
83
87
  :'gw_bound_ips' => :'gw-bound-ips',
84
88
  :'json' => :'json',
@@ -107,6 +111,7 @@ module Akeyless
107
111
  :'bound_role_name' => :'Array<String>',
108
112
  :'bound_user_id' => :'Array<String>',
109
113
  :'bound_user_name' => :'Array<String>',
114
+ :'description' => :'String',
110
115
  :'force_sub_claims' => :'Boolean',
111
116
  :'gw_bound_ips' => :'Array<String>',
112
117
  :'json' => :'Boolean',
@@ -195,6 +200,10 @@ module Akeyless
195
200
  end
196
201
  end
197
202
 
203
+ if attributes.key?(:'description')
204
+ self.description = attributes[:'description']
205
+ end
206
+
198
207
  if attributes.key?(:'force_sub_claims')
199
208
  self.force_sub_claims = attributes[:'force_sub_claims']
200
209
  end
@@ -277,6 +286,7 @@ module Akeyless
277
286
  bound_role_name == o.bound_role_name &&
278
287
  bound_user_id == o.bound_user_id &&
279
288
  bound_user_name == o.bound_user_name &&
289
+ description == o.description &&
280
290
  force_sub_claims == o.force_sub_claims &&
281
291
  gw_bound_ips == o.gw_bound_ips &&
282
292
  json == o.json &&
@@ -296,7 +306,7 @@ module Akeyless
296
306
  # Calculates hash code according to all attributes.
297
307
  # @return [Integer] Hash code
298
308
  def hash
299
- [access_expires, bound_arn, bound_aws_account_id, bound_ips, bound_resource_id, bound_role_id, bound_role_name, bound_user_id, bound_user_name, force_sub_claims, gw_bound_ips, json, jwt_ttl, name, sts_url, token, uid_token].hash
309
+ [access_expires, bound_arn, bound_aws_account_id, bound_ips, bound_resource_id, bound_role_id, bound_role_name, bound_user_id, bound_user_name, description, force_sub_claims, gw_bound_ips, json, jwt_ttl, name, sts_url, token, uid_token].hash
300
310
  end
301
311
 
302
312
  # Builds the object from hash
@@ -19,7 +19,7 @@ module Akeyless
19
19
  # Access expiration date in Unix timestamp (select 0 for access without expiry date)
20
20
  attr_accessor :access_expires
21
21
 
22
- # The audience in the JWT
22
+ # Deprecated (Deprecated) The audience in the JWT
23
23
  attr_accessor :audience
24
24
 
25
25
  # A list of group ids that the access is restricted to
@@ -52,6 +52,9 @@ module Akeyless
52
52
  # The Azure tenant id that the access is restricted to
53
53
  attr_accessor :bound_tenant_id
54
54
 
55
+ # Auth Method description
56
+ attr_accessor :description
57
+
55
58
  # if true: enforce role-association must include sub claims
56
59
  attr_accessor :force_sub_claims
57
60
 
@@ -94,6 +97,7 @@ module Akeyless
94
97
  :'bound_spid' => :'bound-spid',
95
98
  :'bound_sub_id' => :'bound-sub-id',
96
99
  :'bound_tenant_id' => :'bound-tenant-id',
100
+ :'description' => :'description',
97
101
  :'force_sub_claims' => :'force-sub-claims',
98
102
  :'gw_bound_ips' => :'gw-bound-ips',
99
103
  :'issuer' => :'issuer',
@@ -126,6 +130,7 @@ module Akeyless
126
130
  :'bound_spid' => :'Array<String>',
127
131
  :'bound_sub_id' => :'Array<String>',
128
132
  :'bound_tenant_id' => :'String',
133
+ :'description' => :'String',
129
134
  :'force_sub_claims' => :'Boolean',
130
135
  :'gw_bound_ips' => :'Array<String>',
131
136
  :'issuer' => :'String',
@@ -231,6 +236,10 @@ module Akeyless
231
236
  self.bound_tenant_id = nil
232
237
  end
233
238
 
239
+ if attributes.key?(:'description')
240
+ self.description = attributes[:'description']
241
+ end
242
+
234
243
  if attributes.key?(:'force_sub_claims')
235
244
  self.force_sub_claims = attributes[:'force_sub_claims']
236
245
  end
@@ -322,6 +331,7 @@ module Akeyless
322
331
  bound_spid == o.bound_spid &&
323
332
  bound_sub_id == o.bound_sub_id &&
324
333
  bound_tenant_id == o.bound_tenant_id &&
334
+ description == o.description &&
325
335
  force_sub_claims == o.force_sub_claims &&
326
336
  gw_bound_ips == o.gw_bound_ips &&
327
337
  issuer == o.issuer &&
@@ -342,7 +352,7 @@ module Akeyless
342
352
  # Calculates hash code according to all attributes.
343
353
  # @return [Integer] Hash code
344
354
  def hash
345
- [access_expires, audience, bound_group_id, bound_ips, bound_providers, bound_resource_id, bound_resource_names, bound_resource_types, bound_rg_id, bound_spid, bound_sub_id, bound_tenant_id, force_sub_claims, gw_bound_ips, issuer, json, jwks_uri, jwt_ttl, name, token, uid_token].hash
355
+ [access_expires, audience, bound_group_id, bound_ips, bound_providers, bound_resource_id, bound_resource_names, bound_resource_types, bound_rg_id, bound_spid, bound_sub_id, bound_tenant_id, description, force_sub_claims, gw_bound_ips, issuer, json, jwks_uri, jwt_ttl, name, token, uid_token].hash
346
356
  end
347
357
 
348
358
  # Builds the object from hash