akeyless 4.2.3 → 4.2.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 (248) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +43 -2
  3. data/docs/AccountGeneralSettings.md +2 -0
  4. data/docs/AwsStorage.md +28 -0
  5. data/docs/AzureStorage.md +28 -0
  6. data/docs/BastionConfigReplyObj.md +28 -0
  7. data/docs/BastionGlobalConf.md +24 -0
  8. data/docs/Configure.md +8 -0
  9. data/docs/Connect.md +2 -2
  10. data/docs/CreateClassicKey.md +8 -0
  11. data/docs/CreateDFCKey.md +8 -0
  12. data/docs/DynamicSecretUpdateArtifactory.md +1 -1
  13. data/docs/DynamicSecretUpdateAws.md +1 -1
  14. data/docs/DynamicSecretUpdateAzure.md +1 -1
  15. data/docs/DynamicSecretUpdateCassandra.md +1 -1
  16. data/docs/DynamicSecretUpdateChef.md +1 -1
  17. data/docs/DynamicSecretUpdateCustom.md +1 -1
  18. data/docs/DynamicSecretUpdateDockerhub.md +1 -1
  19. data/docs/DynamicSecretUpdateEks.md +1 -1
  20. data/docs/DynamicSecretUpdateGcp.md +1 -1
  21. data/docs/DynamicSecretUpdateGithub.md +1 -1
  22. data/docs/DynamicSecretUpdateGitlab.md +1 -1
  23. data/docs/DynamicSecretUpdateGke.md +1 -1
  24. data/docs/DynamicSecretUpdateGoogleWorkspace.md +1 -1
  25. data/docs/DynamicSecretUpdateHanaDb.md +1 -1
  26. data/docs/DynamicSecretUpdateK8s.md +1 -1
  27. data/docs/DynamicSecretUpdateLdap.md +1 -1
  28. data/docs/DynamicSecretUpdateMongoDb.md +1 -1
  29. data/docs/DynamicSecretUpdateMsSql.md +1 -1
  30. data/docs/DynamicSecretUpdateMySql.md +1 -1
  31. data/docs/DynamicSecretUpdateOracleDb.md +1 -1
  32. data/docs/DynamicSecretUpdatePing.md +1 -1
  33. data/docs/DynamicSecretUpdateVenafi.md +1 -1
  34. data/docs/EmailPassAccessRules.md +3 -1
  35. data/docs/EventForwarderCreateEmail.md +2 -2
  36. data/docs/EventForwarderCreateServiceNow.md +1 -1
  37. data/docs/EventForwarderCreateSlack.md +1 -1
  38. data/docs/EventForwarderCreateWebhook.md +1 -1
  39. data/docs/EventForwarderUpdateEmail.md +2 -2
  40. data/docs/EventForwarderUpdateServiceNow.md +1 -1
  41. data/docs/EventForwarderUpdateSlack.md +1 -1
  42. data/docs/EventForwarderUpdateWebhook.md +1 -1
  43. data/docs/GatewayGetRemoteAccess.md +22 -0
  44. data/docs/GatewayUpdateItem.md +2 -0
  45. data/docs/GatewayUpdateRemoteAccess.md +36 -0
  46. data/docs/GatewayUpdateRemoteAccessRdpRecordings.md +46 -0
  47. data/docs/GwUpdateRemoteAccessSessionLogsAwsS3.md +42 -0
  48. data/docs/GwUpdateRemoteAccessSessionLogsAzureAnalytics.md +32 -0
  49. data/docs/GwUpdateRemoteAccessSessionLogsDatadog.md +38 -0
  50. data/docs/GwUpdateRemoteAccessSessionLogsElasticsearch.md +48 -0
  51. data/docs/GwUpdateRemoteAccessSessionLogsGoogleChronicle.md +36 -0
  52. data/docs/GwUpdateRemoteAccessSessionLogsLogstash.md +36 -0
  53. data/docs/GwUpdateRemoteAccessSessionLogsLogzIo.md +32 -0
  54. data/docs/GwUpdateRemoteAccessSessionLogsSplunk.md +42 -0
  55. data/docs/GwUpdateRemoteAccessSessionLogsStdout.md +28 -0
  56. data/docs/GwUpdateRemoteAccessSessionLogsSumologic.md +34 -0
  57. data/docs/GwUpdateRemoteAccessSessionLogsSyslog.md +40 -0
  58. data/docs/ItemGeneralInfo.md +4 -0
  59. data/docs/NextAutoRotationEvent.md +18 -0
  60. data/docs/PasswordExpirationInfo.md +24 -0
  61. data/docs/ResetAccessKey.md +24 -0
  62. data/docs/ResetAuthMethodAccessKeyOutput.md +18 -0
  63. data/docs/RollbackSecret.md +2 -0
  64. data/docs/RotatedSecretCreateAws.md +2 -0
  65. data/docs/RotatedSecretCreateAzure.md +2 -0
  66. data/docs/RotatedSecretCreateCassandra.md +2 -0
  67. data/docs/RotatedSecretCreateCustom.md +2 -0
  68. data/docs/RotatedSecretCreateDockerhub.md +2 -0
  69. data/docs/RotatedSecretCreateGcp.md +2 -0
  70. data/docs/RotatedSecretCreateHanadb.md +2 -0
  71. data/docs/RotatedSecretCreateLdap.md +2 -0
  72. data/docs/RotatedSecretCreateMongodb.md +2 -0
  73. data/docs/RotatedSecretCreateMssql.md +2 -0
  74. data/docs/RotatedSecretCreateMysql.md +2 -0
  75. data/docs/RotatedSecretCreateOracledb.md +2 -0
  76. data/docs/RotatedSecretCreatePostgresql.md +2 -0
  77. data/docs/RotatedSecretCreateRedis.md +2 -0
  78. data/docs/RotatedSecretCreateRedshift.md +2 -0
  79. data/docs/RotatedSecretCreateSnowflake.md +2 -0
  80. data/docs/RotatedSecretCreateSsh.md +2 -0
  81. data/docs/RotatedSecretCreateWindows.md +2 -0
  82. data/docs/RotatedSecretUpdateAws.md +2 -0
  83. data/docs/RotatedSecretUpdateAzure.md +2 -0
  84. data/docs/RotatedSecretUpdateCassandra.md +2 -0
  85. data/docs/RotatedSecretUpdateCustom.md +2 -0
  86. data/docs/RotatedSecretUpdateDockerhub.md +2 -0
  87. data/docs/RotatedSecretUpdateGcp.md +2 -0
  88. data/docs/RotatedSecretUpdateHanadb.md +2 -0
  89. data/docs/RotatedSecretUpdateLdap.md +2 -0
  90. data/docs/RotatedSecretUpdateMongodb.md +2 -0
  91. data/docs/RotatedSecretUpdateMssql.md +2 -0
  92. data/docs/RotatedSecretUpdateMysql.md +2 -0
  93. data/docs/RotatedSecretUpdateOracledb.md +2 -0
  94. data/docs/RotatedSecretUpdatePostgresql.md +2 -0
  95. data/docs/RotatedSecretUpdateRedis.md +2 -0
  96. data/docs/RotatedSecretUpdateRedshift.md +2 -0
  97. data/docs/RotatedSecretUpdateSnowflake.md +2 -0
  98. data/docs/RotatedSecretUpdateSsh.md +2 -0
  99. data/docs/RotatedSecretUpdateWindows.md +2 -0
  100. data/docs/SshBastionConf.md +24 -0
  101. data/docs/SshBastionSessionTermination.md +26 -0
  102. data/docs/UpdateAccountSettings.md +6 -0
  103. data/docs/UpdateItem.md +2 -0
  104. data/docs/UpdateRotationSettings.md +2 -0
  105. data/docs/UpdateTarget.md +1 -1
  106. data/docs/UploadRSA.md +2 -0
  107. data/docs/V2Api.md +880 -1
  108. data/docs/WebBastionConf.md +20 -0
  109. data/docs/WebBastionGuacamole.md +18 -0
  110. data/docs/WebBastionRdpRecord.md +22 -0
  111. data/lib/akeyless/api/v2_api.rb +886 -1
  112. data/lib/akeyless/models/account_general_settings.rb +10 -1
  113. data/lib/akeyless/models/aws_storage.rb +260 -0
  114. data/lib/akeyless/models/azure_storage.rb +260 -0
  115. data/lib/akeyless/models/bastion_config_reply_obj.rb +259 -0
  116. data/lib/akeyless/models/bastion_global_conf.rb +243 -0
  117. data/lib/akeyless/models/configure.rb +41 -1
  118. data/lib/akeyless/models/connect.rb +11 -11
  119. data/lib/akeyless/models/create_classic_key.rb +45 -1
  120. data/lib/akeyless/models/create_dfc_key.rb +45 -1
  121. data/lib/akeyless/models/dynamic_secret_update_artifactory.rb +1 -1
  122. data/lib/akeyless/models/dynamic_secret_update_aws.rb +1 -1
  123. data/lib/akeyless/models/dynamic_secret_update_azure.rb +1 -1
  124. data/lib/akeyless/models/dynamic_secret_update_cassandra.rb +1 -1
  125. data/lib/akeyless/models/dynamic_secret_update_chef.rb +1 -1
  126. data/lib/akeyless/models/dynamic_secret_update_custom.rb +1 -1
  127. data/lib/akeyless/models/dynamic_secret_update_dockerhub.rb +1 -1
  128. data/lib/akeyless/models/dynamic_secret_update_eks.rb +1 -1
  129. data/lib/akeyless/models/dynamic_secret_update_gcp.rb +1 -1
  130. data/lib/akeyless/models/dynamic_secret_update_github.rb +1 -1
  131. data/lib/akeyless/models/dynamic_secret_update_gitlab.rb +1 -1
  132. data/lib/akeyless/models/dynamic_secret_update_gke.rb +1 -1
  133. data/lib/akeyless/models/dynamic_secret_update_google_workspace.rb +1 -1
  134. data/lib/akeyless/models/dynamic_secret_update_hana_db.rb +1 -1
  135. data/lib/akeyless/models/dynamic_secret_update_k8s.rb +1 -1
  136. data/lib/akeyless/models/dynamic_secret_update_ldap.rb +1 -1
  137. data/lib/akeyless/models/dynamic_secret_update_mongo_db.rb +1 -1
  138. data/lib/akeyless/models/dynamic_secret_update_ms_sql.rb +1 -1
  139. data/lib/akeyless/models/dynamic_secret_update_my_sql.rb +1 -1
  140. data/lib/akeyless/models/dynamic_secret_update_oracle_db.rb +1 -1
  141. data/lib/akeyless/models/dynamic_secret_update_ping.rb +1 -1
  142. data/lib/akeyless/models/dynamic_secret_update_venafi.rb +1 -1
  143. data/lib/akeyless/models/email_pass_access_rules.rb +14 -4
  144. data/lib/akeyless/models/event_forwarder_create_email.rb +2 -2
  145. data/lib/akeyless/models/event_forwarder_create_service_now.rb +1 -1
  146. data/lib/akeyless/models/event_forwarder_create_slack.rb +1 -1
  147. data/lib/akeyless/models/event_forwarder_create_webhook.rb +1 -1
  148. data/lib/akeyless/models/event_forwarder_update_email.rb +2 -2
  149. data/lib/akeyless/models/event_forwarder_update_service_now.rb +1 -1
  150. data/lib/akeyless/models/event_forwarder_update_slack.rb +1 -1
  151. data/lib/akeyless/models/event_forwarder_update_webhook.rb +1 -1
  152. data/lib/akeyless/models/gateway_get_remote_access.rb +238 -0
  153. data/lib/akeyless/models/gateway_update_item.rb +13 -1
  154. data/lib/akeyless/models/gateway_update_remote_access.rb +318 -0
  155. data/lib/akeyless/models/gateway_update_remote_access_rdp_recordings.rb +358 -0
  156. data/lib/akeyless/models/gw_update_remote_access_session_logs_aws_s3.rb +346 -0
  157. data/lib/akeyless/models/gw_update_remote_access_session_logs_azure_analytics.rb +294 -0
  158. data/lib/akeyless/models/gw_update_remote_access_session_logs_datadog.rb +330 -0
  159. data/lib/akeyless/models/gw_update_remote_access_session_logs_elasticsearch.rb +376 -0
  160. data/lib/akeyless/models/gw_update_remote_access_session_logs_google_chronicle.rb +314 -0
  161. data/lib/akeyless/models/gw_update_remote_access_session_logs_logstash.rb +316 -0
  162. data/lib/akeyless/models/gw_update_remote_access_session_logs_logz_io.rb +294 -0
  163. data/lib/akeyless/models/gw_update_remote_access_session_logs_splunk.rb +350 -0
  164. data/lib/akeyless/models/gw_update_remote_access_session_logs_stdout.rb +274 -0
  165. data/lib/akeyless/models/gw_update_remote_access_session_logs_sumologic.rb +308 -0
  166. data/lib/akeyless/models/gw_update_remote_access_session_logs_syslog.rb +342 -0
  167. data/lib/akeyless/models/item_general_info.rb +23 -1
  168. data/lib/akeyless/models/next_auto_rotation_event.rb +214 -0
  169. data/lib/akeyless/models/password_expiration_info.rb +242 -0
  170. data/lib/akeyless/models/reset_access_key.rb +255 -0
  171. data/lib/akeyless/models/reset_auth_method_access_key_output.rb +215 -0
  172. data/lib/akeyless/models/rollback_secret.rb +13 -1
  173. data/lib/akeyless/models/rotated_secret_create_aws.rb +13 -1
  174. data/lib/akeyless/models/rotated_secret_create_azure.rb +13 -1
  175. data/lib/akeyless/models/rotated_secret_create_cassandra.rb +13 -1
  176. data/lib/akeyless/models/rotated_secret_create_custom.rb +13 -1
  177. data/lib/akeyless/models/rotated_secret_create_dockerhub.rb +13 -1
  178. data/lib/akeyless/models/rotated_secret_create_gcp.rb +13 -1
  179. data/lib/akeyless/models/rotated_secret_create_hanadb.rb +13 -1
  180. data/lib/akeyless/models/rotated_secret_create_ldap.rb +13 -1
  181. data/lib/akeyless/models/rotated_secret_create_mongodb.rb +13 -1
  182. data/lib/akeyless/models/rotated_secret_create_mssql.rb +13 -1
  183. data/lib/akeyless/models/rotated_secret_create_mysql.rb +13 -1
  184. data/lib/akeyless/models/rotated_secret_create_oracledb.rb +13 -1
  185. data/lib/akeyless/models/rotated_secret_create_postgresql.rb +13 -1
  186. data/lib/akeyless/models/rotated_secret_create_redis.rb +13 -1
  187. data/lib/akeyless/models/rotated_secret_create_redshift.rb +13 -1
  188. data/lib/akeyless/models/rotated_secret_create_snowflake.rb +13 -1
  189. data/lib/akeyless/models/rotated_secret_create_ssh.rb +13 -1
  190. data/lib/akeyless/models/rotated_secret_create_windows.rb +13 -1
  191. data/lib/akeyless/models/rotated_secret_update_aws.rb +13 -1
  192. data/lib/akeyless/models/rotated_secret_update_azure.rb +13 -1
  193. data/lib/akeyless/models/rotated_secret_update_cassandra.rb +13 -1
  194. data/lib/akeyless/models/rotated_secret_update_custom.rb +13 -1
  195. data/lib/akeyless/models/rotated_secret_update_dockerhub.rb +13 -1
  196. data/lib/akeyless/models/rotated_secret_update_gcp.rb +13 -1
  197. data/lib/akeyless/models/rotated_secret_update_hanadb.rb +13 -1
  198. data/lib/akeyless/models/rotated_secret_update_ldap.rb +13 -1
  199. data/lib/akeyless/models/rotated_secret_update_mongodb.rb +13 -1
  200. data/lib/akeyless/models/rotated_secret_update_mssql.rb +13 -1
  201. data/lib/akeyless/models/rotated_secret_update_mysql.rb +13 -1
  202. data/lib/akeyless/models/rotated_secret_update_oracledb.rb +13 -1
  203. data/lib/akeyless/models/rotated_secret_update_postgresql.rb +13 -1
  204. data/lib/akeyless/models/rotated_secret_update_redis.rb +13 -1
  205. data/lib/akeyless/models/rotated_secret_update_redshift.rb +13 -1
  206. data/lib/akeyless/models/rotated_secret_update_snowflake.rb +13 -1
  207. data/lib/akeyless/models/rotated_secret_update_ssh.rb +13 -1
  208. data/lib/akeyless/models/rotated_secret_update_windows.rb +13 -1
  209. data/lib/akeyless/models/ssh_bastion_conf.rb +241 -0
  210. data/lib/akeyless/models/ssh_bastion_session_termination.rb +250 -0
  211. data/lib/akeyless/models/update_account_settings.rb +31 -1
  212. data/lib/akeyless/models/update_item.rb +13 -1
  213. data/lib/akeyless/models/update_rotation_settings.rb +13 -1
  214. data/lib/akeyless/models/update_target.rb +1 -1
  215. data/lib/akeyless/models/upload_rsa.rb +13 -1
  216. data/lib/akeyless/models/web_bastion_conf.rb +223 -0
  217. data/lib/akeyless/models/web_bastion_guacamole.rb +214 -0
  218. data/lib/akeyless/models/web_bastion_rdp_record.rb +232 -0
  219. data/lib/akeyless/version.rb +1 -1
  220. data/lib/akeyless.rb +27 -0
  221. data/spec/models/aws_storage_spec.rb +66 -0
  222. data/spec/models/azure_storage_spec.rb +66 -0
  223. data/spec/models/bastion_config_reply_obj_spec.rb +66 -0
  224. data/spec/models/bastion_global_conf_spec.rb +54 -0
  225. data/spec/models/gateway_get_remote_access_spec.rb +48 -0
  226. data/spec/models/gateway_update_remote_access_rdp_recordings_spec.rb +120 -0
  227. data/spec/models/gateway_update_remote_access_spec.rb +90 -0
  228. data/spec/models/gw_update_remote_access_session_logs_aws_s3_spec.rb +108 -0
  229. data/spec/models/gw_update_remote_access_session_logs_azure_analytics_spec.rb +78 -0
  230. data/spec/models/gw_update_remote_access_session_logs_datadog_spec.rb +96 -0
  231. data/spec/models/gw_update_remote_access_session_logs_elasticsearch_spec.rb +126 -0
  232. data/spec/models/gw_update_remote_access_session_logs_google_chronicle_spec.rb +90 -0
  233. data/spec/models/gw_update_remote_access_session_logs_logstash_spec.rb +90 -0
  234. data/spec/models/gw_update_remote_access_session_logs_logz_io_spec.rb +78 -0
  235. data/spec/models/gw_update_remote_access_session_logs_splunk_spec.rb +108 -0
  236. data/spec/models/gw_update_remote_access_session_logs_stdout_spec.rb +66 -0
  237. data/spec/models/gw_update_remote_access_session_logs_sumologic_spec.rb +84 -0
  238. data/spec/models/gw_update_remote_access_session_logs_syslog_spec.rb +102 -0
  239. data/spec/models/next_auto_rotation_event_spec.rb +36 -0
  240. data/spec/models/password_expiration_info_spec.rb +54 -0
  241. data/spec/models/reset_access_key_spec.rb +54 -0
  242. data/spec/models/reset_auth_method_access_key_output_spec.rb +36 -0
  243. data/spec/models/ssh_bastion_conf_spec.rb +54 -0
  244. data/spec/models/ssh_bastion_session_termination_spec.rb +60 -0
  245. data/spec/models/web_bastion_conf_spec.rb +42 -0
  246. data/spec/models/web_bastion_guacamole_spec.rb +36 -0
  247. data/spec/models/web_bastion_rdp_record_spec.rb +48 -0
  248. metadata +1089 -981
@@ -0,0 +1,376 @@
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
+ Generator version: 7.9.0-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Akeyless
17
+ # gwUpdateRemoteAccessSessionLogsElasticsearch is a command that updates session log forwarding config (elasticsearch target)
18
+ class GwUpdateRemoteAccessSessionLogsElasticsearch
19
+ # Elasticsearch api key relevant only for api_key auth-type
20
+ attr_accessor :api_key
21
+
22
+ # Elasticsearch auth type [api_key/password]
23
+ attr_accessor :auth_type
24
+
25
+ # Elasticsearch cloud id relevant only for cloud server-type
26
+ attr_accessor :cloud_id
27
+
28
+ # Enable Log Forwarding [true/false]
29
+ attr_accessor :enable
30
+
31
+ # Enable tls
32
+ attr_accessor :enable_tls
33
+
34
+ # Elasticsearch index
35
+ attr_accessor :index
36
+
37
+ # Set output format to JSON
38
+ attr_accessor :json
39
+
40
+ # Elasticsearch nodes relevant only for nodes server-type
41
+ attr_accessor :nodes
42
+
43
+ # Logs format [text/json]
44
+ attr_accessor :output_format
45
+
46
+ # Elasticsearch password relevant only for password auth-type
47
+ attr_accessor :password
48
+
49
+ # Pull interval in seconds
50
+ attr_accessor :pull_interval
51
+
52
+ # Elasticsearch server type [cloud/nodes]
53
+ attr_accessor :server_type
54
+
55
+ # Elasticsearch tls certificate
56
+ attr_accessor :tls_certificate
57
+
58
+ # Authentication token (see `/auth` and `/configure`)
59
+ attr_accessor :token
60
+
61
+ # The universal identity token, Required only for universal_identity authentication
62
+ attr_accessor :uid_token
63
+
64
+ # Elasticsearch user name relevant only for password auth-type
65
+ attr_accessor :user_name
66
+
67
+ # Attribute mapping from ruby-style variable name to JSON key.
68
+ def self.attribute_map
69
+ {
70
+ :'api_key' => :'api-key',
71
+ :'auth_type' => :'auth-type',
72
+ :'cloud_id' => :'cloud-id',
73
+ :'enable' => :'enable',
74
+ :'enable_tls' => :'enable-tls',
75
+ :'index' => :'index',
76
+ :'json' => :'json',
77
+ :'nodes' => :'nodes',
78
+ :'output_format' => :'output-format',
79
+ :'password' => :'password',
80
+ :'pull_interval' => :'pull-interval',
81
+ :'server_type' => :'server-type',
82
+ :'tls_certificate' => :'tls-certificate',
83
+ :'token' => :'token',
84
+ :'uid_token' => :'uid-token',
85
+ :'user_name' => :'user-name'
86
+ }
87
+ end
88
+
89
+ # Returns all the JSON keys this model knows about
90
+ def self.acceptable_attributes
91
+ attribute_map.values
92
+ end
93
+
94
+ # Attribute type mapping.
95
+ def self.openapi_types
96
+ {
97
+ :'api_key' => :'String',
98
+ :'auth_type' => :'String',
99
+ :'cloud_id' => :'String',
100
+ :'enable' => :'String',
101
+ :'enable_tls' => :'Boolean',
102
+ :'index' => :'String',
103
+ :'json' => :'Boolean',
104
+ :'nodes' => :'String',
105
+ :'output_format' => :'String',
106
+ :'password' => :'String',
107
+ :'pull_interval' => :'String',
108
+ :'server_type' => :'String',
109
+ :'tls_certificate' => :'String',
110
+ :'token' => :'String',
111
+ :'uid_token' => :'String',
112
+ :'user_name' => :'String'
113
+ }
114
+ end
115
+
116
+ # List of attributes with nullable: true
117
+ def self.openapi_nullable
118
+ Set.new([
119
+ ])
120
+ end
121
+
122
+ # Initializes the object
123
+ # @param [Hash] attributes Model attributes in the form of hash
124
+ def initialize(attributes = {})
125
+ if (!attributes.is_a?(Hash))
126
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Akeyless::GwUpdateRemoteAccessSessionLogsElasticsearch` initialize method"
127
+ end
128
+
129
+ # check to see if the attribute exists and convert string to symbol for hash key
130
+ attributes = attributes.each_with_object({}) { |(k, v), h|
131
+ if (!self.class.attribute_map.key?(k.to_sym))
132
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Akeyless::GwUpdateRemoteAccessSessionLogsElasticsearch`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
133
+ end
134
+ h[k.to_sym] = v
135
+ }
136
+
137
+ if attributes.key?(:'api_key')
138
+ self.api_key = attributes[:'api_key']
139
+ end
140
+
141
+ if attributes.key?(:'auth_type')
142
+ self.auth_type = attributes[:'auth_type']
143
+ end
144
+
145
+ if attributes.key?(:'cloud_id')
146
+ self.cloud_id = attributes[:'cloud_id']
147
+ end
148
+
149
+ if attributes.key?(:'enable')
150
+ self.enable = attributes[:'enable']
151
+ else
152
+ self.enable = 'true'
153
+ end
154
+
155
+ if attributes.key?(:'enable_tls')
156
+ self.enable_tls = attributes[:'enable_tls']
157
+ end
158
+
159
+ if attributes.key?(:'index')
160
+ self.index = attributes[:'index']
161
+ end
162
+
163
+ if attributes.key?(:'json')
164
+ self.json = attributes[:'json']
165
+ else
166
+ self.json = false
167
+ end
168
+
169
+ if attributes.key?(:'nodes')
170
+ self.nodes = attributes[:'nodes']
171
+ end
172
+
173
+ if attributes.key?(:'output_format')
174
+ self.output_format = attributes[:'output_format']
175
+ else
176
+ self.output_format = 'text'
177
+ end
178
+
179
+ if attributes.key?(:'password')
180
+ self.password = attributes[:'password']
181
+ end
182
+
183
+ if attributes.key?(:'pull_interval')
184
+ self.pull_interval = attributes[:'pull_interval']
185
+ else
186
+ self.pull_interval = '10'
187
+ end
188
+
189
+ if attributes.key?(:'server_type')
190
+ self.server_type = attributes[:'server_type']
191
+ end
192
+
193
+ if attributes.key?(:'tls_certificate')
194
+ self.tls_certificate = attributes[:'tls_certificate']
195
+ else
196
+ self.tls_certificate = 'use-existing'
197
+ end
198
+
199
+ if attributes.key?(:'token')
200
+ self.token = attributes[:'token']
201
+ end
202
+
203
+ if attributes.key?(:'uid_token')
204
+ self.uid_token = attributes[:'uid_token']
205
+ end
206
+
207
+ if attributes.key?(:'user_name')
208
+ self.user_name = attributes[:'user_name']
209
+ end
210
+ end
211
+
212
+ # Show invalid properties with the reasons. Usually used together with valid?
213
+ # @return Array for valid properties with the reasons
214
+ def list_invalid_properties
215
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
216
+ invalid_properties = Array.new
217
+ invalid_properties
218
+ end
219
+
220
+ # Check to see if the all the properties in the model are valid
221
+ # @return true if the model is valid
222
+ def valid?
223
+ warn '[DEPRECATED] the `valid?` method is obsolete'
224
+ true
225
+ end
226
+
227
+ # Checks equality by comparing each attribute.
228
+ # @param [Object] Object to be compared
229
+ def ==(o)
230
+ return true if self.equal?(o)
231
+ self.class == o.class &&
232
+ api_key == o.api_key &&
233
+ auth_type == o.auth_type &&
234
+ cloud_id == o.cloud_id &&
235
+ enable == o.enable &&
236
+ enable_tls == o.enable_tls &&
237
+ index == o.index &&
238
+ json == o.json &&
239
+ nodes == o.nodes &&
240
+ output_format == o.output_format &&
241
+ password == o.password &&
242
+ pull_interval == o.pull_interval &&
243
+ server_type == o.server_type &&
244
+ tls_certificate == o.tls_certificate &&
245
+ token == o.token &&
246
+ uid_token == o.uid_token &&
247
+ user_name == o.user_name
248
+ end
249
+
250
+ # @see the `==` method
251
+ # @param [Object] Object to be compared
252
+ def eql?(o)
253
+ self == o
254
+ end
255
+
256
+ # Calculates hash code according to all attributes.
257
+ # @return [Integer] Hash code
258
+ def hash
259
+ [api_key, auth_type, cloud_id, enable, enable_tls, index, json, nodes, output_format, password, pull_interval, server_type, tls_certificate, token, uid_token, user_name].hash
260
+ end
261
+
262
+ # Builds the object from hash
263
+ # @param [Hash] attributes Model attributes in the form of hash
264
+ # @return [Object] Returns the model itself
265
+ def self.build_from_hash(attributes)
266
+ return nil unless attributes.is_a?(Hash)
267
+ attributes = attributes.transform_keys(&:to_sym)
268
+ transformed_hash = {}
269
+ openapi_types.each_pair do |key, type|
270
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
271
+ transformed_hash["#{key}"] = nil
272
+ elsif type =~ /\AArray<(.*)>/i
273
+ # check to ensure the input is an array given that the attribute
274
+ # is documented as an array but the input is not
275
+ if attributes[attribute_map[key]].is_a?(Array)
276
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
277
+ end
278
+ elsif !attributes[attribute_map[key]].nil?
279
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
280
+ end
281
+ end
282
+ new(transformed_hash)
283
+ end
284
+
285
+ # Deserializes the data based on type
286
+ # @param string type Data type
287
+ # @param string value Value to be deserialized
288
+ # @return [Object] Deserialized data
289
+ def self._deserialize(type, value)
290
+ case type.to_sym
291
+ when :Time
292
+ Time.parse(value)
293
+ when :Date
294
+ Date.parse(value)
295
+ when :String
296
+ value.to_s
297
+ when :Integer
298
+ value.to_i
299
+ when :Float
300
+ value.to_f
301
+ when :Boolean
302
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
303
+ true
304
+ else
305
+ false
306
+ end
307
+ when :Object
308
+ # generic object (usually a Hash), return directly
309
+ value
310
+ when /\AArray<(?<inner_type>.+)>\z/
311
+ inner_type = Regexp.last_match[:inner_type]
312
+ value.map { |v| _deserialize(inner_type, v) }
313
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
314
+ k_type = Regexp.last_match[:k_type]
315
+ v_type = Regexp.last_match[:v_type]
316
+ {}.tap do |hash|
317
+ value.each do |k, v|
318
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
319
+ end
320
+ end
321
+ else # model
322
+ # models (e.g. Pet) or oneOf
323
+ klass = Akeyless.const_get(type)
324
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
325
+ end
326
+ end
327
+
328
+ # Returns the string representation of the object
329
+ # @return [String] String presentation of the object
330
+ def to_s
331
+ to_hash.to_s
332
+ end
333
+
334
+ # to_body is an alias to to_hash (backward compatibility)
335
+ # @return [Hash] Returns the object in the form of hash
336
+ def to_body
337
+ to_hash
338
+ end
339
+
340
+ # Returns the object in the form of hash
341
+ # @return [Hash] Returns the object in the form of hash
342
+ def to_hash
343
+ hash = {}
344
+ self.class.attribute_map.each_pair do |attr, param|
345
+ value = self.send(attr)
346
+ if value.nil?
347
+ is_nullable = self.class.openapi_nullable.include?(attr)
348
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
349
+ end
350
+
351
+ hash[param] = _to_hash(value)
352
+ end
353
+ hash
354
+ end
355
+
356
+ # Outputs non-array value in the form of hash
357
+ # For object, use to_hash. Otherwise, just return the value
358
+ # @param [Object] value Any valid value
359
+ # @return [Hash] Returns the value in the form of hash
360
+ def _to_hash(value)
361
+ if value.is_a?(Array)
362
+ value.compact.map { |v| _to_hash(v) }
363
+ elsif value.is_a?(Hash)
364
+ {}.tap do |hash|
365
+ value.each { |k, v| hash[k] = _to_hash(v) }
366
+ end
367
+ elsif value.respond_to? :to_hash
368
+ value.to_hash
369
+ else
370
+ value
371
+ end
372
+ end
373
+
374
+ end
375
+
376
+ end
@@ -0,0 +1,314 @@
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
+ Generator version: 7.9.0-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Akeyless
17
+ # gwUpdateRemoteAccessSessionLogsGoogleChronicle is a command that updates session log forwarding config (google-chronicle target)
18
+ class GwUpdateRemoteAccessSessionLogsGoogleChronicle
19
+ # Google chronicle customer id
20
+ attr_accessor :customer_id
21
+
22
+ # Enable Log Forwarding [true/false]
23
+ attr_accessor :enable
24
+
25
+ # Base64-encoded service account private key text
26
+ attr_accessor :gcp_key
27
+
28
+ # Set output format to JSON
29
+ attr_accessor :json
30
+
31
+ # Google chronicle log type
32
+ attr_accessor :log_type
33
+
34
+ # Logs format [text/json]
35
+ attr_accessor :output_format
36
+
37
+ # Pull interval in seconds
38
+ attr_accessor :pull_interval
39
+
40
+ # Google chronicle region [eu_multi_region/london/us_multi_region/singapore/tel_aviv]
41
+ attr_accessor :region
42
+
43
+ # Authentication token (see `/auth` and `/configure`)
44
+ attr_accessor :token
45
+
46
+ # The universal identity token, Required only for universal_identity authentication
47
+ attr_accessor :uid_token
48
+
49
+ # Attribute mapping from ruby-style variable name to JSON key.
50
+ def self.attribute_map
51
+ {
52
+ :'customer_id' => :'customer-id',
53
+ :'enable' => :'enable',
54
+ :'gcp_key' => :'gcp-key',
55
+ :'json' => :'json',
56
+ :'log_type' => :'log-type',
57
+ :'output_format' => :'output-format',
58
+ :'pull_interval' => :'pull-interval',
59
+ :'region' => :'region',
60
+ :'token' => :'token',
61
+ :'uid_token' => :'uid-token'
62
+ }
63
+ end
64
+
65
+ # Returns all the JSON keys this model knows about
66
+ def self.acceptable_attributes
67
+ attribute_map.values
68
+ end
69
+
70
+ # Attribute type mapping.
71
+ def self.openapi_types
72
+ {
73
+ :'customer_id' => :'String',
74
+ :'enable' => :'String',
75
+ :'gcp_key' => :'String',
76
+ :'json' => :'Boolean',
77
+ :'log_type' => :'String',
78
+ :'output_format' => :'String',
79
+ :'pull_interval' => :'String',
80
+ :'region' => :'String',
81
+ :'token' => :'String',
82
+ :'uid_token' => :'String'
83
+ }
84
+ end
85
+
86
+ # List of attributes with nullable: true
87
+ def self.openapi_nullable
88
+ Set.new([
89
+ ])
90
+ end
91
+
92
+ # Initializes the object
93
+ # @param [Hash] attributes Model attributes in the form of hash
94
+ def initialize(attributes = {})
95
+ if (!attributes.is_a?(Hash))
96
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Akeyless::GwUpdateRemoteAccessSessionLogsGoogleChronicle` initialize method"
97
+ end
98
+
99
+ # check to see if the attribute exists and convert string to symbol for hash key
100
+ attributes = attributes.each_with_object({}) { |(k, v), h|
101
+ if (!self.class.attribute_map.key?(k.to_sym))
102
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Akeyless::GwUpdateRemoteAccessSessionLogsGoogleChronicle`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
103
+ end
104
+ h[k.to_sym] = v
105
+ }
106
+
107
+ if attributes.key?(:'customer_id')
108
+ self.customer_id = attributes[:'customer_id']
109
+ end
110
+
111
+ if attributes.key?(:'enable')
112
+ self.enable = attributes[:'enable']
113
+ else
114
+ self.enable = 'true'
115
+ end
116
+
117
+ if attributes.key?(:'gcp_key')
118
+ self.gcp_key = attributes[:'gcp_key']
119
+ end
120
+
121
+ if attributes.key?(:'json')
122
+ self.json = attributes[:'json']
123
+ else
124
+ self.json = false
125
+ end
126
+
127
+ if attributes.key?(:'log_type')
128
+ self.log_type = attributes[:'log_type']
129
+ end
130
+
131
+ if attributes.key?(:'output_format')
132
+ self.output_format = attributes[:'output_format']
133
+ else
134
+ self.output_format = 'text'
135
+ end
136
+
137
+ if attributes.key?(:'pull_interval')
138
+ self.pull_interval = attributes[:'pull_interval']
139
+ else
140
+ self.pull_interval = '10'
141
+ end
142
+
143
+ if attributes.key?(:'region')
144
+ self.region = attributes[:'region']
145
+ end
146
+
147
+ if attributes.key?(:'token')
148
+ self.token = attributes[:'token']
149
+ end
150
+
151
+ if attributes.key?(:'uid_token')
152
+ self.uid_token = attributes[:'uid_token']
153
+ end
154
+ end
155
+
156
+ # Show invalid properties with the reasons. Usually used together with valid?
157
+ # @return Array for valid properties with the reasons
158
+ def list_invalid_properties
159
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
160
+ invalid_properties = Array.new
161
+ invalid_properties
162
+ end
163
+
164
+ # Check to see if the all the properties in the model are valid
165
+ # @return true if the model is valid
166
+ def valid?
167
+ warn '[DEPRECATED] the `valid?` method is obsolete'
168
+ true
169
+ end
170
+
171
+ # Checks equality by comparing each attribute.
172
+ # @param [Object] Object to be compared
173
+ def ==(o)
174
+ return true if self.equal?(o)
175
+ self.class == o.class &&
176
+ customer_id == o.customer_id &&
177
+ enable == o.enable &&
178
+ gcp_key == o.gcp_key &&
179
+ json == o.json &&
180
+ log_type == o.log_type &&
181
+ output_format == o.output_format &&
182
+ pull_interval == o.pull_interval &&
183
+ region == o.region &&
184
+ token == o.token &&
185
+ uid_token == o.uid_token
186
+ end
187
+
188
+ # @see the `==` method
189
+ # @param [Object] Object to be compared
190
+ def eql?(o)
191
+ self == o
192
+ end
193
+
194
+ # Calculates hash code according to all attributes.
195
+ # @return [Integer] Hash code
196
+ def hash
197
+ [customer_id, enable, gcp_key, json, log_type, output_format, pull_interval, region, token, uid_token].hash
198
+ end
199
+
200
+ # Builds the object from hash
201
+ # @param [Hash] attributes Model attributes in the form of hash
202
+ # @return [Object] Returns the model itself
203
+ def self.build_from_hash(attributes)
204
+ return nil unless attributes.is_a?(Hash)
205
+ attributes = attributes.transform_keys(&:to_sym)
206
+ transformed_hash = {}
207
+ openapi_types.each_pair do |key, type|
208
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
209
+ transformed_hash["#{key}"] = nil
210
+ elsif type =~ /\AArray<(.*)>/i
211
+ # check to ensure the input is an array given that the attribute
212
+ # is documented as an array but the input is not
213
+ if attributes[attribute_map[key]].is_a?(Array)
214
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
215
+ end
216
+ elsif !attributes[attribute_map[key]].nil?
217
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
218
+ end
219
+ end
220
+ new(transformed_hash)
221
+ end
222
+
223
+ # Deserializes the data based on type
224
+ # @param string type Data type
225
+ # @param string value Value to be deserialized
226
+ # @return [Object] Deserialized data
227
+ def self._deserialize(type, value)
228
+ case type.to_sym
229
+ when :Time
230
+ Time.parse(value)
231
+ when :Date
232
+ Date.parse(value)
233
+ when :String
234
+ value.to_s
235
+ when :Integer
236
+ value.to_i
237
+ when :Float
238
+ value.to_f
239
+ when :Boolean
240
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
241
+ true
242
+ else
243
+ false
244
+ end
245
+ when :Object
246
+ # generic object (usually a Hash), return directly
247
+ value
248
+ when /\AArray<(?<inner_type>.+)>\z/
249
+ inner_type = Regexp.last_match[:inner_type]
250
+ value.map { |v| _deserialize(inner_type, v) }
251
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
252
+ k_type = Regexp.last_match[:k_type]
253
+ v_type = Regexp.last_match[:v_type]
254
+ {}.tap do |hash|
255
+ value.each do |k, v|
256
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
257
+ end
258
+ end
259
+ else # model
260
+ # models (e.g. Pet) or oneOf
261
+ klass = Akeyless.const_get(type)
262
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
263
+ end
264
+ end
265
+
266
+ # Returns the string representation of the object
267
+ # @return [String] String presentation of the object
268
+ def to_s
269
+ to_hash.to_s
270
+ end
271
+
272
+ # to_body is an alias to to_hash (backward compatibility)
273
+ # @return [Hash] Returns the object in the form of hash
274
+ def to_body
275
+ to_hash
276
+ end
277
+
278
+ # Returns the object in the form of hash
279
+ # @return [Hash] Returns the object in the form of hash
280
+ def to_hash
281
+ hash = {}
282
+ self.class.attribute_map.each_pair do |attr, param|
283
+ value = self.send(attr)
284
+ if value.nil?
285
+ is_nullable = self.class.openapi_nullable.include?(attr)
286
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
287
+ end
288
+
289
+ hash[param] = _to_hash(value)
290
+ end
291
+ hash
292
+ end
293
+
294
+ # Outputs non-array value in the form of hash
295
+ # For object, use to_hash. Otherwise, just return the value
296
+ # @param [Object] value Any valid value
297
+ # @return [Hash] Returns the value in the form of hash
298
+ def _to_hash(value)
299
+ if value.is_a?(Array)
300
+ value.compact.map { |v| _to_hash(v) }
301
+ elsif value.is_a?(Hash)
302
+ {}.tap do |hash|
303
+ value.each { |k, v| hash[k] = _to_hash(v) }
304
+ end
305
+ elsif value.respond_to? :to_hash
306
+ value.to_hash
307
+ else
308
+ value
309
+ end
310
+ end
311
+
312
+ end
313
+
314
+ end