akeyless 5.0.3 → 5.0.5

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 (241) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -2
  3. data/docs/AWSGatewayCloudIdentityExternalIdOpt.md +22 -0
  4. data/docs/AWSTargetDetails.md +2 -0
  5. data/docs/AccountGeneralSettings.md +6 -0
  6. data/docs/AzureTargetDetails.md +2 -0
  7. data/docs/CertificateExpirationEventsSettings.md +20 -0
  8. data/docs/CreateAWSTarget.md +4 -0
  9. data/docs/CreatePKICertIssuer.md +3 -1
  10. data/docs/DSProducerDetails.md +14 -0
  11. data/docs/DynamicSecretCreateArtifactory.md +2 -0
  12. data/docs/DynamicSecretCreateAws.md +4 -0
  13. data/docs/DynamicSecretCreateAzure.md +4 -0
  14. data/docs/DynamicSecretCreateCassandra.md +2 -0
  15. data/docs/DynamicSecretCreateChef.md +2 -0
  16. data/docs/DynamicSecretCreateGcp.md +2 -0
  17. data/docs/DynamicSecretCreateHanaDb.md +4 -0
  18. data/docs/DynamicSecretCreateK8s.md +2 -0
  19. data/docs/DynamicSecretCreateLdap.md +2 -0
  20. data/docs/DynamicSecretCreateMongoDb.md +4 -0
  21. data/docs/DynamicSecretCreateMsSql.md +4 -0
  22. data/docs/DynamicSecretCreateMySql.md +4 -0
  23. data/docs/DynamicSecretCreateOracleDb.md +2 -0
  24. data/docs/DynamicSecretCreatePostgreSql.md +4 -0
  25. data/docs/DynamicSecretCreateRdp.md +2 -0
  26. data/docs/DynamicSecretCreateRedis.md +2 -0
  27. data/docs/DynamicSecretCreateRedshift.md +2 -0
  28. data/docs/DynamicSecretCreateSnowflake.md +6 -0
  29. data/docs/DynamicSecretUpdateArtifactory.md +2 -0
  30. data/docs/DynamicSecretUpdateAws.md +4 -0
  31. data/docs/DynamicSecretUpdateAzure.md +4 -0
  32. data/docs/DynamicSecretUpdateCassandra.md +2 -0
  33. data/docs/DynamicSecretUpdateChef.md +2 -0
  34. data/docs/DynamicSecretUpdateGcp.md +2 -0
  35. data/docs/DynamicSecretUpdateHanaDb.md +4 -0
  36. data/docs/DynamicSecretUpdateK8s.md +2 -0
  37. data/docs/DynamicSecretUpdateLdap.md +2 -0
  38. data/docs/DynamicSecretUpdateMongoDb.md +4 -0
  39. data/docs/DynamicSecretUpdateMsSql.md +4 -0
  40. data/docs/DynamicSecretUpdateMySql.md +4 -0
  41. data/docs/DynamicSecretUpdateOracleDb.md +2 -0
  42. data/docs/DynamicSecretUpdatePostgreSql.md +4 -0
  43. data/docs/DynamicSecretUpdateRdp.md +2 -0
  44. data/docs/DynamicSecretUpdateRedis.md +2 -0
  45. data/docs/DynamicSecretUpdateRedshift.md +2 -0
  46. data/docs/DynamicSecretUpdateSnowflake.md +6 -0
  47. data/docs/GatewayCreateProducerArtifactory.md +2 -0
  48. data/docs/GatewayCreateProducerAws.md +4 -0
  49. data/docs/GatewayCreateProducerAzure.md +4 -0
  50. data/docs/GatewayCreateProducerCassandra.md +2 -0
  51. data/docs/GatewayCreateProducerChef.md +2 -0
  52. data/docs/GatewayCreateProducerGcp.md +2 -0
  53. data/docs/GatewayCreateProducerHanaDb.md +4 -0
  54. data/docs/GatewayCreateProducerLdap.md +2 -0
  55. data/docs/GatewayCreateProducerMSSQL.md +4 -0
  56. data/docs/GatewayCreateProducerMongo.md +4 -0
  57. data/docs/GatewayCreateProducerMySQL.md +4 -0
  58. data/docs/GatewayCreateProducerNativeK8S.md +2 -0
  59. data/docs/GatewayCreateProducerOracleDb.md +2 -0
  60. data/docs/GatewayCreateProducerPostgreSQL.md +4 -0
  61. data/docs/GatewayCreateProducerRdp.md +2 -0
  62. data/docs/GatewayCreateProducerRedis.md +2 -0
  63. data/docs/GatewayCreateProducerRedshift.md +2 -0
  64. data/docs/GatewayCreateProducerSnowflake.md +6 -0
  65. data/docs/GatewayDetailsForItemReplyObj.md +2 -0
  66. data/docs/GatewayUpdateProducerArtifactory.md +2 -0
  67. data/docs/GatewayUpdateProducerAws.md +4 -0
  68. data/docs/GatewayUpdateProducerAzure.md +4 -0
  69. data/docs/GatewayUpdateProducerCassandra.md +2 -0
  70. data/docs/GatewayUpdateProducerChef.md +2 -0
  71. data/docs/GatewayUpdateProducerGcp.md +2 -0
  72. data/docs/GatewayUpdateProducerHanaDb.md +4 -0
  73. data/docs/GatewayUpdateProducerLdap.md +2 -0
  74. data/docs/GatewayUpdateProducerMSSQL.md +4 -0
  75. data/docs/GatewayUpdateProducerMongo.md +4 -0
  76. data/docs/GatewayUpdateProducerMySQL.md +4 -0
  77. data/docs/GatewayUpdateProducerNativeK8S.md +2 -0
  78. data/docs/GatewayUpdateProducerOracleDb.md +2 -0
  79. data/docs/GatewayUpdateProducerPostgreSQL.md +4 -0
  80. data/docs/GatewayUpdateProducerRdp.md +2 -0
  81. data/docs/GatewayUpdateProducerRedis.md +2 -0
  82. data/docs/GatewayUpdateProducerRedshift.md +2 -0
  83. data/docs/GatewayUpdateProducerSnowflake.md +6 -0
  84. data/docs/GcpTargetDetails.md +2 -0
  85. data/docs/ItemUSCSyncAssociation.md +1 -1
  86. data/docs/ItemVersion.md +4 -0
  87. data/docs/ListItemsInPathOutput.md +2 -0
  88. data/docs/ListItemsOutput.md +2 -0
  89. data/docs/PKICertificateIssueDetails.md +2 -0
  90. data/docs/RotatedSecretCreateAws.md +5 -1
  91. data/docs/RotatedSecretCreateAzure.md +12 -0
  92. data/docs/RotatedSecretCreateCustom.md +11 -1
  93. data/docs/RotatedSecretCreateGcp.md +6 -0
  94. data/docs/RotatedSecretCreateSnowflake.md +6 -2
  95. data/docs/RotatedSecretDeleteSyncOutput.md +20 -0
  96. data/docs/RotatedSecretDetailsInfo.md +8 -0
  97. data/docs/RotatedSecretSync.md +2 -0
  98. data/docs/RotatedSecretUpdateAws.md +5 -1
  99. data/docs/RotatedSecretUpdateAzure.md +12 -0
  100. data/docs/RotatedSecretUpdateCustom.md +11 -1
  101. data/docs/RotatedSecretUpdateGcp.md +6 -0
  102. data/docs/RotatedSecretUpdateSnowflake.md +5 -1
  103. data/docs/SecretSyncOutput.md +22 -0
  104. data/docs/StaticSecretDeleteSync.md +26 -0
  105. data/docs/StaticSecretDeleteSyncOutput.md +20 -0
  106. data/docs/StaticSecretSync.md +30 -0
  107. data/docs/TargetCreateAws.md +4 -0
  108. data/docs/TargetItemVersion.md +4 -0
  109. data/docs/TargetUpdateAws.md +4 -0
  110. data/docs/UpdateAWSTarget.md +4 -0
  111. data/docs/UpdateAccountSettings.md +8 -0
  112. data/docs/UpdatePKICertIssuer.md +3 -1
  113. data/docs/UscCreate.md +2 -0
  114. data/docs/UscSyncInfo.md +26 -0
  115. data/docs/UscUpdate.md +2 -0
  116. data/docs/V2Api.md +130 -4
  117. data/lib/akeyless/api/v2_api.rb +131 -3
  118. data/lib/akeyless/models/account_general_settings.rb +28 -1
  119. data/lib/akeyless/models/aws_gateway_cloud_identity_external_id_opt.rb +232 -0
  120. data/lib/akeyless/models/aws_target_details.rb +10 -1
  121. data/lib/akeyless/models/azure_target_details.rb +10 -1
  122. data/lib/akeyless/models/certificate_expiration_events_settings.rb +226 -0
  123. data/lib/akeyless/models/create_aws_target.rb +21 -1
  124. data/lib/akeyless/models/create_pki_cert_issuer.rb +12 -2
  125. data/lib/akeyless/models/ds_producer_details.rb +64 -1
  126. data/lib/akeyless/models/dynamic_secret_create_artifactory.rb +11 -1
  127. data/lib/akeyless/models/dynamic_secret_create_aws.rb +21 -1
  128. data/lib/akeyless/models/dynamic_secret_create_azure.rb +21 -1
  129. data/lib/akeyless/models/dynamic_secret_create_cassandra.rb +11 -1
  130. data/lib/akeyless/models/dynamic_secret_create_chef.rb +11 -1
  131. data/lib/akeyless/models/dynamic_secret_create_gcp.rb +11 -1
  132. data/lib/akeyless/models/dynamic_secret_create_hana_db.rb +21 -1
  133. data/lib/akeyless/models/dynamic_secret_create_k8s.rb +11 -1
  134. data/lib/akeyless/models/dynamic_secret_create_ldap.rb +11 -1
  135. data/lib/akeyless/models/dynamic_secret_create_mongo_db.rb +21 -1
  136. data/lib/akeyless/models/dynamic_secret_create_ms_sql.rb +21 -1
  137. data/lib/akeyless/models/dynamic_secret_create_my_sql.rb +21 -1
  138. data/lib/akeyless/models/dynamic_secret_create_oracle_db.rb +11 -1
  139. data/lib/akeyless/models/dynamic_secret_create_postgre_sql.rb +21 -1
  140. data/lib/akeyless/models/dynamic_secret_create_rdp.rb +11 -1
  141. data/lib/akeyless/models/dynamic_secret_create_redis.rb +11 -1
  142. data/lib/akeyless/models/dynamic_secret_create_redshift.rb +11 -1
  143. data/lib/akeyless/models/dynamic_secret_create_snowflake.rb +32 -1
  144. data/lib/akeyless/models/dynamic_secret_update_artifactory.rb +11 -1
  145. data/lib/akeyless/models/dynamic_secret_update_aws.rb +21 -1
  146. data/lib/akeyless/models/dynamic_secret_update_azure.rb +21 -1
  147. data/lib/akeyless/models/dynamic_secret_update_cassandra.rb +11 -1
  148. data/lib/akeyless/models/dynamic_secret_update_chef.rb +11 -1
  149. data/lib/akeyless/models/dynamic_secret_update_gcp.rb +11 -1
  150. data/lib/akeyless/models/dynamic_secret_update_hana_db.rb +21 -1
  151. data/lib/akeyless/models/dynamic_secret_update_k8s.rb +11 -1
  152. data/lib/akeyless/models/dynamic_secret_update_ldap.rb +11 -1
  153. data/lib/akeyless/models/dynamic_secret_update_mongo_db.rb +21 -1
  154. data/lib/akeyless/models/dynamic_secret_update_ms_sql.rb +21 -1
  155. data/lib/akeyless/models/dynamic_secret_update_my_sql.rb +21 -1
  156. data/lib/akeyless/models/dynamic_secret_update_oracle_db.rb +11 -1
  157. data/lib/akeyless/models/dynamic_secret_update_postgre_sql.rb +21 -1
  158. data/lib/akeyless/models/dynamic_secret_update_rdp.rb +11 -1
  159. data/lib/akeyless/models/dynamic_secret_update_redis.rb +11 -1
  160. data/lib/akeyless/models/dynamic_secret_update_redshift.rb +11 -1
  161. data/lib/akeyless/models/dynamic_secret_update_snowflake.rb +32 -1
  162. data/lib/akeyless/models/gateway_create_producer_artifactory.rb +11 -1
  163. data/lib/akeyless/models/gateway_create_producer_aws.rb +21 -1
  164. data/lib/akeyless/models/gateway_create_producer_azure.rb +21 -1
  165. data/lib/akeyless/models/gateway_create_producer_cassandra.rb +11 -1
  166. data/lib/akeyless/models/gateway_create_producer_chef.rb +11 -1
  167. data/lib/akeyless/models/gateway_create_producer_gcp.rb +11 -1
  168. data/lib/akeyless/models/gateway_create_producer_hana_db.rb +21 -1
  169. data/lib/akeyless/models/gateway_create_producer_ldap.rb +11 -1
  170. data/lib/akeyless/models/gateway_create_producer_mongo.rb +21 -1
  171. data/lib/akeyless/models/gateway_create_producer_mssql.rb +21 -1
  172. data/lib/akeyless/models/gateway_create_producer_my_sql.rb +21 -1
  173. data/lib/akeyless/models/gateway_create_producer_native_k8_s.rb +11 -1
  174. data/lib/akeyless/models/gateway_create_producer_oracle_db.rb +11 -1
  175. data/lib/akeyless/models/gateway_create_producer_postgre_sql.rb +21 -1
  176. data/lib/akeyless/models/gateway_create_producer_rdp.rb +11 -1
  177. data/lib/akeyless/models/gateway_create_producer_redis.rb +11 -1
  178. data/lib/akeyless/models/gateway_create_producer_redshift.rb +11 -1
  179. data/lib/akeyless/models/gateway_create_producer_snowflake.rb +32 -1
  180. data/lib/akeyless/models/gateway_details_for_item_reply_obj.rb +10 -1
  181. data/lib/akeyless/models/gateway_update_producer_artifactory.rb +11 -1
  182. data/lib/akeyless/models/gateway_update_producer_aws.rb +21 -1
  183. data/lib/akeyless/models/gateway_update_producer_azure.rb +21 -1
  184. data/lib/akeyless/models/gateway_update_producer_cassandra.rb +11 -1
  185. data/lib/akeyless/models/gateway_update_producer_chef.rb +11 -1
  186. data/lib/akeyless/models/gateway_update_producer_gcp.rb +11 -1
  187. data/lib/akeyless/models/gateway_update_producer_hana_db.rb +21 -1
  188. data/lib/akeyless/models/gateway_update_producer_ldap.rb +11 -1
  189. data/lib/akeyless/models/gateway_update_producer_mongo.rb +21 -1
  190. data/lib/akeyless/models/gateway_update_producer_mssql.rb +21 -1
  191. data/lib/akeyless/models/gateway_update_producer_my_sql.rb +21 -1
  192. data/lib/akeyless/models/gateway_update_producer_native_k8_s.rb +11 -1
  193. data/lib/akeyless/models/gateway_update_producer_oracle_db.rb +11 -1
  194. data/lib/akeyless/models/gateway_update_producer_postgre_sql.rb +21 -1
  195. data/lib/akeyless/models/gateway_update_producer_rdp.rb +11 -1
  196. data/lib/akeyless/models/gateway_update_producer_redis.rb +11 -1
  197. data/lib/akeyless/models/gateway_update_producer_redshift.rb +11 -1
  198. data/lib/akeyless/models/gateway_update_producer_snowflake.rb +32 -1
  199. data/lib/akeyless/models/gcp_target_details.rb +10 -1
  200. data/lib/akeyless/models/item_usc_sync_association.rb +1 -1
  201. data/lib/akeyless/models/item_version.rb +19 -1
  202. data/lib/akeyless/models/list_items_in_path_output.rb +10 -1
  203. data/lib/akeyless/models/list_items_output.rb +10 -1
  204. data/lib/akeyless/models/pki_certificate_issue_details.rb +10 -1
  205. data/lib/akeyless/models/rotated_secret_create_aws.rb +22 -2
  206. data/lib/akeyless/models/rotated_secret_create_azure.rb +63 -1
  207. data/lib/akeyless/models/rotated_secret_create_custom.rb +54 -4
  208. data/lib/akeyless/models/rotated_secret_create_gcp.rb +31 -1
  209. data/lib/akeyless/models/rotated_secret_create_snowflake.rb +23 -3
  210. data/lib/akeyless/models/rotated_secret_delete_sync_output.rb +223 -0
  211. data/lib/akeyless/models/rotated_secret_details_info.rb +37 -1
  212. data/lib/akeyless/models/rotated_secret_sync.rb +11 -1
  213. data/lib/akeyless/models/rotated_secret_update_aws.rb +22 -2
  214. data/lib/akeyless/models/rotated_secret_update_azure.rb +63 -1
  215. data/lib/akeyless/models/rotated_secret_update_custom.rb +54 -4
  216. data/lib/akeyless/models/rotated_secret_update_gcp.rb +31 -1
  217. data/lib/akeyless/models/rotated_secret_update_snowflake.rb +22 -2
  218. data/lib/akeyless/models/secret_sync_output.rb +232 -0
  219. data/lib/akeyless/models/static_secret_delete_sync.rb +271 -0
  220. data/lib/akeyless/models/static_secret_delete_sync_output.rb +223 -0
  221. data/lib/akeyless/models/static_secret_sync.rb +284 -0
  222. data/lib/akeyless/models/target_create_aws.rb +21 -1
  223. data/lib/akeyless/models/target_item_version.rb +19 -1
  224. data/lib/akeyless/models/target_update_aws.rb +21 -1
  225. data/lib/akeyless/models/update_account_settings.rb +43 -1
  226. data/lib/akeyless/models/update_aws_target.rb +21 -1
  227. data/lib/akeyless/models/update_pki_cert_issuer.rb +12 -2
  228. data/lib/akeyless/models/usc_create.rb +11 -1
  229. data/lib/akeyless/models/usc_sync_info.rb +250 -0
  230. data/lib/akeyless/models/usc_update.rb +11 -1
  231. data/lib/akeyless/version.rb +1 -1
  232. data/lib/akeyless.rb +8 -1
  233. data/spec/models/aws_gateway_cloud_identity_external_id_opt_spec.rb +48 -0
  234. data/spec/models/certificate_expiration_events_settings_spec.rb +42 -0
  235. data/spec/models/rotated_secret_delete_sync_output_spec.rb +42 -0
  236. data/spec/models/secret_sync_output_spec.rb +48 -0
  237. data/spec/models/static_secret_delete_sync_output_spec.rb +42 -0
  238. data/spec/models/static_secret_delete_sync_spec.rb +60 -0
  239. data/spec/models/static_secret_sync_spec.rb +72 -0
  240. data/spec/models/usc_sync_info_spec.rb +60 -0
  241. metadata +1089 -1057
@@ -42,10 +42,16 @@ module Akeyless
42
42
  # The length of the password to be generated
43
43
  attr_accessor :password_length
44
44
 
45
+ # RSA Private key (base64 encoded) to rotate (relevant only for rotator-type=key)
46
+ attr_accessor :private_key
47
+
48
+ # The path to the file containing the private key (relevant only for rotator-type=key)
49
+ attr_accessor :private_key_file_name
50
+
45
51
  # rotated-username password (relevant only for rotator-type=password)
46
52
  attr_accessor :rotated_password
47
53
 
48
- # username to be rotated, if selected use-self-creds at rotator-creds-type, this username will try to rotate it's own password, if use-target-creds is selected, target credentials will be use to rotate the rotated-password (relevant only for rotator-type=password)
54
+ # username to be rotated, if selected use-self-creds at rotator-creds-type, this username will try to rotate it's own password, if use-target-creds is selected, target credentials will be use to rotate the rotated-password (relevant only for rotator-type=password or rotator-type=key)
49
55
  attr_accessor :rotated_username
50
56
 
51
57
  # How many days before the rotation of the item would you like to be notified
@@ -57,7 +63,7 @@ module Akeyless
57
63
  # The number of days to wait between every automatic key rotation (1-365)
58
64
  attr_accessor :rotation_interval
59
65
 
60
- # The rotator type. options: [target/password]
66
+ # The rotator type. options: [target/password/key]
61
67
  attr_accessor :rotator_type
62
68
 
63
69
  # Add tags attached to this object
@@ -84,6 +90,8 @@ module Akeyless
84
90
  :'max_versions' => :'max-versions',
85
91
  :'name' => :'name',
86
92
  :'password_length' => :'password-length',
93
+ :'private_key' => :'private-key',
94
+ :'private_key_file_name' => :'private-key-file-name',
87
95
  :'rotated_password' => :'rotated-password',
88
96
  :'rotated_username' => :'rotated-username',
89
97
  :'rotation_event_in' => :'rotation-event-in',
@@ -114,6 +122,8 @@ module Akeyless
114
122
  :'max_versions' => :'String',
115
123
  :'name' => :'String',
116
124
  :'password_length' => :'String',
125
+ :'private_key' => :'String',
126
+ :'private_key_file_name' => :'String',
117
127
  :'rotated_password' => :'String',
118
128
  :'rotated_username' => :'String',
119
129
  :'rotation_event_in' => :'Array<String>',
@@ -190,6 +200,14 @@ module Akeyless
190
200
  self.password_length = attributes[:'password_length']
191
201
  end
192
202
 
203
+ if attributes.key?(:'private_key')
204
+ self.private_key = attributes[:'private_key']
205
+ end
206
+
207
+ if attributes.key?(:'private_key_file_name')
208
+ self.private_key_file_name = attributes[:'private_key_file_name']
209
+ end
210
+
193
211
  if attributes.key?(:'rotated_password')
194
212
  self.rotated_password = attributes[:'rotated_password']
195
213
  end
@@ -283,6 +301,8 @@ module Akeyless
283
301
  max_versions == o.max_versions &&
284
302
  name == o.name &&
285
303
  password_length == o.password_length &&
304
+ private_key == o.private_key &&
305
+ private_key_file_name == o.private_key_file_name &&
286
306
  rotated_password == o.rotated_password &&
287
307
  rotated_username == o.rotated_username &&
288
308
  rotation_event_in == o.rotation_event_in &&
@@ -304,7 +324,7 @@ module Akeyless
304
324
  # Calculates hash code according to all attributes.
305
325
  # @return [Integer] Hash code
306
326
  def hash
307
- [authentication_credentials, auto_rotate, delete_protection, description, json, key, max_versions, name, password_length, rotated_password, rotated_username, rotation_event_in, rotation_hour, rotation_interval, rotator_type, tags, target_name, token, uid_token].hash
327
+ [authentication_credentials, auto_rotate, delete_protection, description, json, key, max_versions, name, password_length, private_key, private_key_file_name, rotated_password, rotated_username, rotation_event_in, rotation_hour, rotation_interval, rotator_type, tags, target_name, token, uid_token].hash
308
328
  end
309
329
 
310
330
  # 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 RotatedSecretDeleteSyncOutput
18
+ attr_accessor :secret_name
19
+
20
+ attr_accessor :usc_name
21
+
22
+ # Attribute mapping from ruby-style variable name to JSON key.
23
+ def self.attribute_map
24
+ {
25
+ :'secret_name' => :'secret-name',
26
+ :'usc_name' => :'usc-name'
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
+ :'secret_name' => :'String',
39
+ :'usc_name' => :'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::RotatedSecretDeleteSyncOutput` 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::RotatedSecretDeleteSyncOutput`. 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?(:'secret_name')
65
+ self.secret_name = attributes[:'secret_name']
66
+ end
67
+
68
+ if attributes.key?(:'usc_name')
69
+ self.usc_name = attributes[:'usc_name']
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
+ secret_name == o.secret_name &&
94
+ usc_name == o.usc_name
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
+ [secret_name, usc_name].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
@@ -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