akeyless 5.0.2 → 5.0.4

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 (90) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -2
  3. data/docs/AccountGeneralSettings.md +4 -0
  4. data/docs/AzureTargetDetails.md +2 -0
  5. data/docs/CertificateChainInfo.md +10 -0
  6. data/docs/DSProducerDetails.md +2 -0
  7. data/docs/DynamicSecretCreateHanaDb.md +2 -0
  8. data/docs/DynamicSecretCreateMongoDb.md +2 -0
  9. data/docs/DynamicSecretCreateMsSql.md +2 -0
  10. data/docs/DynamicSecretCreateMySql.md +2 -0
  11. data/docs/DynamicSecretCreatePostgreSql.md +2 -0
  12. data/docs/DynamicSecretUpdateHanaDb.md +2 -0
  13. data/docs/DynamicSecretUpdateMongoDb.md +2 -0
  14. data/docs/DynamicSecretUpdateMsSql.md +2 -0
  15. data/docs/DynamicSecretUpdateMySql.md +2 -0
  16. data/docs/DynamicSecretUpdatePostgreSql.md +2 -0
  17. data/docs/GatewayCreateProducerHanaDb.md +2 -0
  18. data/docs/GatewayCreateProducerMSSQL.md +2 -0
  19. data/docs/GatewayCreateProducerMongo.md +2 -0
  20. data/docs/GatewayCreateProducerMySQL.md +2 -0
  21. data/docs/GatewayCreateProducerPostgreSQL.md +2 -0
  22. data/docs/GatewayUpdateProducerHanaDb.md +2 -0
  23. data/docs/GatewayUpdateProducerMSSQL.md +2 -0
  24. data/docs/GatewayUpdateProducerMongo.md +2 -0
  25. data/docs/GatewayUpdateProducerMySQL.md +2 -0
  26. data/docs/GatewayUpdateProducerPostgreSQL.md +2 -0
  27. data/docs/GcpTargetDetails.md +2 -0
  28. data/docs/ItemUSCSyncAssociation.md +1 -1
  29. data/docs/ListItemsInPathOutput.md +2 -0
  30. data/docs/ListItemsOutput.md +2 -0
  31. data/docs/NullString.md +20 -0
  32. data/docs/RotatedSecretCreateAws.md +5 -1
  33. data/docs/RotatedSecretCreateAzure.md +12 -0
  34. data/docs/RotatedSecretCreateCustom.md +11 -1
  35. data/docs/RotatedSecretCreateGcp.md +6 -0
  36. data/docs/RotatedSecretDetailsInfo.md +8 -0
  37. data/docs/RotatedSecretSync.md +2 -0
  38. data/docs/RotatedSecretUpdateAws.md +5 -1
  39. data/docs/RotatedSecretUpdateAzure.md +12 -0
  40. data/docs/RotatedSecretUpdateCustom.md +11 -1
  41. data/docs/RotatedSecretUpdateGcp.md +6 -0
  42. data/docs/UpdateAccountSettings.md +4 -0
  43. data/docs/UscSyncInfo.md +26 -0
  44. data/lib/akeyless/models/account_general_settings.rb +19 -1
  45. data/lib/akeyless/models/azure_target_details.rb +10 -1
  46. data/lib/akeyless/models/certificate_chain_info.rb +46 -1
  47. data/lib/akeyless/models/ds_producer_details.rb +10 -1
  48. data/lib/akeyless/models/dynamic_secret_create_hana_db.rb +11 -1
  49. data/lib/akeyless/models/dynamic_secret_create_mongo_db.rb +11 -1
  50. data/lib/akeyless/models/dynamic_secret_create_ms_sql.rb +11 -1
  51. data/lib/akeyless/models/dynamic_secret_create_my_sql.rb +11 -1
  52. data/lib/akeyless/models/dynamic_secret_create_postgre_sql.rb +11 -1
  53. data/lib/akeyless/models/dynamic_secret_update_hana_db.rb +11 -1
  54. data/lib/akeyless/models/dynamic_secret_update_mongo_db.rb +11 -1
  55. data/lib/akeyless/models/dynamic_secret_update_ms_sql.rb +11 -1
  56. data/lib/akeyless/models/dynamic_secret_update_my_sql.rb +11 -1
  57. data/lib/akeyless/models/dynamic_secret_update_postgre_sql.rb +11 -1
  58. data/lib/akeyless/models/gateway_create_producer_hana_db.rb +11 -1
  59. data/lib/akeyless/models/gateway_create_producer_mongo.rb +11 -1
  60. data/lib/akeyless/models/gateway_create_producer_mssql.rb +11 -1
  61. data/lib/akeyless/models/gateway_create_producer_my_sql.rb +11 -1
  62. data/lib/akeyless/models/gateway_create_producer_postgre_sql.rb +11 -1
  63. data/lib/akeyless/models/gateway_update_producer_hana_db.rb +11 -1
  64. data/lib/akeyless/models/gateway_update_producer_mongo.rb +11 -1
  65. data/lib/akeyless/models/gateway_update_producer_mssql.rb +11 -1
  66. data/lib/akeyless/models/gateway_update_producer_my_sql.rb +11 -1
  67. data/lib/akeyless/models/gateway_update_producer_postgre_sql.rb +11 -1
  68. data/lib/akeyless/models/gcp_target_details.rb +10 -1
  69. data/lib/akeyless/models/item_usc_sync_association.rb +1 -1
  70. data/lib/akeyless/models/list_items_in_path_output.rb +10 -1
  71. data/lib/akeyless/models/list_items_output.rb +10 -1
  72. data/lib/akeyless/models/null_string.rb +224 -0
  73. data/lib/akeyless/models/remote_secret_info.rb +1 -1
  74. data/lib/akeyless/models/rotated_secret_create_aws.rb +22 -2
  75. data/lib/akeyless/models/rotated_secret_create_azure.rb +63 -1
  76. data/lib/akeyless/models/rotated_secret_create_custom.rb +54 -4
  77. data/lib/akeyless/models/rotated_secret_create_gcp.rb +31 -1
  78. data/lib/akeyless/models/rotated_secret_details_info.rb +37 -1
  79. data/lib/akeyless/models/rotated_secret_sync.rb +11 -1
  80. data/lib/akeyless/models/rotated_secret_update_aws.rb +22 -2
  81. data/lib/akeyless/models/rotated_secret_update_azure.rb +63 -1
  82. data/lib/akeyless/models/rotated_secret_update_custom.rb +54 -4
  83. data/lib/akeyless/models/rotated_secret_update_gcp.rb +31 -1
  84. data/lib/akeyless/models/update_account_settings.rb +21 -1
  85. data/lib/akeyless/models/usc_sync_info.rb +250 -0
  86. data/lib/akeyless/version.rb +1 -1
  87. data/lib/akeyless.rb +2 -1
  88. data/spec/models/null_string_spec.rb +42 -0
  89. data/spec/models/usc_sync_info_spec.rb +60 -0
  90. metadata +1064 -1056
@@ -18,8 +18,14 @@ module Akeyless
18
18
  class RotatedSecretDetailsInfo
19
19
  attr_accessor :delete_previous_version_in_days
20
20
 
21
+ attr_accessor :enable_custom_password_policy
22
+
21
23
  attr_accessor :grace_rotation
22
24
 
25
+ attr_accessor :grace_rotation_hour
26
+
27
+ attr_accessor :grace_rotation_interval
28
+
23
29
  attr_accessor :gw_cluster_id
24
30
 
25
31
  attr_accessor :last_rotation_error
@@ -28,6 +34,8 @@ module Akeyless
28
34
 
29
35
  attr_accessor :max_versions
30
36
 
37
+ attr_accessor :next_auto_rotate_type
38
+
31
39
  attr_accessor :number_of_versions_to_save
32
40
 
33
41
  attr_accessor :rotation_hour
@@ -53,11 +61,15 @@ module Akeyless
53
61
  def self.attribute_map
54
62
  {
55
63
  :'delete_previous_version_in_days' => :'delete_previous_version_in_days',
64
+ :'enable_custom_password_policy' => :'enable_custom_password_policy',
56
65
  :'grace_rotation' => :'grace_rotation',
66
+ :'grace_rotation_hour' => :'grace_rotation_hour',
67
+ :'grace_rotation_interval' => :'grace_rotation_interval',
57
68
  :'gw_cluster_id' => :'gw_cluster_id',
58
69
  :'last_rotation_error' => :'last_rotation_error',
59
70
  :'managed_by_akeyless' => :'managed_by_akeyless',
60
71
  :'max_versions' => :'max_versions',
72
+ :'next_auto_rotate_type' => :'next_auto_rotate_type',
61
73
  :'number_of_versions_to_save' => :'number_of_versions_to_save',
62
74
  :'rotation_hour' => :'rotation_hour',
63
75
  :'rotation_interval_min' => :'rotation_interval_min',
@@ -80,11 +92,15 @@ module Akeyless
80
92
  def self.openapi_types
81
93
  {
82
94
  :'delete_previous_version_in_days' => :'Integer',
95
+ :'enable_custom_password_policy' => :'Boolean',
83
96
  :'grace_rotation' => :'Boolean',
97
+ :'grace_rotation_hour' => :'Integer',
98
+ :'grace_rotation_interval' => :'Integer',
84
99
  :'gw_cluster_id' => :'Integer',
85
100
  :'last_rotation_error' => :'String',
86
101
  :'managed_by_akeyless' => :'Boolean',
87
102
  :'max_versions' => :'Integer',
103
+ :'next_auto_rotate_type' => :'String',
88
104
  :'number_of_versions_to_save' => :'Integer',
89
105
  :'rotation_hour' => :'Integer',
90
106
  :'rotation_interval_min' => :'Boolean',
@@ -123,10 +139,22 @@ module Akeyless
123
139
  self.delete_previous_version_in_days = attributes[:'delete_previous_version_in_days']
124
140
  end
125
141
 
142
+ if attributes.key?(:'enable_custom_password_policy')
143
+ self.enable_custom_password_policy = attributes[:'enable_custom_password_policy']
144
+ end
145
+
126
146
  if attributes.key?(:'grace_rotation')
127
147
  self.grace_rotation = attributes[:'grace_rotation']
128
148
  end
129
149
 
150
+ if attributes.key?(:'grace_rotation_hour')
151
+ self.grace_rotation_hour = attributes[:'grace_rotation_hour']
152
+ end
153
+
154
+ if attributes.key?(:'grace_rotation_interval')
155
+ self.grace_rotation_interval = attributes[:'grace_rotation_interval']
156
+ end
157
+
130
158
  if attributes.key?(:'gw_cluster_id')
131
159
  self.gw_cluster_id = attributes[:'gw_cluster_id']
132
160
  end
@@ -143,6 +171,10 @@ module Akeyless
143
171
  self.max_versions = attributes[:'max_versions']
144
172
  end
145
173
 
174
+ if attributes.key?(:'next_auto_rotate_type')
175
+ self.next_auto_rotate_type = attributes[:'next_auto_rotate_type']
176
+ end
177
+
146
178
  if attributes.key?(:'number_of_versions_to_save')
147
179
  self.number_of_versions_to_save = attributes[:'number_of_versions_to_save']
148
180
  end
@@ -207,11 +239,15 @@ module Akeyless
207
239
  return true if self.equal?(o)
208
240
  self.class == o.class &&
209
241
  delete_previous_version_in_days == o.delete_previous_version_in_days &&
242
+ enable_custom_password_policy == o.enable_custom_password_policy &&
210
243
  grace_rotation == o.grace_rotation &&
244
+ grace_rotation_hour == o.grace_rotation_hour &&
245
+ grace_rotation_interval == o.grace_rotation_interval &&
211
246
  gw_cluster_id == o.gw_cluster_id &&
212
247
  last_rotation_error == o.last_rotation_error &&
213
248
  managed_by_akeyless == o.managed_by_akeyless &&
214
249
  max_versions == o.max_versions &&
250
+ next_auto_rotate_type == o.next_auto_rotate_type &&
215
251
  number_of_versions_to_save == o.number_of_versions_to_save &&
216
252
  rotation_hour == o.rotation_hour &&
217
253
  rotation_interval_min == o.rotation_interval_min &&
@@ -233,7 +269,7 @@ module Akeyless
233
269
  # Calculates hash code according to all attributes.
234
270
  # @return [Integer] Hash code
235
271
  def hash
236
- [delete_previous_version_in_days, grace_rotation, gw_cluster_id, last_rotation_error, managed_by_akeyless, max_versions, number_of_versions_to_save, rotation_hour, rotation_interval_min, rotation_statement, rotator_creds_type, rotator_status, rotator_type, same_password, services_details, timeout_seconds].hash
272
+ [delete_previous_version_in_days, enable_custom_password_policy, grace_rotation, grace_rotation_hour, grace_rotation_interval, gw_cluster_id, last_rotation_error, managed_by_akeyless, max_versions, next_auto_rotate_type, number_of_versions_to_save, rotation_hour, rotation_interval_min, rotation_statement, rotator_creds_type, rotator_status, rotator_type, same_password, services_details, timeout_seconds].hash
237
273
  end
238
274
 
239
275
  # Builds the object from hash
@@ -15,6 +15,9 @@ require 'time'
15
15
 
16
16
  module Akeyless
17
17
  class RotatedSecretSync
18
+ # JQ expression to filter or transform the secret value
19
+ attr_accessor :filter_secret_value
20
+
18
21
  # Set output format to JSON
19
22
  attr_accessor :json
20
23
 
@@ -39,6 +42,7 @@ module Akeyless
39
42
  # Attribute mapping from ruby-style variable name to JSON key.
40
43
  def self.attribute_map
41
44
  {
45
+ :'filter_secret_value' => :'filter-secret-value',
42
46
  :'json' => :'json',
43
47
  :'name' => :'name',
44
48
  :'namespace' => :'namespace',
@@ -57,6 +61,7 @@ module Akeyless
57
61
  # Attribute type mapping.
58
62
  def self.openapi_types
59
63
  {
64
+ :'filter_secret_value' => :'String',
60
65
  :'json' => :'Boolean',
61
66
  :'name' => :'String',
62
67
  :'namespace' => :'String',
@@ -88,6 +93,10 @@ module Akeyless
88
93
  h[k.to_sym] = v
89
94
  }
90
95
 
96
+ if attributes.key?(:'filter_secret_value')
97
+ self.filter_secret_value = attributes[:'filter_secret_value']
98
+ end
99
+
91
100
  if attributes.key?(:'json')
92
101
  self.json = attributes[:'json']
93
102
  else
@@ -146,6 +155,7 @@ module Akeyless
146
155
  def ==(o)
147
156
  return true if self.equal?(o)
148
157
  self.class == o.class &&
158
+ filter_secret_value == o.filter_secret_value &&
149
159
  json == o.json &&
150
160
  name == o.name &&
151
161
  namespace == o.namespace &&
@@ -164,7 +174,7 @@ module Akeyless
164
174
  # Calculates hash code according to all attributes.
165
175
  # @return [Integer] Hash code
166
176
  def hash
167
- [json, name, namespace, remote_secret_name, token, uid_token, usc_name].hash
177
+ [filter_secret_value, json, name, namespace, remote_secret_name, token, uid_token, usc_name].hash
168
178
  end
169
179
 
170
180
  # Builds the object from hash
@@ -39,9 +39,15 @@ module Akeyless
39
39
  # Description of the object
40
40
  attr_accessor :description
41
41
 
42
- # Create a new access key without deleting the old key from AWS for backup (relevant only for AWS) [true/false]
42
+ # Create a new access key without deleting the old key from AWS/Azure/GCP for backup (relevant only for AWS/Azure/GCP) [true/false]
43
43
  attr_accessor :grace_rotation
44
44
 
45
+ # The Hour of the grace rotation in UTC
46
+ attr_accessor :grace_rotation_hour
47
+
48
+ # The number of days to wait before deleting the old key (must be bigger than rotation-interval)
49
+ attr_accessor :grace_rotation_interval
50
+
45
51
  # Set output format to JSON
46
52
  attr_accessor :json
47
53
 
@@ -111,6 +117,8 @@ module Akeyless
111
117
  :'delete_protection' => :'delete_protection',
112
118
  :'description' => :'description',
113
119
  :'grace_rotation' => :'grace-rotation',
120
+ :'grace_rotation_hour' => :'grace-rotation-hour',
121
+ :'grace_rotation_interval' => :'grace-rotation-interval',
114
122
  :'json' => :'json',
115
123
  :'keep_prev_version' => :'keep-prev-version',
116
124
  :'key' => :'key',
@@ -150,6 +158,8 @@ module Akeyless
150
158
  :'delete_protection' => :'String',
151
159
  :'description' => :'String',
152
160
  :'grace_rotation' => :'String',
161
+ :'grace_rotation_hour' => :'Integer',
162
+ :'grace_rotation_interval' => :'String',
153
163
  :'json' => :'Boolean',
154
164
  :'keep_prev_version' => :'String',
155
165
  :'key' => :'String',
@@ -237,6 +247,14 @@ module Akeyless
237
247
  self.grace_rotation = attributes[:'grace_rotation']
238
248
  end
239
249
 
250
+ if attributes.key?(:'grace_rotation_hour')
251
+ self.grace_rotation_hour = attributes[:'grace_rotation_hour']
252
+ end
253
+
254
+ if attributes.key?(:'grace_rotation_interval')
255
+ self.grace_rotation_interval = attributes[:'grace_rotation_interval']
256
+ end
257
+
240
258
  if attributes.key?(:'json')
241
259
  self.json = attributes[:'json']
242
260
  else
@@ -358,6 +376,8 @@ module Akeyless
358
376
  delete_protection == o.delete_protection &&
359
377
  description == o.description &&
360
378
  grace_rotation == o.grace_rotation &&
379
+ grace_rotation_hour == o.grace_rotation_hour &&
380
+ grace_rotation_interval == o.grace_rotation_interval &&
361
381
  json == o.json &&
362
382
  keep_prev_version == o.keep_prev_version &&
363
383
  key == o.key &&
@@ -388,7 +408,7 @@ module Akeyless
388
408
  # Calculates hash code according to all attributes.
389
409
  # @return [Integer] Hash code
390
410
  def hash
391
- [add_tag, api_id, api_key, authentication_credentials, auto_rotate, aws_region, delete_protection, description, grace_rotation, json, keep_prev_version, key, max_versions, name, new_name, password_length, rm_tag, rotate_after_disconnect, rotation_event_in, rotation_hour, rotation_interval, secure_access_aws_account_id, secure_access_aws_native_cli, secure_access_bastion_issuer, secure_access_certificate_issuer, secure_access_enable, token, uid_token].hash
411
+ [add_tag, api_id, api_key, authentication_credentials, auto_rotate, aws_region, delete_protection, description, grace_rotation, grace_rotation_hour, grace_rotation_interval, json, keep_prev_version, key, max_versions, name, new_name, password_length, rm_tag, rotate_after_disconnect, rotation_event_in, rotation_hour, rotation_interval, secure_access_aws_account_id, secure_access_aws_native_cli, secure_access_bastion_issuer, secure_access_certificate_issuer, secure_access_enable, token, uid_token].hash
392
412
  end
393
413
 
394
414
  # Builds the object from hash
@@ -39,6 +39,18 @@ module Akeyless
39
39
  # Description of the object
40
40
  attr_accessor :description
41
41
 
42
+ # If set, explicitly provide the storage account details [true/false]
43
+ attr_accessor :explicitly_set_sa
44
+
45
+ # Create a new access key without deleting the old key from AWS/Azure/GCP for backup (relevant only for AWS/Azure/GCP) [true/false]
46
+ attr_accessor :grace_rotation
47
+
48
+ # The Hour of the grace rotation in UTC
49
+ attr_accessor :grace_rotation_hour
50
+
51
+ # The number of days to wait before deleting the old key (must be bigger than rotation-interval)
52
+ attr_accessor :grace_rotation_interval
53
+
42
54
  # Set output format to JSON
43
55
  attr_accessor :json
44
56
 
@@ -60,6 +72,12 @@ module Akeyless
60
72
  # The length of the password to be generated
61
73
  attr_accessor :password_length
62
74
 
75
+ # The resource group name (only relevant when explicitly-set-sa=true)
76
+ attr_accessor :resource_group_name
77
+
78
+ # The name of the storage account (only relevant when explicitly-set-sa=true)
79
+ attr_accessor :resource_name
80
+
63
81
  # List of the existent tags that will be removed from this item
64
82
  attr_accessor :rm_tag
65
83
 
@@ -116,6 +134,10 @@ module Akeyless
116
134
  :'auto_rotate' => :'auto-rotate',
117
135
  :'delete_protection' => :'delete_protection',
118
136
  :'description' => :'description',
137
+ :'explicitly_set_sa' => :'explicitly-set-sa',
138
+ :'grace_rotation' => :'grace-rotation',
139
+ :'grace_rotation_hour' => :'grace-rotation-hour',
140
+ :'grace_rotation_interval' => :'grace-rotation-interval',
119
141
  :'json' => :'json',
120
142
  :'keep_prev_version' => :'keep-prev-version',
121
143
  :'key' => :'key',
@@ -123,6 +145,8 @@ module Akeyless
123
145
  :'name' => :'name',
124
146
  :'new_name' => :'new-name',
125
147
  :'password_length' => :'password-length',
148
+ :'resource_group_name' => :'resource-group-name',
149
+ :'resource_name' => :'resource-name',
126
150
  :'rm_tag' => :'rm-tag',
127
151
  :'rotate_after_disconnect' => :'rotate-after-disconnect',
128
152
  :'rotation_event_in' => :'rotation-event-in',
@@ -157,6 +181,10 @@ module Akeyless
157
181
  :'auto_rotate' => :'String',
158
182
  :'delete_protection' => :'String',
159
183
  :'description' => :'String',
184
+ :'explicitly_set_sa' => :'String',
185
+ :'grace_rotation' => :'String',
186
+ :'grace_rotation_hour' => :'Integer',
187
+ :'grace_rotation_interval' => :'String',
160
188
  :'json' => :'Boolean',
161
189
  :'keep_prev_version' => :'String',
162
190
  :'key' => :'String',
@@ -164,6 +192,8 @@ module Akeyless
164
192
  :'name' => :'String',
165
193
  :'new_name' => :'String',
166
194
  :'password_length' => :'String',
195
+ :'resource_group_name' => :'String',
196
+ :'resource_name' => :'String',
167
197
  :'rm_tag' => :'Array<String>',
168
198
  :'rotate_after_disconnect' => :'String',
169
199
  :'rotation_event_in' => :'Array<String>',
@@ -241,6 +271,24 @@ module Akeyless
241
271
  self.description = 'default_metadata'
242
272
  end
243
273
 
274
+ if attributes.key?(:'explicitly_set_sa')
275
+ self.explicitly_set_sa = attributes[:'explicitly_set_sa']
276
+ else
277
+ self.explicitly_set_sa = 'false'
278
+ end
279
+
280
+ if attributes.key?(:'grace_rotation')
281
+ self.grace_rotation = attributes[:'grace_rotation']
282
+ end
283
+
284
+ if attributes.key?(:'grace_rotation_hour')
285
+ self.grace_rotation_hour = attributes[:'grace_rotation_hour']
286
+ end
287
+
288
+ if attributes.key?(:'grace_rotation_interval')
289
+ self.grace_rotation_interval = attributes[:'grace_rotation_interval']
290
+ end
291
+
244
292
  if attributes.key?(:'json')
245
293
  self.json = attributes[:'json']
246
294
  else
@@ -273,6 +321,14 @@ module Akeyless
273
321
  self.password_length = attributes[:'password_length']
274
322
  end
275
323
 
324
+ if attributes.key?(:'resource_group_name')
325
+ self.resource_group_name = attributes[:'resource_group_name']
326
+ end
327
+
328
+ if attributes.key?(:'resource_name')
329
+ self.resource_name = attributes[:'resource_name']
330
+ end
331
+
276
332
  if attributes.key?(:'rm_tag')
277
333
  if (value = attributes[:'rm_tag']).is_a?(Array)
278
334
  self.rm_tag = value
@@ -379,6 +435,10 @@ module Akeyless
379
435
  auto_rotate == o.auto_rotate &&
380
436
  delete_protection == o.delete_protection &&
381
437
  description == o.description &&
438
+ explicitly_set_sa == o.explicitly_set_sa &&
439
+ grace_rotation == o.grace_rotation &&
440
+ grace_rotation_hour == o.grace_rotation_hour &&
441
+ grace_rotation_interval == o.grace_rotation_interval &&
382
442
  json == o.json &&
383
443
  keep_prev_version == o.keep_prev_version &&
384
444
  key == o.key &&
@@ -386,6 +446,8 @@ module Akeyless
386
446
  name == o.name &&
387
447
  new_name == o.new_name &&
388
448
  password_length == o.password_length &&
449
+ resource_group_name == o.resource_group_name &&
450
+ resource_name == o.resource_name &&
389
451
  rm_tag == o.rm_tag &&
390
452
  rotate_after_disconnect == o.rotate_after_disconnect &&
391
453
  rotation_event_in == o.rotation_event_in &&
@@ -412,7 +474,7 @@ module Akeyless
412
474
  # Calculates hash code according to all attributes.
413
475
  # @return [Integer] Hash code
414
476
  def hash
415
- [add_tag, api_id, api_key, application_id, authentication_credentials, auto_rotate, delete_protection, description, json, keep_prev_version, key, max_versions, name, new_name, password_length, rm_tag, rotate_after_disconnect, rotation_event_in, rotation_hour, rotation_interval, secure_access_disable_concurrent_connections, secure_access_enable, secure_access_url, secure_access_web, secure_access_web_browsing, secure_access_web_proxy, storage_account_key_name, token, uid_token, username].hash
477
+ [add_tag, api_id, api_key, application_id, authentication_credentials, auto_rotate, delete_protection, description, explicitly_set_sa, grace_rotation, grace_rotation_hour, grace_rotation_interval, json, keep_prev_version, key, max_versions, name, new_name, password_length, resource_group_name, resource_name, rm_tag, rotate_after_disconnect, rotation_event_in, rotation_hour, rotation_interval, secure_access_disable_concurrent_connections, secure_access_enable, secure_access_url, secure_access_web, secure_access_web_browsing, secure_access_web_proxy, storage_account_key_name, token, uid_token, username].hash
416
478
  end
417
479
 
418
480
  # Builds the object from hash
@@ -33,6 +33,9 @@ module Akeyless
33
33
  # Description of the object
34
34
  attr_accessor :description
35
35
 
36
+ # Enable password policy
37
+ attr_accessor :enable_password_policy
38
+
36
39
  # Set output format to JSON
37
40
  attr_accessor :json
38
41
 
@@ -114,6 +117,18 @@ module Akeyless
114
117
  # The universal identity token, Required only for universal_identity authentication
115
118
  attr_accessor :uid_token
116
119
 
120
+ # Password must contain capital letters [true/false]
121
+ attr_accessor :use_capital_letters
122
+
123
+ # Password must contain lower case letters [true/false]
124
+ attr_accessor :use_lower_letters
125
+
126
+ # Password must contain numbers [true/false]
127
+ attr_accessor :use_numbers
128
+
129
+ # Password must contain special characters [true/false]
130
+ attr_accessor :use_special_characters
131
+
117
132
  # Attribute mapping from ruby-style variable name to JSON key.
118
133
  def self.attribute_map
119
134
  {
@@ -123,6 +138,7 @@ module Akeyless
123
138
  :'custom_payload' => :'custom-payload',
124
139
  :'delete_protection' => :'delete_protection',
125
140
  :'description' => :'description',
141
+ :'enable_password_policy' => :'enable-password-policy',
126
142
  :'json' => :'json',
127
143
  :'keep_prev_version' => :'keep-prev-version',
128
144
  :'key' => :'key',
@@ -149,7 +165,11 @@ module Akeyless
149
165
  :'secure_access_web_proxy' => :'secure-access-web-proxy',
150
166
  :'timeout_sec' => :'timeout-sec',
151
167
  :'token' => :'token',
152
- :'uid_token' => :'uid-token'
168
+ :'uid_token' => :'uid-token',
169
+ :'use_capital_letters' => :'use-capital-letters',
170
+ :'use_lower_letters' => :'use-lower-letters',
171
+ :'use_numbers' => :'use-numbers',
172
+ :'use_special_characters' => :'use-special-characters'
153
173
  }
154
174
  end
155
175
 
@@ -167,6 +187,7 @@ module Akeyless
167
187
  :'custom_payload' => :'String',
168
188
  :'delete_protection' => :'String',
169
189
  :'description' => :'String',
190
+ :'enable_password_policy' => :'String',
170
191
  :'json' => :'Boolean',
171
192
  :'keep_prev_version' => :'String',
172
193
  :'key' => :'String',
@@ -193,7 +214,11 @@ module Akeyless
193
214
  :'secure_access_web_proxy' => :'Boolean',
194
215
  :'timeout_sec' => :'Integer',
195
216
  :'token' => :'String',
196
- :'uid_token' => :'String'
217
+ :'uid_token' => :'String',
218
+ :'use_capital_letters' => :'String',
219
+ :'use_lower_letters' => :'String',
220
+ :'use_numbers' => :'String',
221
+ :'use_special_characters' => :'String'
197
222
  }
198
223
  end
199
224
 
@@ -248,6 +273,10 @@ module Akeyless
248
273
  self.description = 'default_metadata'
249
274
  end
250
275
 
276
+ if attributes.key?(:'enable_password_policy')
277
+ self.enable_password_policy = attributes[:'enable_password_policy']
278
+ end
279
+
251
280
  if attributes.key?(:'json')
252
281
  self.json = attributes[:'json']
253
282
  else
@@ -375,6 +404,22 @@ module Akeyless
375
404
  if attributes.key?(:'uid_token')
376
405
  self.uid_token = attributes[:'uid_token']
377
406
  end
407
+
408
+ if attributes.key?(:'use_capital_letters')
409
+ self.use_capital_letters = attributes[:'use_capital_letters']
410
+ end
411
+
412
+ if attributes.key?(:'use_lower_letters')
413
+ self.use_lower_letters = attributes[:'use_lower_letters']
414
+ end
415
+
416
+ if attributes.key?(:'use_numbers')
417
+ self.use_numbers = attributes[:'use_numbers']
418
+ end
419
+
420
+ if attributes.key?(:'use_special_characters')
421
+ self.use_special_characters = attributes[:'use_special_characters']
422
+ end
378
423
  end
379
424
 
380
425
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -408,6 +453,7 @@ module Akeyless
408
453
  custom_payload == o.custom_payload &&
409
454
  delete_protection == o.delete_protection &&
410
455
  description == o.description &&
456
+ enable_password_policy == o.enable_password_policy &&
411
457
  json == o.json &&
412
458
  keep_prev_version == o.keep_prev_version &&
413
459
  key == o.key &&
@@ -434,7 +480,11 @@ module Akeyless
434
480
  secure_access_web_proxy == o.secure_access_web_proxy &&
435
481
  timeout_sec == o.timeout_sec &&
436
482
  token == o.token &&
437
- uid_token == o.uid_token
483
+ uid_token == o.uid_token &&
484
+ use_capital_letters == o.use_capital_letters &&
485
+ use_lower_letters == o.use_lower_letters &&
486
+ use_numbers == o.use_numbers &&
487
+ use_special_characters == o.use_special_characters
438
488
  end
439
489
 
440
490
  # @see the `==` method
@@ -446,7 +496,7 @@ module Akeyless
446
496
  # Calculates hash code according to all attributes.
447
497
  # @return [Integer] Hash code
448
498
  def hash
449
- [add_tag, authentication_credentials, auto_rotate, custom_payload, delete_protection, description, json, keep_prev_version, key, max_versions, name, new_name, password_length, rm_tag, rotate_after_disconnect, rotation_event_in, rotation_hour, rotation_interval, secure_access_allow_external_user, secure_access_bastion_issuer, secure_access_certificate_issuer, secure_access_enable, secure_access_host, secure_access_rdp_domain, secure_access_rdp_user, secure_access_ssh_user, secure_access_url, secure_access_web, secure_access_web_browsing, secure_access_web_proxy, timeout_sec, token, uid_token].hash
499
+ [add_tag, authentication_credentials, auto_rotate, custom_payload, delete_protection, description, enable_password_policy, json, keep_prev_version, key, max_versions, name, new_name, password_length, rm_tag, rotate_after_disconnect, rotation_event_in, rotation_hour, rotation_interval, secure_access_allow_external_user, secure_access_bastion_issuer, secure_access_certificate_issuer, secure_access_enable, secure_access_host, secure_access_rdp_domain, secure_access_rdp_user, secure_access_ssh_user, secure_access_url, secure_access_web, secure_access_web_browsing, secure_access_web_proxy, timeout_sec, token, uid_token, use_capital_letters, use_lower_letters, use_numbers, use_special_characters].hash
450
500
  end
451
501
 
452
502
  # Builds the object from hash
@@ -39,6 +39,15 @@ module Akeyless
39
39
  # The key id of the gcp service account to rotate
40
40
  attr_accessor :gcp_service_account_key_id
41
41
 
42
+ # Create a new access key without deleting the old key from AWS/Azure/GCP for backup (relevant only for AWS/Azure/GCP) [true/false]
43
+ attr_accessor :grace_rotation
44
+
45
+ # The Hour of the grace rotation in UTC
46
+ attr_accessor :grace_rotation_hour
47
+
48
+ # The number of days to wait before deleting the old key (must be bigger than rotation-interval)
49
+ attr_accessor :grace_rotation_interval
50
+
42
51
  # Set output format to JSON
43
52
  attr_accessor :json
44
53
 
@@ -92,6 +101,9 @@ module Akeyless
92
101
  :'gcp_key' => :'gcp-key',
93
102
  :'gcp_service_account_email' => :'gcp-service-account-email',
94
103
  :'gcp_service_account_key_id' => :'gcp-service-account-key-id',
104
+ :'grace_rotation' => :'grace-rotation',
105
+ :'grace_rotation_hour' => :'grace-rotation-hour',
106
+ :'grace_rotation_interval' => :'grace-rotation-interval',
95
107
  :'json' => :'json',
96
108
  :'keep_prev_version' => :'keep-prev-version',
97
109
  :'key' => :'key',
@@ -125,6 +137,9 @@ module Akeyless
125
137
  :'gcp_key' => :'String',
126
138
  :'gcp_service_account_email' => :'String',
127
139
  :'gcp_service_account_key_id' => :'String',
140
+ :'grace_rotation' => :'String',
141
+ :'grace_rotation_hour' => :'Integer',
142
+ :'grace_rotation_interval' => :'String',
128
143
  :'json' => :'Boolean',
129
144
  :'keep_prev_version' => :'String',
130
145
  :'key' => :'String',
@@ -201,6 +216,18 @@ module Akeyless
201
216
  self.gcp_service_account_key_id = attributes[:'gcp_service_account_key_id']
202
217
  end
203
218
 
219
+ if attributes.key?(:'grace_rotation')
220
+ self.grace_rotation = attributes[:'grace_rotation']
221
+ end
222
+
223
+ if attributes.key?(:'grace_rotation_hour')
224
+ self.grace_rotation_hour = attributes[:'grace_rotation_hour']
225
+ end
226
+
227
+ if attributes.key?(:'grace_rotation_interval')
228
+ self.grace_rotation_interval = attributes[:'grace_rotation_interval']
229
+ end
230
+
204
231
  if attributes.key?(:'json')
205
232
  self.json = attributes[:'json']
206
233
  else
@@ -306,6 +333,9 @@ module Akeyless
306
333
  gcp_key == o.gcp_key &&
307
334
  gcp_service_account_email == o.gcp_service_account_email &&
308
335
  gcp_service_account_key_id == o.gcp_service_account_key_id &&
336
+ grace_rotation == o.grace_rotation &&
337
+ grace_rotation_hour == o.grace_rotation_hour &&
338
+ grace_rotation_interval == o.grace_rotation_interval &&
309
339
  json == o.json &&
310
340
  keep_prev_version == o.keep_prev_version &&
311
341
  key == o.key &&
@@ -331,7 +361,7 @@ module Akeyless
331
361
  # Calculates hash code according to all attributes.
332
362
  # @return [Integer] Hash code
333
363
  def hash
334
- [add_tag, authentication_credentials, auto_rotate, delete_protection, description, gcp_key, gcp_service_account_email, gcp_service_account_key_id, json, keep_prev_version, key, max_versions, name, new_name, password_length, rm_tag, rotation_event_in, rotation_hour, rotation_interval, rotator_type, token, uid_token].hash
364
+ [add_tag, authentication_credentials, auto_rotate, delete_protection, description, gcp_key, gcp_service_account_email, gcp_service_account_key_id, grace_rotation, grace_rotation_hour, grace_rotation_interval, json, keep_prev_version, key, max_versions, name, new_name, password_length, rm_tag, rotation_event_in, rotation_hour, rotation_interval, rotator_type, token, uid_token].hash
335
365
  end
336
366
 
337
367
  # Builds the object from hash
@@ -60,6 +60,12 @@ module Akeyless
60
60
  # A default list of comma-separated CIDR block that acts as a trusted Gateway entity.
61
61
  attr_accessor :gw_bound_ips
62
62
 
63
+ # Hide personal folder, if set - users will not be able to use personal folder [true/false]
64
+ attr_accessor :hide_personal_folder
65
+
66
+ # Hide static secret's password type [true/false]
67
+ attr_accessor :hide_static_password
68
+
63
69
  # Characters that cannot be used for items/targets/roles/auths/event_forwarder names. Empty string will enforce nothing.
64
70
  attr_accessor :invalid_characters
65
71
 
@@ -159,6 +165,8 @@ module Akeyless
159
165
  :'enable_password_expiration' => :'enable-password-expiration',
160
166
  :'force_new_versions' => :'force-new-versions',
161
167
  :'gw_bound_ips' => :'gw-bound-ips',
168
+ :'hide_personal_folder' => :'hide-personal-folder',
169
+ :'hide_static_password' => :'hide-static-password',
162
170
  :'invalid_characters' => :'invalid-characters',
163
171
  :'item_type' => :'item-type',
164
172
  :'items_deletion_protection' => :'items-deletion-protection',
@@ -212,6 +220,8 @@ module Akeyless
212
220
  :'enable_password_expiration' => :'String',
213
221
  :'force_new_versions' => :'String',
214
222
  :'gw_bound_ips' => :'Array<String>',
223
+ :'hide_personal_folder' => :'String',
224
+ :'hide_static_password' => :'String',
215
225
  :'invalid_characters' => :'String',
216
226
  :'item_type' => :'String',
217
227
  :'items_deletion_protection' => :'String',
@@ -327,6 +337,14 @@ module Akeyless
327
337
  end
328
338
  end
329
339
 
340
+ if attributes.key?(:'hide_personal_folder')
341
+ self.hide_personal_folder = attributes[:'hide_personal_folder']
342
+ end
343
+
344
+ if attributes.key?(:'hide_static_password')
345
+ self.hide_static_password = attributes[:'hide_static_password']
346
+ end
347
+
330
348
  if attributes.key?(:'invalid_characters')
331
349
  self.invalid_characters = attributes[:'invalid_characters']
332
350
  else
@@ -475,6 +493,8 @@ module Akeyless
475
493
  enable_password_expiration == o.enable_password_expiration &&
476
494
  force_new_versions == o.force_new_versions &&
477
495
  gw_bound_ips == o.gw_bound_ips &&
496
+ hide_personal_folder == o.hide_personal_folder &&
497
+ hide_static_password == o.hide_static_password &&
478
498
  invalid_characters == o.invalid_characters &&
479
499
  item_type == o.item_type &&
480
500
  items_deletion_protection == o.items_deletion_protection &&
@@ -513,7 +533,7 @@ module Akeyless
513
533
  # Calculates hash code according to all attributes.
514
534
  # @return [Integer] Hash code
515
535
  def hash
516
- [address, bound_ips, city, company_name, country, default_key_name, default_share_link_ttl_minutes, default_versioning, dp_enable_classic_key_protection, dynamic_secret_max_ttl, dynamic_secret_max_ttl_enable, enable_item_sharing, enable_password_expiration, force_new_versions, gw_bound_ips, invalid_characters, item_type, items_deletion_protection, json, jwt_ttl_default, jwt_ttl_max, jwt_ttl_min, lock_bound_ips, lock_default_key, lock_gw_bound_ips, max_rotation_interval, max_rotation_interval_enable, max_versions, password_expiration_days, password_expiration_notification_days, password_length, phone, postal_code, token, uid_token, usage_event_enable, usage_event_interval, usage_event_object_type, use_capital_letters, use_lower_letters, use_numbers, use_special_characters].hash
536
+ [address, bound_ips, city, company_name, country, default_key_name, default_share_link_ttl_minutes, default_versioning, dp_enable_classic_key_protection, dynamic_secret_max_ttl, dynamic_secret_max_ttl_enable, enable_item_sharing, enable_password_expiration, force_new_versions, gw_bound_ips, hide_personal_folder, hide_static_password, invalid_characters, item_type, items_deletion_protection, json, jwt_ttl_default, jwt_ttl_max, jwt_ttl_min, lock_bound_ips, lock_default_key, lock_gw_bound_ips, max_rotation_interval, max_rotation_interval_enable, max_versions, password_expiration_days, password_expiration_notification_days, password_length, phone, postal_code, token, uid_token, usage_event_enable, usage_event_interval, usage_event_object_type, use_capital_letters, use_lower_letters, use_numbers, use_special_characters].hash
517
537
  end
518
538
 
519
539
  # Builds the object from hash