aws-sdk-securitylake 1.2.0 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -17,113 +17,107 @@ module Aws::SecurityLake
17
17
  # Services action. An implicit denial occurs when there is no applicable
18
18
  # Deny statement and also no applicable Allow statement.
19
19
  #
20
+ # @!attribute [rw] error_code
21
+ # A coded string to provide more information about the access denied
22
+ # exception. You can use the error code to check the exception type.
23
+ # @return [String]
24
+ #
20
25
  # @!attribute [rw] message
21
26
  # @return [String]
22
27
  #
23
28
  # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/AccessDeniedException AWS API Documentation
24
29
  #
25
30
  class AccessDeniedException < Struct.new(
31
+ :error_code,
26
32
  :message)
27
33
  SENSITIVE = []
28
34
  include Aws::Structure
29
35
  end
30
36
 
31
- # Amazon Security Lake cannot find an Amazon Web Services account with
32
- # the accountID that you specified, or the account whose credentials you
33
- # used to make this request isn't a member of an organization.
37
+ # The AWS identity.
34
38
  #
35
- # @!attribute [rw] message
39
+ # @!attribute [rw] external_id
40
+ # The external ID used to estalish trust relationship with the AWS
41
+ # identity.
36
42
  # @return [String]
37
43
  #
38
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/AccountNotFoundException AWS API Documentation
44
+ # @!attribute [rw] principal
45
+ # The AWS identity principal.
46
+ # @return [String]
39
47
  #
40
- class AccountNotFoundException < Struct.new(
41
- :message)
48
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/AwsIdentity AWS API Documentation
49
+ #
50
+ class AwsIdentity < Struct.new(
51
+ :external_id,
52
+ :principal)
42
53
  SENSITIVE = []
43
54
  include Aws::Structure
44
55
  end
45
56
 
46
- # Amazon Security Lake collects logs and events from supported Amazon
47
- # Web Services and custom sources. For the list of supported Amazon Web
48
- # Services, see the [Amazon Security Lake User Guide][1].
49
- #
57
+ # The Security Lake logs source configuration file describes the
58
+ # information needed to generate Security Lake logs.
50
59
  #
60
+ # @!attribute [rw] accounts
61
+ # Specify the Amazon Web Services account information where you want
62
+ # to enable Security Lake.
63
+ # @return [Array<String>]
51
64
  #
52
- # [1]: https://docs.aws.amazon.com/security-lake/latest/userguide/internal-sources.html
53
- #
54
- # @!attribute [rw] account
55
- # The ID of the Security Lake account for which logs are collected.
56
- # @return [String]
65
+ # @!attribute [rw] regions
66
+ # Specify the Regions where you want to enable Security Lake.
67
+ # @return [Array<String>]
57
68
  #
58
- # @!attribute [rw] event_class
59
- # Initializes a new instance of the Event class.
69
+ # @!attribute [rw] source_name
70
+ # The name for a Amazon Web Services source. This must be a Regionally
71
+ # unique value.
60
72
  # @return [String]
61
73
  #
62
- # @!attribute [rw] logs_status
63
- # The log status for the Security Lake account.
64
- # @return [Array<Types::LogsStatus>]
65
- #
66
- # @!attribute [rw] source_type
67
- # The supported Amazon Web Services from which logs and events are
68
- # collected. Amazon Security Lake supports log and event collection
69
- # for natively supported Amazon Web Services.
74
+ # @!attribute [rw] source_version
75
+ # The version for a Amazon Web Services source. This must be a
76
+ # Regionally unique value.
70
77
  # @return [String]
71
78
  #
72
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/AccountSources AWS API Documentation
79
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/AwsLogSourceConfiguration AWS API Documentation
73
80
  #
74
- class AccountSources < Struct.new(
75
- :account,
76
- :event_class,
77
- :logs_status,
78
- :source_type)
81
+ class AwsLogSourceConfiguration < Struct.new(
82
+ :accounts,
83
+ :regions,
84
+ :source_name,
85
+ :source_version)
79
86
  SENSITIVE = []
80
87
  include Aws::Structure
81
88
  end
82
89
 
83
- # Automatically enable new organization accounts as member accounts from
84
- # an Amazon Security Lake administrator account.
90
+ # Amazon Security Lake can collect logs and events from
91
+ # natively-supported Amazon Web Services services.
85
92
  #
86
- # @!attribute [rw] region
87
- # The Amazon Web Services Regions where Security Lake is automatically
88
- # enabled.
93
+ # @!attribute [rw] source_name
94
+ # The name for a Amazon Web Services source. This must be a Regionally
95
+ # unique value.
89
96
  # @return [String]
90
97
  #
91
- # @!attribute [rw] sources
92
- # The Amazon Web Services sources that are automatically enabled in
93
- # Security Lake.
94
- # @return [Array<String>]
95
- #
96
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/AutoEnableNewRegionConfiguration AWS API Documentation
97
- #
98
- class AutoEnableNewRegionConfiguration < Struct.new(
99
- :region,
100
- :sources)
101
- SENSITIVE = []
102
- include Aws::Structure
103
- end
104
-
105
- # Amazon Security Lake generally returns 404 errors if the requested
106
- # object is missing from the bucket.
107
- #
108
- # @!attribute [rw] message
98
+ # @!attribute [rw] source_version
99
+ # The version for a Amazon Web Services source. This must be a
100
+ # Regionally unique value.
109
101
  # @return [String]
110
102
  #
111
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/BucketNotFoundException AWS API Documentation
103
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/AwsLogSourceResource AWS API Documentation
112
104
  #
113
- class BucketNotFoundException < Struct.new(
114
- :message)
105
+ class AwsLogSourceResource < Struct.new(
106
+ :source_name,
107
+ :source_version)
115
108
  SENSITIVE = []
116
109
  include Aws::Structure
117
110
  end
118
111
 
119
- # More than one process tried to modify a resource at the same time.
112
+ # The request is malformed or contains an error such as an invalid
113
+ # parameter value or a missing required parameter.
120
114
  #
121
115
  # @!attribute [rw] message
122
116
  # @return [String]
123
117
  #
124
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ConcurrentModificationException AWS API Documentation
118
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/BadRequestException AWS API Documentation
125
119
  #
126
- class ConcurrentModificationException < Struct.new(
120
+ class BadRequestException < Struct.new(
127
121
  :message)
128
122
  SENSITIVE = []
129
123
  include Aws::Structure
@@ -138,8 +132,8 @@ module Aws::SecurityLake
138
132
  # @!attribute [rw] message
139
133
  # @return [String]
140
134
  #
141
- # @!attribute [rw] resource_id
142
- # A conflict occurred when prompting for the Resource ID.
135
+ # @!attribute [rw] resource_name
136
+ # The resource name.
143
137
  # @return [String]
144
138
  #
145
139
  # @!attribute [rw] resource_type
@@ -150,66 +144,21 @@ module Aws::SecurityLake
150
144
  #
151
145
  class ConflictException < Struct.new(
152
146
  :message,
153
- :resource_id,
147
+ :resource_name,
154
148
  :resource_type)
155
149
  SENSITIVE = []
156
150
  include Aws::Structure
157
151
  end
158
152
 
159
- # There was a conflict when you attempted to modify a Security Lake
160
- # source name.
161
- #
162
- # @!attribute [rw] message
163
- # @return [String]
164
- #
165
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ConflictSourceNamesException AWS API Documentation
166
- #
167
- class ConflictSourceNamesException < Struct.new(
168
- :message)
169
- SENSITIVE = []
170
- include Aws::Structure
171
- end
172
-
173
- # A conflicting subscription exception operation is in progress.
174
- #
175
- # @!attribute [rw] message
176
- # @return [String]
177
- #
178
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ConflictSubscriptionException AWS API Documentation
179
- #
180
- class ConflictSubscriptionException < Struct.new(
181
- :message)
182
- SENSITIVE = []
183
- include Aws::Structure
184
- end
185
-
186
- # @!attribute [rw] enable_all_dimensions
187
- # Enables data collection from specific Amazon Web Services sources in
188
- # all specific accounts and specific Regions.
189
- # @return [Hash<String,Hash<String,Array<String>>>]
190
- #
191
- # @!attribute [rw] enable_single_dimension
192
- # Enables data collection from all Amazon Web Services sources in
193
- # specific accounts or Regions.
194
- # @return [Array<String>]
195
- #
196
- # @!attribute [rw] enable_two_dimensions
197
- # Enables data collection from specific Amazon Web Services sources in
198
- # specific accounts or Regions.
199
- # @return [Hash<String,Array<String>>]
200
- #
201
- # @!attribute [rw] input_order
202
- # Specifies the input order to enable dimensions in Security Lake,
203
- # namely Region, source type, and member account.
204
- # @return [Array<String>]
153
+ # @!attribute [rw] sources
154
+ # Specify the natively-supported Amazon Web Services service to add as
155
+ # a source in Security Lake.
156
+ # @return [Array<Types::AwsLogSourceConfiguration>]
205
157
  #
206
158
  # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateAwsLogSourceRequest AWS API Documentation
207
159
  #
208
160
  class CreateAwsLogSourceRequest < Struct.new(
209
- :enable_all_dimensions,
210
- :enable_single_dimension,
211
- :enable_two_dimensions,
212
- :input_order)
161
+ :sources)
213
162
  SENSITIVE = []
214
163
  include Aws::Structure
215
164
  end
@@ -220,131 +169,119 @@ module Aws::SecurityLake
220
169
  # these accounts are not part of an organization.
221
170
  # @return [Array<String>]
222
171
  #
223
- # @!attribute [rw] processing
224
- # Lists the accounts that are in the process of enabling a natively
225
- # supported Amazon Web Service as a Security Lake source.
226
- # @return [Array<String>]
227
- #
228
172
  # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateAwsLogSourceResponse AWS API Documentation
229
173
  #
230
174
  class CreateAwsLogSourceResponse < Struct.new(
231
- :failed,
232
- :processing)
175
+ :failed)
233
176
  SENSITIVE = []
234
177
  include Aws::Structure
235
178
  end
236
179
 
237
- # @!attribute [rw] custom_source_name
238
- # The name for a third-party custom source. This must be a Regionally
239
- # unique value.
240
- # @return [String]
180
+ # @!attribute [rw] configuration
181
+ # The configuration for the third-party custom source.
182
+ # @return [Types::CustomLogSourceConfiguration]
241
183
  #
242
- # @!attribute [rw] event_class
243
- # The Open Cybersecurity Schema Framework (OCSF) event class which
184
+ # @!attribute [rw] event_classes
185
+ # The Open Cybersecurity Schema Framework (OCSF) event classes which
244
186
  # describes the type of data that the custom source will send to
245
- # Security Lake.
246
- # @return [String]
187
+ # Security Lake. The supported event classes are:
247
188
  #
248
- # @!attribute [rw] glue_invocation_role_arn
249
- # The Amazon Resource Name (ARN) of the Identity and Access Management
250
- # (IAM) role to be used by the Glue crawler. The recommended IAM
251
- # policies are:
189
+ # * `ACCESS_ACTIVITY`
252
190
  #
253
- # * The managed policy `AWSGlueServiceRole`
191
+ # * `FILE_ACTIVITY`
254
192
  #
255
- # * A custom policy granting access to your Amazon S3 Data Lake
256
- # @return [String]
193
+ # * `KERNEL_ACTIVITY`
257
194
  #
258
- # @!attribute [rw] log_provider_account_id
259
- # The Amazon Web Services account ID of the custom source that will
260
- # write logs and events into the Amazon S3 Data Lake.
261
- # @return [String]
195
+ # * `KERNEL_EXTENSION`
262
196
  #
263
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateCustomLogSourceRequest AWS API Documentation
197
+ # * `MEMORY_ACTIVITY`
264
198
  #
265
- class CreateCustomLogSourceRequest < Struct.new(
266
- :custom_source_name,
267
- :event_class,
268
- :glue_invocation_role_arn,
269
- :log_provider_account_id)
270
- SENSITIVE = []
271
- include Aws::Structure
272
- end
273
-
274
- # @!attribute [rw] custom_data_location
275
- # The location of the partition in the Amazon S3 bucket for Security
276
- # Lake.
277
- # @return [String]
199
+ # * `MODULE_ACTIVITY`
278
200
  #
279
- # @!attribute [rw] glue_crawler_name
280
- # The name of the Glue crawler.
281
- # @return [String]
201
+ # * `PROCESS_ACTIVITY`
282
202
  #
283
- # @!attribute [rw] glue_database_name
284
- # The Glue database where results are written, such as:
285
- # `arn:aws:daylight:us-east-1::database/sometable/*`.
286
- # @return [String]
203
+ # * `REGISTRY_KEY_ACTIVITY`
287
204
  #
288
- # @!attribute [rw] glue_table_name
289
- # The table name of the Glue crawler.
290
- # @return [String]
205
+ # * `REGISTRY_VALUE_ACTIVITY`
291
206
  #
292
- # @!attribute [rw] log_provider_access_role_arn
293
- # The ARN of the IAM role to be used by the entity putting logs into
294
- # your custom source partition. Security Lake will apply the correct
295
- # access policies to this role, but you must first manually create the
296
- # trust policy for this role. The IAM role name must start with the
297
- # text 'Security Lake'. The IAM role must trust the
298
- # `logProviderAccountId` to assume the role.
299
- # @return [String]
207
+ # * `RESOURCE_ACTIVITY`
300
208
  #
301
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateCustomLogSourceResponse AWS API Documentation
209
+ # * `SCHEDULED_JOB_ACTIVITY`
302
210
  #
303
- class CreateCustomLogSourceResponse < Struct.new(
304
- :custom_data_location,
305
- :glue_crawler_name,
306
- :glue_database_name,
307
- :glue_table_name,
308
- :log_provider_access_role_arn)
309
- SENSITIVE = []
310
- include Aws::Structure
311
- end
312
-
313
- # @!attribute [rw] configuration_for_new_accounts
314
- # Enable Security Lake with the specified configuration settings to
315
- # begin collecting security data for new accounts in your
316
- # organization.
317
- # @return [Array<Types::AutoEnableNewRegionConfiguration>]
211
+ # * `SECURITY_FINDING`
212
+ #
213
+ # * `ACCOUNT_CHANGE`
214
+ #
215
+ # * `AUTHENTICATION`
216
+ #
217
+ # * `AUTHORIZATION`
218
+ #
219
+ # * `ENTITY_MANAGEMENT_AUDIT`
220
+ #
221
+ # * `DHCP_ACTIVITY`
222
+ #
223
+ # * `NETWORK_ACTIVITY`
224
+ #
225
+ # * `DNS_ACTIVITY`
226
+ #
227
+ # * `FTP_ACTIVITY`
228
+ #
229
+ # * `HTTP_ACTIVITY`
230
+ #
231
+ # * `RDP_ACTIVITY`
232
+ #
233
+ # * `SMB_ACTIVITY`
318
234
  #
319
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateDatalakeAutoEnableRequest AWS API Documentation
235
+ # * `SSH_ACTIVITY`
320
236
  #
321
- class CreateDatalakeAutoEnableRequest < Struct.new(
322
- :configuration_for_new_accounts)
237
+ # * `CONFIG_STATE`
238
+ #
239
+ # * `INVENTORY_INFO`
240
+ #
241
+ # * `EMAIL_ACTIVITY`
242
+ #
243
+ # * `API_ACTIVITY`
244
+ #
245
+ # * `CLOUD_API`
246
+ # @return [Array<String>]
247
+ #
248
+ # @!attribute [rw] source_name
249
+ # Specify the name for a third-party custom source. This must be a
250
+ # Regionally unique value.
251
+ # @return [String]
252
+ #
253
+ # @!attribute [rw] source_version
254
+ # Specify the source version for the third-party custom source, to
255
+ # limit log collection to a specific version of custom data source.
256
+ # @return [String]
257
+ #
258
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateCustomLogSourceRequest AWS API Documentation
259
+ #
260
+ class CreateCustomLogSourceRequest < Struct.new(
261
+ :configuration,
262
+ :event_classes,
263
+ :source_name,
264
+ :source_version)
323
265
  SENSITIVE = []
324
266
  include Aws::Structure
325
267
  end
326
268
 
327
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateDatalakeAutoEnableResponse AWS API Documentation
328
- #
329
- class CreateDatalakeAutoEnableResponse < Aws::EmptyStructure; end
330
-
331
- # @!attribute [rw] account
332
- # The Amazon Web Services account ID of the Security Lake delegated
333
- # administrator.
334
- # @return [String]
269
+ # @!attribute [rw] source
270
+ # The created third-party custom source.
271
+ # @return [Types::CustomLogSourceResource]
335
272
  #
336
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateDatalakeDelegatedAdminRequest AWS API Documentation
273
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateCustomLogSourceResponse AWS API Documentation
337
274
  #
338
- class CreateDatalakeDelegatedAdminRequest < Struct.new(
339
- :account)
275
+ class CreateCustomLogSourceResponse < Struct.new(
276
+ :source)
340
277
  SENSITIVE = []
341
278
  include Aws::Structure
342
279
  end
343
280
 
344
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateDatalakeDelegatedAdminResponse AWS API Documentation
281
+ # @!attribute [rw] exception_time_to_live
282
+ # The expiration period and time-to-live (TTL).
283
+ # @return [Integer]
345
284
  #
346
- class CreateDatalakeDelegatedAdminResponse < Aws::EmptyStructure; end
347
-
348
285
  # @!attribute [rw] notification_endpoint
349
286
  # The Amazon Web Services account where you want to receive exception
350
287
  # notifications.
@@ -355,27 +292,42 @@ module Aws::SecurityLake
355
292
  # posted.
356
293
  # @return [String]
357
294
  #
358
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateDatalakeExceptionsSubscriptionRequest AWS API Documentation
295
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateDataLakeExceptionSubscriptionRequest AWS API Documentation
359
296
  #
360
- class CreateDatalakeExceptionsSubscriptionRequest < Struct.new(
297
+ class CreateDataLakeExceptionSubscriptionRequest < Struct.new(
298
+ :exception_time_to_live,
361
299
  :notification_endpoint,
362
300
  :subscription_protocol)
363
301
  SENSITIVE = []
364
302
  include Aws::Structure
365
303
  end
366
304
 
367
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateDatalakeExceptionsSubscriptionResponse AWS API Documentation
305
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateDataLakeExceptionSubscriptionResponse AWS API Documentation
306
+ #
307
+ class CreateDataLakeExceptionSubscriptionResponse < Aws::EmptyStructure; end
308
+
309
+ # @!attribute [rw] auto_enable_new_account
310
+ # Enable Security Lake with the specified configuration settings, to
311
+ # begin collecting security data for new accounts in your
312
+ # organization.
313
+ # @return [Array<Types::DataLakeAutoEnableNewAccountConfiguration>]
314
+ #
315
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateDataLakeOrganizationConfigurationRequest AWS API Documentation
316
+ #
317
+ class CreateDataLakeOrganizationConfigurationRequest < Struct.new(
318
+ :auto_enable_new_account)
319
+ SENSITIVE = []
320
+ include Aws::Structure
321
+ end
322
+
323
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateDataLakeOrganizationConfigurationResponse AWS API Documentation
368
324
  #
369
- class CreateDatalakeExceptionsSubscriptionResponse < Aws::EmptyStructure; end
325
+ class CreateDataLakeOrganizationConfigurationResponse < Aws::EmptyStructure; end
370
326
 
371
327
  # @!attribute [rw] configurations
372
328
  # Specify the Region or Regions that will contribute data to the
373
329
  # rollup region.
374
- # @return [Hash<String,Types::LakeConfigurationRequest>]
375
- #
376
- # @!attribute [rw] enable_all
377
- # Enable Security Lake in all Regions.
378
- # @return [Boolean]
330
+ # @return [Array<Types::DataLakeConfiguration>]
379
331
  #
380
332
  # @!attribute [rw] meta_store_manager_role_arn
381
333
  # The Amazon Resource Name (ARN) used to create and update the Glue
@@ -383,58 +335,75 @@ module Aws::SecurityLake
383
335
  # normalization of Amazon Web Services log sources and custom sources.
384
336
  # @return [String]
385
337
  #
386
- # @!attribute [rw] regions
387
- # Enable Security Lake in the specified Regions. To enable Security
388
- # Lake in specific Amazon Web Services Regions, such as us-east-1 or
389
- # ap-northeast-3, provide the Region codes. For a list of Region
390
- # codes, see [Amazon Security Lake endpoints][1] in the Amazon Web
391
- # Services General Reference.
338
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateDataLakeRequest AWS API Documentation
392
339
  #
340
+ class CreateDataLakeRequest < Struct.new(
341
+ :configurations,
342
+ :meta_store_manager_role_arn)
343
+ SENSITIVE = []
344
+ include Aws::Structure
345
+ end
346
+
347
+ # @!attribute [rw] data_lakes
348
+ # The created Security Lake configuration object.
349
+ # @return [Array<Types::DataLakeResource>]
393
350
  #
351
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateDataLakeResponse AWS API Documentation
394
352
  #
395
- # [1]: https://docs.aws.amazon.com/general/latest/gr/securitylake.html
396
- # @return [Array<String>]
353
+ class CreateDataLakeResponse < Struct.new(
354
+ :data_lakes)
355
+ SENSITIVE = []
356
+ include Aws::Structure
357
+ end
358
+
359
+ # @!attribute [rw] configuration
360
+ # Specify the configuration using which you want to create the
361
+ # subscriber notification.
362
+ # @return [Types::NotificationConfiguration]
397
363
  #
398
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateDatalakeRequest AWS API Documentation
364
+ # @!attribute [rw] subscriber_id
365
+ # The subscriber ID for the notification subscription.
366
+ # @return [String]
399
367
  #
400
- class CreateDatalakeRequest < Struct.new(
401
- :configurations,
402
- :enable_all,
403
- :meta_store_manager_role_arn,
404
- :regions)
368
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateSubscriberNotificationRequest AWS API Documentation
369
+ #
370
+ class CreateSubscriberNotificationRequest < Struct.new(
371
+ :configuration,
372
+ :subscriber_id)
405
373
  SENSITIVE = []
406
374
  include Aws::Structure
407
375
  end
408
376
 
409
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateDatalakeResponse AWS API Documentation
377
+ # @!attribute [rw] subscriber_endpoint
378
+ # The subscriber endpoint to which exception messages are posted.
379
+ # @return [String]
380
+ #
381
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateSubscriberNotificationResponse AWS API Documentation
410
382
  #
411
- class CreateDatalakeResponse < Aws::EmptyStructure; end
383
+ class CreateSubscriberNotificationResponse < Struct.new(
384
+ :subscriber_endpoint)
385
+ SENSITIVE = []
386
+ include Aws::Structure
387
+ end
412
388
 
413
389
  # @!attribute [rw] access_types
414
390
  # The Amazon S3 or Lake Formation access type.
415
391
  # @return [Array<String>]
416
392
  #
417
- # @!attribute [rw] account_id
418
- # The Amazon Web Services account ID used to access your data.
419
- # @return [String]
420
- #
421
- # @!attribute [rw] external_id
422
- # The external ID of the subscriber. This lets the user that is
423
- # assuming the role assert the circumstances in which they are
424
- # operating. It also provides a way for the account owner to permit
425
- # the role to be assumed only under specific circumstances.
426
- # @return [String]
427
- #
428
- # @!attribute [rw] source_types
393
+ # @!attribute [rw] sources
429
394
  # The supported Amazon Web Services from which logs and events are
430
395
  # collected. Security Lake supports log and event collection for
431
396
  # natively supported Amazon Web Services.
432
- # @return [Array<Types::SourceType>]
397
+ # @return [Array<Types::LogSourceResource>]
433
398
  #
434
399
  # @!attribute [rw] subscriber_description
435
400
  # The description for your subscriber account in Security Lake.
436
401
  # @return [String]
437
402
  #
403
+ # @!attribute [rw] subscriber_identity
404
+ # The AWS identity used to access your data.
405
+ # @return [Types::AwsIdentity]
406
+ #
438
407
  # @!attribute [rw] subscriber_name
439
408
  # The name of your Security Lake subscriber account.
440
409
  # @return [String]
@@ -443,415 +412,749 @@ module Aws::SecurityLake
443
412
  #
444
413
  class CreateSubscriberRequest < Struct.new(
445
414
  :access_types,
446
- :account_id,
447
- :external_id,
448
- :source_types,
415
+ :sources,
449
416
  :subscriber_description,
417
+ :subscriber_identity,
450
418
  :subscriber_name)
451
419
  SENSITIVE = []
452
420
  include Aws::Structure
453
421
  end
454
422
 
455
- # @!attribute [rw] role_arn
456
- # The Amazon Resource Name (ARN) created by you to provide to the
457
- # subscriber. For more information about ARNs and how to use them in
458
- # policies, see [IAM identifiers in the Identity and Access Management
459
- # (IAM) User Guide][1]. .
460
- #
423
+ # @!attribute [rw] subscriber
424
+ # Retrieve information about the subscriber created using the
425
+ # `CreateSubscriber` API.
426
+ # @return [Types::SubscriberResource]
461
427
  #
428
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateSubscriberResponse AWS API Documentation
462
429
  #
463
- # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html
464
- # @return [String]
430
+ class CreateSubscriberResponse < Struct.new(
431
+ :subscriber)
432
+ SENSITIVE = []
433
+ include Aws::Structure
434
+ end
435
+
436
+ # The attributes of a third-party custom source.
465
437
  #
466
- # @!attribute [rw] s3_bucket_arn
467
- # The ARN for the Amazon S3 bucket.
438
+ # @!attribute [rw] crawler_arn
439
+ # The ARN of the Glue crawler.
468
440
  # @return [String]
469
441
  #
470
- # @!attribute [rw] sns_arn
471
- # The ARN for the Amazon Simple Notification Service.
442
+ # @!attribute [rw] database_arn
443
+ # The ARN of the Glue database where results are written, such as:
444
+ # `arn:aws:daylight:us-east-1::database/sometable/*`.
472
445
  # @return [String]
473
446
  #
474
- # @!attribute [rw] subscription_id
475
- # The `subscriptionId` created by the `CreateSubscriber` API call.
447
+ # @!attribute [rw] table_arn
448
+ # The ARN of the Glue table.
476
449
  # @return [String]
477
450
  #
478
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateSubscriberResponse AWS API Documentation
451
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CustomLogSourceAttributes AWS API Documentation
479
452
  #
480
- class CreateSubscriberResponse < Struct.new(
481
- :role_arn,
482
- :s3_bucket_arn,
483
- :sns_arn,
484
- :subscription_id)
453
+ class CustomLogSourceAttributes < Struct.new(
454
+ :crawler_arn,
455
+ :database_arn,
456
+ :table_arn)
485
457
  SENSITIVE = []
486
458
  include Aws::Structure
487
459
  end
488
460
 
489
- # @!attribute [rw] create_sqs
490
- # Create an Amazon Simple Queue Service queue.
491
- # @return [Boolean]
461
+ # The configuration for the third-party custom source.
492
462
  #
493
- # @!attribute [rw] https_api_key_name
494
- # The key name for the notification subscription.
495
- # @return [String]
463
+ # @!attribute [rw] crawler_configuration
464
+ # The configuration for the Glue Crawler for the third-party custom
465
+ # source.
466
+ # @return [Types::CustomLogSourceCrawlerConfiguration]
496
467
  #
497
- # @!attribute [rw] https_api_key_value
498
- # The key value for the notification subscription.
499
- # @return [String]
468
+ # @!attribute [rw] provider_identity
469
+ # The identity of the log provider for the third-party custom source.
470
+ # @return [Types::AwsIdentity]
500
471
  #
501
- # @!attribute [rw] https_method
502
- # The HTTPS method used for the notification subscription.
503
- # @return [String]
472
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CustomLogSourceConfiguration AWS API Documentation
473
+ #
474
+ class CustomLogSourceConfiguration < Struct.new(
475
+ :crawler_configuration,
476
+ :provider_identity)
477
+ SENSITIVE = []
478
+ include Aws::Structure
479
+ end
480
+
481
+ # The configuration for the Glue Crawler for the third-party custom
482
+ # source.
504
483
  #
505
484
  # @!attribute [rw] role_arn
506
- # The Amazon Resource Name (ARN) of the EventBridge API destinations
507
- # IAM role that you created.
508
- # @return [String]
485
+ # The Amazon Resource Name (ARN) of the Identity and Access Management
486
+ # (IAM) role to be used by the Glue crawler. The recommended IAM
487
+ # policies are:
509
488
  #
510
- # @!attribute [rw] subscription_endpoint
511
- # The subscription endpoint in Security Lake. If you prefer
512
- # notification with an HTTPs endpoint, populate this field.
513
- # @return [String]
489
+ # * The managed policy `AWSGlueServiceRole`
514
490
  #
515
- # @!attribute [rw] subscription_id
516
- # The subscription ID for the notification subscription/
491
+ # * A custom policy granting access to your Amazon S3 Data Lake
517
492
  # @return [String]
518
493
  #
519
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateSubscriptionNotificationConfigurationRequest AWS API Documentation
494
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CustomLogSourceCrawlerConfiguration AWS API Documentation
520
495
  #
521
- class CreateSubscriptionNotificationConfigurationRequest < Struct.new(
522
- :create_sqs,
523
- :https_api_key_name,
524
- :https_api_key_value,
525
- :https_method,
526
- :role_arn,
527
- :subscription_endpoint,
528
- :subscription_id)
496
+ class CustomLogSourceCrawlerConfiguration < Struct.new(
497
+ :role_arn)
529
498
  SENSITIVE = []
530
499
  include Aws::Structure
531
500
  end
532
501
 
533
- # @!attribute [rw] queue_arn
534
- # Returns the Amazon Resource Name (ARN) of the queue.
502
+ # The details of the log provider for a third-party custom source.
503
+ #
504
+ # @!attribute [rw] location
505
+ # The location of the partition in the Amazon S3 bucket for Security
506
+ # Lake.
507
+ # @return [String]
508
+ #
509
+ # @!attribute [rw] role_arn
510
+ # The ARN of the IAM role to be used by the entity putting logs into
511
+ # your custom source partition. Security Lake will apply the correct
512
+ # access policies to this role, but you must first manually create the
513
+ # trust policy for this role. The IAM role name must start with the
514
+ # text 'Security Lake'. The IAM role must trust the
515
+ # `logProviderAccountId` to assume the role.
535
516
  # @return [String]
536
517
  #
537
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CreateSubscriptionNotificationConfigurationResponse AWS API Documentation
518
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CustomLogSourceProvider AWS API Documentation
538
519
  #
539
- class CreateSubscriptionNotificationConfigurationResponse < Struct.new(
540
- :queue_arn)
520
+ class CustomLogSourceProvider < Struct.new(
521
+ :location,
522
+ :role_arn)
541
523
  SENSITIVE = []
542
524
  include Aws::Structure
543
525
  end
544
526
 
545
- # @!attribute [rw] disable_all_dimensions
546
- # Removes the specific Amazon Web Services sources from specific
547
- # accounts and specific Regions.
548
- # @return [Hash<String,Hash<String,Array<String>>>]
527
+ # Amazon Security Lake can collect logs and events from third-party
528
+ # custom sources.
549
529
  #
550
- # @!attribute [rw] disable_single_dimension
551
- # Removes all Amazon Web Services sources from specific accounts or
552
- # Regions.
553
- # @return [Array<String>]
530
+ # @!attribute [rw] attributes
531
+ # The attributes of a third-party custom source.
532
+ # @return [Types::CustomLogSourceAttributes]
554
533
  #
555
- # @!attribute [rw] disable_two_dimensions
556
- # Remove a specific Amazon Web Services source from specific accounts
557
- # or Regions.
558
- # @return [Hash<String,Array<String>>]
534
+ # @!attribute [rw] provider
535
+ # The details of the log provider for a third-party custom source.
536
+ # @return [Types::CustomLogSourceProvider]
559
537
  #
560
- # @!attribute [rw] input_order
561
- # This is a mandatory input. Specify the input order to disable
562
- # dimensions in Security Lake, namely Region (Amazon Web Services
563
- # Region code, source type, and member (account ID of a specific
564
- # Amazon Web Services account).
565
- # @return [Array<String>]
538
+ # @!attribute [rw] source_name
539
+ # The name for a third-party custom source. This must be a Regionally
540
+ # unique value.
541
+ # @return [String]
566
542
  #
567
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteAwsLogSourceRequest AWS API Documentation
543
+ # @!attribute [rw] source_version
544
+ # The version for a third-party custom source. This must be a
545
+ # Regionally unique value.
546
+ # @return [String]
568
547
  #
569
- class DeleteAwsLogSourceRequest < Struct.new(
570
- :disable_all_dimensions,
571
- :disable_single_dimension,
572
- :disable_two_dimensions,
573
- :input_order)
548
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/CustomLogSourceResource AWS API Documentation
549
+ #
550
+ class CustomLogSourceResource < Struct.new(
551
+ :attributes,
552
+ :provider,
553
+ :source_name,
554
+ :source_version)
574
555
  SENSITIVE = []
575
556
  include Aws::Structure
576
557
  end
577
558
 
578
- # @!attribute [rw] failed
579
- # Deletion of the Amazon Web Services sources failed as the account is
580
- # not a part of the organization.
581
- # @return [Array<String>]
559
+ # Automatically enable new organization accounts as member accounts from
560
+ # an Amazon Security Lake administrator account.
582
561
  #
583
- # @!attribute [rw] processing
584
- # Deletion of the Amazon Web Services sources is in progress.
585
- # @return [Array<String>]
562
+ # @!attribute [rw] region
563
+ # The Amazon Web Services Regions where Security Lake is automatically
564
+ # enabled.
565
+ # @return [String]
586
566
  #
587
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteAwsLogSourceResponse AWS API Documentation
567
+ # @!attribute [rw] sources
568
+ # The Amazon Web Services sources that are automatically enabled in
569
+ # Security Lake.
570
+ # @return [Array<Types::AwsLogSourceResource>]
588
571
  #
589
- class DeleteAwsLogSourceResponse < Struct.new(
590
- :failed,
591
- :processing)
572
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DataLakeAutoEnableNewAccountConfiguration AWS API Documentation
573
+ #
574
+ class DataLakeAutoEnableNewAccountConfiguration < Struct.new(
575
+ :region,
576
+ :sources)
592
577
  SENSITIVE = []
593
578
  include Aws::Structure
594
579
  end
595
580
 
596
- # @!attribute [rw] custom_source_name
597
- # The custom source name for the custom log source.
581
+ # Provides details of Amazon Security Lake object.
582
+ #
583
+ # @!attribute [rw] encryption_configuration
584
+ # Provides encryption details of Amazon Security Lake object.
585
+ # @return [Types::DataLakeEncryptionConfiguration]
586
+ #
587
+ # @!attribute [rw] lifecycle_configuration
588
+ # Provides lifecycle details of Amazon Security Lake object.
589
+ # @return [Types::DataLakeLifecycleConfiguration]
590
+ #
591
+ # @!attribute [rw] region
592
+ # The Amazon Web Services Regions where Security Lake is automatically
593
+ # enabled.
598
594
  # @return [String]
599
595
  #
600
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteCustomLogSourceRequest AWS API Documentation
596
+ # @!attribute [rw] replication_configuration
597
+ # Provides replication details of Amazon Security Lake object.
598
+ # @return [Types::DataLakeReplicationConfiguration]
601
599
  #
602
- class DeleteCustomLogSourceRequest < Struct.new(
603
- :custom_source_name)
600
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DataLakeConfiguration AWS API Documentation
601
+ #
602
+ class DataLakeConfiguration < Struct.new(
603
+ :encryption_configuration,
604
+ :lifecycle_configuration,
605
+ :region,
606
+ :replication_configuration)
604
607
  SENSITIVE = []
605
608
  include Aws::Structure
606
609
  end
607
610
 
608
- # @!attribute [rw] custom_data_location
609
- # The location of the partition in the Amazon S3 bucket for Security
610
- # Lake.
611
+ # Provides encryption details of Amazon Security Lake object.
612
+ #
613
+ # @!attribute [rw] kms_key_id
614
+ # The id of KMS encryption key used by Amazon Security Lake to encrypt
615
+ # the Security Lake object.
611
616
  # @return [String]
612
617
  #
613
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteCustomLogSourceResponse AWS API Documentation
618
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DataLakeEncryptionConfiguration AWS API Documentation
614
619
  #
615
- class DeleteCustomLogSourceResponse < Struct.new(
616
- :custom_data_location)
620
+ class DataLakeEncryptionConfiguration < Struct.new(
621
+ :kms_key_id)
617
622
  SENSITIVE = []
618
623
  include Aws::Structure
619
624
  end
620
625
 
621
- # @!attribute [rw] remove_from_configuration_for_new_accounts
622
- # Delete Amazon Security Lake with the specified configuration
623
- # settings to stop ingesting security data for new accounts in
624
- # Security Lake.
625
- # @return [Array<Types::AutoEnableNewRegionConfiguration>]
626
+ # The details for a Security Lake exception
627
+ #
628
+ # @!attribute [rw] exception
629
+ # The underlying exception of a Security Lake exception.
630
+ # @return [String]
626
631
  #
627
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteDatalakeAutoEnableRequest AWS API Documentation
632
+ # @!attribute [rw] region
633
+ # The Amazon Web Services Regions where the exception occurred.
634
+ # @return [String]
635
+ #
636
+ # @!attribute [rw] remediation
637
+ # List of all remediation steps for a Security Lake exception.
638
+ # @return [String]
639
+ #
640
+ # @!attribute [rw] timestamp
641
+ # This error can occur if you configure the wrong timestamp format, or
642
+ # if the subset of entries used for validation had errors or missing
643
+ # values.
644
+ # @return [Time]
628
645
  #
629
- class DeleteDatalakeAutoEnableRequest < Struct.new(
630
- :remove_from_configuration_for_new_accounts)
646
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DataLakeException AWS API Documentation
647
+ #
648
+ class DataLakeException < Struct.new(
649
+ :exception,
650
+ :region,
651
+ :remediation,
652
+ :timestamp)
631
653
  SENSITIVE = []
632
654
  include Aws::Structure
633
655
  end
634
656
 
635
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteDatalakeAutoEnableResponse AWS API Documentation
657
+ # Provides lifecycle details of Amazon Security Lake object.
636
658
  #
637
- class DeleteDatalakeAutoEnableResponse < Aws::EmptyStructure; end
638
-
639
- # @!attribute [rw] account
640
- # The account ID the Security Lake delegated administrator.
641
- # @return [String]
659
+ # @!attribute [rw] expiration
660
+ # Provides data expiration details of Amazon Security Lake object.
661
+ # @return [Types::DataLakeLifecycleExpiration]
662
+ #
663
+ # @!attribute [rw] transitions
664
+ # Provides data storage transition details of Amazon Security Lake
665
+ # object.
666
+ # @return [Array<Types::DataLakeLifecycleTransition>]
642
667
  #
643
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteDatalakeDelegatedAdminRequest AWS API Documentation
668
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DataLakeLifecycleConfiguration AWS API Documentation
644
669
  #
645
- class DeleteDatalakeDelegatedAdminRequest < Struct.new(
646
- :account)
670
+ class DataLakeLifecycleConfiguration < Struct.new(
671
+ :expiration,
672
+ :transitions)
647
673
  SENSITIVE = []
648
674
  include Aws::Structure
649
675
  end
650
676
 
651
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteDatalakeDelegatedAdminResponse AWS API Documentation
677
+ # Provide expiration lifecycle details of Amazon Security Lake object.
652
678
  #
653
- class DeleteDatalakeDelegatedAdminResponse < Aws::EmptyStructure; end
654
-
655
- # @api private
679
+ # @!attribute [rw] days
680
+ # Number of days before data expires in the Amazon Security Lake
681
+ # object.
682
+ # @return [Integer]
656
683
  #
657
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteDatalakeExceptionsSubscriptionRequest AWS API Documentation
684
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DataLakeLifecycleExpiration AWS API Documentation
658
685
  #
659
- class DeleteDatalakeExceptionsSubscriptionRequest < Aws::EmptyStructure; end
686
+ class DataLakeLifecycleExpiration < Struct.new(
687
+ :days)
688
+ SENSITIVE = []
689
+ include Aws::Structure
690
+ end
660
691
 
661
- # @!attribute [rw] status
662
- # Retrieves the status of the delete Security Lake operation for an
663
- # account.
692
+ # Provide transition lifecycle details of Amazon Security Lake object.
693
+ #
694
+ # @!attribute [rw] days
695
+ # Number of days before data transitions to a different S3 Storage
696
+ # Class in the Amazon Security Lake object.
697
+ # @return [Integer]
698
+ #
699
+ # @!attribute [rw] storage_class
700
+ # The range of storage classes that you can choose from based on the
701
+ # data access, resiliency, and cost requirements of your workloads.
664
702
  # @return [String]
665
703
  #
666
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteDatalakeExceptionsSubscriptionResponse AWS API Documentation
704
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DataLakeLifecycleTransition AWS API Documentation
667
705
  #
668
- class DeleteDatalakeExceptionsSubscriptionResponse < Struct.new(
669
- :status)
706
+ class DataLakeLifecycleTransition < Struct.new(
707
+ :days,
708
+ :storage_class)
670
709
  SENSITIVE = []
671
710
  include Aws::Structure
672
711
  end
673
712
 
674
- # @api private
713
+ # Provides replication details of Amazon Security Lake object.
675
714
  #
676
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteDatalakeRequest AWS API Documentation
715
+ # @!attribute [rw] regions
716
+ # Replication enables automatic, asynchronous copying of objects
717
+ # across Amazon S3 buckets. Amazon S3 buckets that are configured for
718
+ # object replication can be owned by the same Amazon Web Services
719
+ # account or by different accounts. You can replicate objects to a
720
+ # single destination bucket or to multiple destination buckets. The
721
+ # destination buckets can be in different Amazon Web Services Regions
722
+ # or within the same Region as the source bucket.
677
723
  #
678
- class DeleteDatalakeRequest < Aws::EmptyStructure; end
679
-
680
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteDatalakeResponse AWS API Documentation
724
+ # Set up one or more rollup Regions by providing the Region or Regions
725
+ # that should contribute to the central rollup Region.
726
+ # @return [Array<String>]
681
727
  #
682
- class DeleteDatalakeResponse < Aws::EmptyStructure; end
683
-
684
- # @!attribute [rw] id
685
- # A value created by Security Lake that uniquely identifies your
686
- # `DeleteSubscriber` API request.
728
+ # @!attribute [rw] role_arn
729
+ # Replication settings for the Amazon S3 buckets. This parameter uses
730
+ # the Identity and Access Management (IAM) role you created that is
731
+ # managed by Security Lake, to ensure the replication setting is
732
+ # correct.
687
733
  # @return [String]
688
734
  #
689
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteSubscriberRequest AWS API Documentation
735
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DataLakeReplicationConfiguration AWS API Documentation
690
736
  #
691
- class DeleteSubscriberRequest < Struct.new(
692
- :id)
737
+ class DataLakeReplicationConfiguration < Struct.new(
738
+ :regions,
739
+ :role_arn)
693
740
  SENSITIVE = []
694
741
  include Aws::Structure
695
742
  end
696
743
 
697
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteSubscriberResponse AWS API Documentation
744
+ # Provides details of Amazon Security Lake object.
698
745
  #
699
- class DeleteSubscriberResponse < Aws::EmptyStructure; end
746
+ # @!attribute [rw] create_status
747
+ # Retrieves the status of the configuration operation for an account
748
+ # in Amazon Security Lake.
749
+ # @return [String]
750
+ #
751
+ # @!attribute [rw] data_lake_arn
752
+ # The Amazon Resource Name (ARN) created by you to provide to the
753
+ # subscriber. For more information about ARNs and how to use them in
754
+ # policies, see the [Amazon Security Lake User Guide][1].
755
+ #
756
+ #
757
+ #
758
+ # [1]: https://docs.aws.amazon.com/security-lake/latest/userguide/subscriber-management.html
759
+ # @return [String]
760
+ #
761
+ # @!attribute [rw] encryption_configuration
762
+ # Provides encryption details of Amazon Security Lake object.
763
+ # @return [Types::DataLakeEncryptionConfiguration]
764
+ #
765
+ # @!attribute [rw] lifecycle_configuration
766
+ # Provides lifecycle details of Amazon Security Lake object.
767
+ # @return [Types::DataLakeLifecycleConfiguration]
768
+ #
769
+ # @!attribute [rw] region
770
+ # The Amazon Web Services Regions where Security Lake is enabled.
771
+ # @return [String]
772
+ #
773
+ # @!attribute [rw] replication_configuration
774
+ # Provides replication details of Amazon Security Lake object.
775
+ # @return [Types::DataLakeReplicationConfiguration]
776
+ #
777
+ # @!attribute [rw] s3_bucket_arn
778
+ # The ARN for the Amazon Security Lake Amazon S3 bucket.
779
+ # @return [String]
780
+ #
781
+ # @!attribute [rw] update_status
782
+ # The status of the last `UpdateDataLake `or `DeleteDataLake` API
783
+ # request.
784
+ # @return [Types::DataLakeUpdateStatus]
785
+ #
786
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DataLakeResource AWS API Documentation
787
+ #
788
+ class DataLakeResource < Struct.new(
789
+ :create_status,
790
+ :data_lake_arn,
791
+ :encryption_configuration,
792
+ :lifecycle_configuration,
793
+ :region,
794
+ :replication_configuration,
795
+ :s3_bucket_arn,
796
+ :update_status)
797
+ SENSITIVE = []
798
+ include Aws::Structure
799
+ end
700
800
 
701
- # @!attribute [rw] subscription_id
702
- # The ID of the Security Lake subscriber account.
801
+ # Amazon Security Lake collects logs and events from supported Amazon
802
+ # Web Services and custom sources. For the list of supported Amazon Web
803
+ # Services, see the [Amazon Security Lake User Guide][1].
804
+ #
805
+ #
806
+ #
807
+ # [1]: https://docs.aws.amazon.com/security-lake/latest/userguide/internal-sources.html
808
+ #
809
+ # @!attribute [rw] account
810
+ # The ID of the Security Lake account for which logs are collected.
811
+ # @return [String]
812
+ #
813
+ # @!attribute [rw] event_classes
814
+ # The Open Cybersecurity Schema Framework (OCSF) event classes which
815
+ # describes the type of data that the custom source will send to
816
+ # Security Lake. The supported event classes are:
817
+ #
818
+ # * `ACCESS_ACTIVITY`
819
+ #
820
+ # * `FILE_ACTIVITY`
821
+ #
822
+ # * `KERNEL_ACTIVITY`
823
+ #
824
+ # * `KERNEL_EXTENSION`
825
+ #
826
+ # * `MEMORY_ACTIVITY`
827
+ #
828
+ # * `MODULE_ACTIVITY`
829
+ #
830
+ # * `PROCESS_ACTIVITY`
831
+ #
832
+ # * `REGISTRY_KEY_ACTIVITY`
833
+ #
834
+ # * `REGISTRY_VALUE_ACTIVITY`
835
+ #
836
+ # * `RESOURCE_ACTIVITY`
837
+ #
838
+ # * `SCHEDULED_JOB_ACTIVITY`
839
+ #
840
+ # * `SECURITY_FINDING`
841
+ #
842
+ # * `ACCOUNT_CHANGE`
843
+ #
844
+ # * `AUTHENTICATION`
845
+ #
846
+ # * `AUTHORIZATION`
847
+ #
848
+ # * `ENTITY_MANAGEMENT_AUDIT`
849
+ #
850
+ # * `DHCP_ACTIVITY`
851
+ #
852
+ # * `NETWORK_ACTIVITY`
853
+ #
854
+ # * `DNS_ACTIVITY`
855
+ #
856
+ # * `FTP_ACTIVITY`
857
+ #
858
+ # * `HTTP_ACTIVITY`
859
+ #
860
+ # * `RDP_ACTIVITY`
861
+ #
862
+ # * `SMB_ACTIVITY`
863
+ #
864
+ # * `SSH_ACTIVITY`
865
+ #
866
+ # * `CONFIG_STATE`
867
+ #
868
+ # * `INVENTORY_INFO`
869
+ #
870
+ # * `EMAIL_ACTIVITY`
871
+ #
872
+ # * `API_ACTIVITY`
873
+ #
874
+ # * `CLOUD_API`
875
+ # @return [Array<String>]
876
+ #
877
+ # @!attribute [rw] source_name
878
+ # The supported Amazon Web Services from which logs and events are
879
+ # collected. Amazon Security Lake supports log and event collection
880
+ # for natively supported Amazon Web Services.
703
881
  # @return [String]
704
882
  #
705
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteSubscriptionNotificationConfigurationRequest AWS API Documentation
883
+ # @!attribute [rw] source_statuses
884
+ # The log status for the Security Lake account.
885
+ # @return [Array<Types::DataLakeSourceStatus>]
886
+ #
887
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DataLakeSource AWS API Documentation
706
888
  #
707
- class DeleteSubscriptionNotificationConfigurationRequest < Struct.new(
708
- :subscription_id)
889
+ class DataLakeSource < Struct.new(
890
+ :account,
891
+ :event_classes,
892
+ :source_name,
893
+ :source_statuses)
709
894
  SENSITIVE = []
710
895
  include Aws::Structure
711
896
  end
712
897
 
713
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteSubscriptionNotificationConfigurationResponse AWS API Documentation
898
+ # Retrieves the Logs status for the Amazon Security Lake account.
899
+ #
900
+ # @!attribute [rw] resource
901
+ # Defines path the stored logs are available which has information on
902
+ # your systems, applications, and services.
903
+ # @return [String]
714
904
  #
715
- class DeleteSubscriptionNotificationConfigurationResponse < Aws::EmptyStructure; end
905
+ # @!attribute [rw] status
906
+ # The health status of services, including error codes and patterns.
907
+ # @return [String]
908
+ #
909
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DataLakeSourceStatus AWS API Documentation
910
+ #
911
+ class DataLakeSourceStatus < Struct.new(
912
+ :resource,
913
+ :status)
914
+ SENSITIVE = []
915
+ include Aws::Structure
916
+ end
716
917
 
717
- # Represents an error interacting with the Amazon EventBridge service.
918
+ # The details of the last `UpdateDataLake` or `DeleteDataLake` API
919
+ # request which failed.
718
920
  #
719
- # @!attribute [rw] message
921
+ # @!attribute [rw] code
922
+ # The reason code for the exception of the last `UpdateDataLake` or
923
+ # `DeleteDataLake` API request.
924
+ # @return [String]
925
+ #
926
+ # @!attribute [rw] reason
927
+ # The reason for the exception of the last `UpdateDataLake`or
928
+ # `DeleteDataLake` API request.
720
929
  # @return [String]
721
930
  #
722
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/EventBridgeException AWS API Documentation
931
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DataLakeUpdateException AWS API Documentation
723
932
  #
724
- class EventBridgeException < Struct.new(
725
- :message)
933
+ class DataLakeUpdateException < Struct.new(
934
+ :code,
935
+ :reason)
726
936
  SENSITIVE = []
727
937
  include Aws::Structure
728
938
  end
729
939
 
730
- # List of all failures.
940
+ # The status of the last `UpdateDataLake` or `DeleteDataLake` API
941
+ # request. This is set to Completed after the configuration is updated,
942
+ # or removed if deletion of the data lake is successful.
731
943
  #
732
- # @!attribute [rw] exception_message
733
- # List of all exception messages.
944
+ # @!attribute [rw] exception
945
+ # The details of the last `UpdateDataLake`or `DeleteDataLake` API
946
+ # request which failed.
947
+ # @return [Types::DataLakeUpdateException]
948
+ #
949
+ # @!attribute [rw] request_id
950
+ # The unique ID for the last `UpdateDataLake` or `DeleteDataLake` API
951
+ # request.
734
952
  # @return [String]
735
953
  #
736
- # @!attribute [rw] remediation
737
- # List of all remediation steps for failures.
954
+ # @!attribute [rw] status
955
+ # The status of the last `UpdateDataLake` or `DeleteDataLake` API
956
+ # request that was requested.
738
957
  # @return [String]
739
958
  #
740
- # @!attribute [rw] timestamp
741
- # This error can occur if you configure the wrong timestamp format, or
742
- # if the subset of entries used for validation had errors or missing
743
- # values.
744
- # @return [Time]
959
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DataLakeUpdateStatus AWS API Documentation
745
960
  #
746
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/Failures AWS API Documentation
961
+ class DataLakeUpdateStatus < Struct.new(
962
+ :exception,
963
+ :request_id,
964
+ :status)
965
+ SENSITIVE = []
966
+ include Aws::Structure
967
+ end
968
+
969
+ # @!attribute [rw] sources
970
+ # Specify the natively-supported Amazon Web Services service to remove
971
+ # as a source in Security Lake.
972
+ # @return [Array<Types::AwsLogSourceConfiguration>]
747
973
  #
748
- class Failures < Struct.new(
749
- :exception_message,
750
- :remediation,
751
- :timestamp)
974
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteAwsLogSourceRequest AWS API Documentation
975
+ #
976
+ class DeleteAwsLogSourceRequest < Struct.new(
977
+ :sources)
752
978
  SENSITIVE = []
753
979
  include Aws::Structure
754
980
  end
755
981
 
756
- # Response element for actions that make changes, namely create, update,
757
- # or delete actions.
982
+ # @!attribute [rw] failed
983
+ # Deletion of the Amazon Web Services sources failed as the account is
984
+ # not a part of the organization.
985
+ # @return [Array<String>]
758
986
  #
759
- # @!attribute [rw] failures
760
- # List of all failures.
761
- # @return [Array<Types::Failures>]
987
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteAwsLogSourceResponse AWS API Documentation
762
988
  #
763
- # @!attribute [rw] region
764
- # List of Amazon Web Services Regions where the failure occurred.
989
+ class DeleteAwsLogSourceResponse < Struct.new(
990
+ :failed)
991
+ SENSITIVE = []
992
+ include Aws::Structure
993
+ end
994
+
995
+ # @!attribute [rw] source_name
996
+ # The source name of custom log source that you want to delete.
765
997
  # @return [String]
766
998
  #
767
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/FailuresResponse AWS API Documentation
999
+ # @!attribute [rw] source_version
1000
+ # The source version for the third-party custom source. You can limit
1001
+ # the custom source removal to the specified source version.
1002
+ # @return [String]
768
1003
  #
769
- class FailuresResponse < Struct.new(
770
- :failures,
771
- :region)
1004
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteCustomLogSourceRequest AWS API Documentation
1005
+ #
1006
+ class DeleteCustomLogSourceRequest < Struct.new(
1007
+ :source_name,
1008
+ :source_version)
772
1009
  SENSITIVE = []
773
1010
  include Aws::Structure
774
1011
  end
775
1012
 
1013
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteCustomLogSourceResponse AWS API Documentation
1014
+ #
1015
+ class DeleteCustomLogSourceResponse < Aws::EmptyStructure; end
1016
+
776
1017
  # @api private
777
1018
  #
778
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDatalakeAutoEnableRequest AWS API Documentation
1019
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteDataLakeExceptionSubscriptionRequest AWS API Documentation
779
1020
  #
780
- class GetDatalakeAutoEnableRequest < Aws::EmptyStructure; end
1021
+ class DeleteDataLakeExceptionSubscriptionRequest < Aws::EmptyStructure; end
781
1022
 
782
- # @!attribute [rw] auto_enable_new_accounts
783
- # The configuration for new accounts.
784
- # @return [Array<Types::AutoEnableNewRegionConfiguration>]
1023
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteDataLakeExceptionSubscriptionResponse AWS API Documentation
1024
+ #
1025
+ class DeleteDataLakeExceptionSubscriptionResponse < Aws::EmptyStructure; end
1026
+
1027
+ # @!attribute [rw] auto_enable_new_account
1028
+ # Removes the automatic enablement of configuration settings for new
1029
+ # member accounts in Security Lake.
1030
+ # @return [Array<Types::DataLakeAutoEnableNewAccountConfiguration>]
785
1031
  #
786
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDatalakeAutoEnableResponse AWS API Documentation
1032
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteDataLakeOrganizationConfigurationRequest AWS API Documentation
787
1033
  #
788
- class GetDatalakeAutoEnableResponse < Struct.new(
789
- :auto_enable_new_accounts)
1034
+ class DeleteDataLakeOrganizationConfigurationRequest < Struct.new(
1035
+ :auto_enable_new_account)
790
1036
  SENSITIVE = []
791
1037
  include Aws::Structure
792
1038
  end
793
1039
 
794
- # @api private
1040
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteDataLakeOrganizationConfigurationResponse AWS API Documentation
1041
+ #
1042
+ class DeleteDataLakeOrganizationConfigurationResponse < Aws::EmptyStructure; end
1043
+
1044
+ # @!attribute [rw] regions
1045
+ # The list of Regions where Security Lake is enabled.
1046
+ # @return [Array<String>]
795
1047
  #
796
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDatalakeExceptionsExpiryRequest AWS API Documentation
1048
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteDataLakeRequest AWS API Documentation
797
1049
  #
798
- class GetDatalakeExceptionsExpiryRequest < Aws::EmptyStructure; end
1050
+ class DeleteDataLakeRequest < Struct.new(
1051
+ :regions)
1052
+ SENSITIVE = []
1053
+ include Aws::Structure
1054
+ end
799
1055
 
800
- # @!attribute [rw] exception_message_expiry
801
- # The expiration period and time-to-live (TTL).
802
- # @return [Integer]
1056
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteDataLakeResponse AWS API Documentation
1057
+ #
1058
+ class DeleteDataLakeResponse < Aws::EmptyStructure; end
1059
+
1060
+ # @!attribute [rw] subscriber_id
1061
+ # The ID of the Security Lake subscriber account.
1062
+ # @return [String]
1063
+ #
1064
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteSubscriberNotificationRequest AWS API Documentation
1065
+ #
1066
+ class DeleteSubscriberNotificationRequest < Struct.new(
1067
+ :subscriber_id)
1068
+ SENSITIVE = []
1069
+ include Aws::Structure
1070
+ end
1071
+
1072
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteSubscriberNotificationResponse AWS API Documentation
1073
+ #
1074
+ class DeleteSubscriberNotificationResponse < Aws::EmptyStructure; end
1075
+
1076
+ # @!attribute [rw] subscriber_id
1077
+ # A value created by Security Lake that uniquely identifies your
1078
+ # `DeleteSubscriber` API request.
1079
+ # @return [String]
803
1080
  #
804
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDatalakeExceptionsExpiryResponse AWS API Documentation
1081
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteSubscriberRequest AWS API Documentation
805
1082
  #
806
- class GetDatalakeExceptionsExpiryResponse < Struct.new(
807
- :exception_message_expiry)
1083
+ class DeleteSubscriberRequest < Struct.new(
1084
+ :subscriber_id)
808
1085
  SENSITIVE = []
809
1086
  include Aws::Structure
810
1087
  end
811
1088
 
1089
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeleteSubscriberResponse AWS API Documentation
1090
+ #
1091
+ class DeleteSubscriberResponse < Aws::EmptyStructure; end
1092
+
812
1093
  # @api private
813
1094
  #
814
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDatalakeExceptionsSubscriptionRequest AWS API Documentation
1095
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeregisterDataLakeDelegatedAdministratorRequest AWS API Documentation
815
1096
  #
816
- class GetDatalakeExceptionsSubscriptionRequest < Aws::EmptyStructure; end
1097
+ class DeregisterDataLakeDelegatedAdministratorRequest < Aws::EmptyStructure; end
817
1098
 
818
- # @!attribute [rw] protocol_and_notification_endpoint
819
- # Retrieves the exception notification subscription information.
820
- # @return [Types::ProtocolAndNotificationEndpoint]
1099
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/DeregisterDataLakeDelegatedAdministratorResponse AWS API Documentation
821
1100
  #
822
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDatalakeExceptionsSubscriptionResponse AWS API Documentation
1101
+ class DeregisterDataLakeDelegatedAdministratorResponse < Aws::EmptyStructure; end
1102
+
1103
+ # @api private
1104
+ #
1105
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDataLakeExceptionSubscriptionRequest AWS API Documentation
1106
+ #
1107
+ class GetDataLakeExceptionSubscriptionRequest < Aws::EmptyStructure; end
1108
+
1109
+ # @!attribute [rw] exception_time_to_live
1110
+ # The expiration period and time-to-live (TTL).
1111
+ # @return [Integer]
1112
+ #
1113
+ # @!attribute [rw] notification_endpoint
1114
+ # The Amazon Web Services account where you receive exception
1115
+ # notifications.
1116
+ # @return [String]
823
1117
  #
824
- class GetDatalakeExceptionsSubscriptionResponse < Struct.new(
825
- :protocol_and_notification_endpoint)
1118
+ # @!attribute [rw] subscription_protocol
1119
+ # The subscription protocol to which exception notifications are
1120
+ # posted.
1121
+ # @return [String]
1122
+ #
1123
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDataLakeExceptionSubscriptionResponse AWS API Documentation
1124
+ #
1125
+ class GetDataLakeExceptionSubscriptionResponse < Struct.new(
1126
+ :exception_time_to_live,
1127
+ :notification_endpoint,
1128
+ :subscription_protocol)
826
1129
  SENSITIVE = []
827
1130
  include Aws::Structure
828
1131
  end
829
1132
 
830
1133
  # @api private
831
1134
  #
832
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDatalakeRequest AWS API Documentation
1135
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDataLakeOrganizationConfigurationRequest AWS API Documentation
833
1136
  #
834
- class GetDatalakeRequest < Aws::EmptyStructure; end
1137
+ class GetDataLakeOrganizationConfigurationRequest < Aws::EmptyStructure; end
835
1138
 
836
- # @!attribute [rw] configurations
837
- # Retrieves the Security Lake configuration object.
838
- # @return [Hash<String,Types::LakeConfigurationResponse>]
1139
+ # @!attribute [rw] auto_enable_new_account
1140
+ # The configuration for new accounts.
1141
+ # @return [Array<Types::DataLakeAutoEnableNewAccountConfiguration>]
839
1142
  #
840
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDatalakeResponse AWS API Documentation
1143
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDataLakeOrganizationConfigurationResponse AWS API Documentation
841
1144
  #
842
- class GetDatalakeResponse < Struct.new(
843
- :configurations)
1145
+ class GetDataLakeOrganizationConfigurationResponse < Struct.new(
1146
+ :auto_enable_new_account)
844
1147
  SENSITIVE = []
845
1148
  include Aws::Structure
846
1149
  end
847
1150
 
848
- # @!attribute [rw] account_set
1151
+ # @!attribute [rw] accounts
849
1152
  # The Amazon Web Services account ID for which a static snapshot of
850
1153
  # the current Amazon Web Services Region, including enabled accounts
851
1154
  # and log sources, is retrieved.
852
1155
  # @return [Array<String>]
853
1156
  #
854
- # @!attribute [rw] max_account_results
1157
+ # @!attribute [rw] max_results
855
1158
  # The maximum limit of accounts for which the static snapshot of the
856
1159
  # current Region, including enabled accounts and log sources, is
857
1160
  # retrieved.
@@ -867,19 +1170,29 @@ module Aws::SecurityLake
867
1170
  # pagination token will return an HTTP 400 InvalidToken error.
868
1171
  # @return [String]
869
1172
  #
870
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDatalakeStatusRequest AWS API Documentation
1173
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDataLakeSourcesRequest AWS API Documentation
871
1174
  #
872
- class GetDatalakeStatusRequest < Struct.new(
873
- :account_set,
874
- :max_account_results,
1175
+ class GetDataLakeSourcesRequest < Struct.new(
1176
+ :accounts,
1177
+ :max_results,
875
1178
  :next_token)
876
1179
  SENSITIVE = []
877
1180
  include Aws::Structure
878
1181
  end
879
1182
 
880
- # @!attribute [rw] account_sources_list
1183
+ # @!attribute [rw] data_lake_arn
1184
+ # The Amazon Resource Name (ARN) created by you to provide to the
1185
+ # subscriber. For more information about ARNs and how to use them in
1186
+ # policies, see the [Amazon Security Lake User Guide][1].
1187
+ #
1188
+ #
1189
+ #
1190
+ # [1]: https://docs.aws.amazon.com/security-lake/latest/userguide/subscriber-management.html
1191
+ # @return [String]
1192
+ #
1193
+ # @!attribute [rw] data_lake_sources
881
1194
  # The list of enabled accounts and enabled sources.
882
- # @return [Array<Types::AccountSources>]
1195
+ # @return [Array<Types::DataLakeSource>]
883
1196
  #
884
1197
  # @!attribute [rw] next_token
885
1198
  # Lists if there are more results available. The value of nextToken is
@@ -891,16 +1204,17 @@ module Aws::SecurityLake
891
1204
  # pagination token will return an HTTP 400 InvalidToken error.
892
1205
  # @return [String]
893
1206
  #
894
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDatalakeStatusResponse AWS API Documentation
1207
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetDataLakeSourcesResponse AWS API Documentation
895
1208
  #
896
- class GetDatalakeStatusResponse < Struct.new(
897
- :account_sources_list,
1209
+ class GetDataLakeSourcesResponse < Struct.new(
1210
+ :data_lake_arn,
1211
+ :data_lake_sources,
898
1212
  :next_token)
899
1213
  SENSITIVE = []
900
1214
  include Aws::Structure
901
1215
  end
902
1216
 
903
- # @!attribute [rw] id
1217
+ # @!attribute [rw] subscriber_id
904
1218
  # A value created by Amazon Security Lake that uniquely identifies
905
1219
  # your `GetSubscriber` API request.
906
1220
  # @return [String]
@@ -908,13 +1222,13 @@ module Aws::SecurityLake
908
1222
  # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetSubscriberRequest AWS API Documentation
909
1223
  #
910
1224
  class GetSubscriberRequest < Struct.new(
911
- :id)
1225
+ :subscriber_id)
912
1226
  SENSITIVE = []
913
1227
  include Aws::Structure
914
1228
  end
915
1229
 
916
1230
  # @!attribute [rw] subscriber
917
- # The subscription information for the specified subscription ID.
1231
+ # The subscriber information for the specified subscriber ID.
918
1232
  # @return [Types::SubscriberResource]
919
1233
  #
920
1234
  # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/GetSubscriberResponse AWS API Documentation
@@ -925,152 +1239,65 @@ module Aws::SecurityLake
925
1239
  include Aws::Structure
926
1240
  end
927
1241
 
928
- # Internal service exceptions are sometimes caused by transient issues.
929
- # Before you start troubleshooting, perform the operation again.
1242
+ # The configurations for HTTPS subscriber notification.
930
1243
  #
931
- # @!attribute [rw] message
1244
+ # @!attribute [rw] authorization_api_key_name
1245
+ # The key name for the notification subscription.
932
1246
  # @return [String]
933
1247
  #
934
- # @!attribute [rw] retry_after_seconds
935
- # Retry the request after the specified time.
936
- # @return [Integer]
937
- #
938
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/InternalServerException AWS API Documentation
939
- #
940
- class InternalServerException < Struct.new(
941
- :message,
942
- :retry_after_seconds)
943
- SENSITIVE = []
944
- include Aws::Structure
945
- end
946
-
947
- # The request was rejected because a value that's not valid or is out
948
- # of range was supplied for an input parameter.
949
- #
950
- # @!attribute [rw] message
1248
+ # @!attribute [rw] authorization_api_key_value
1249
+ # The key value for the notification subscription.
951
1250
  # @return [String]
952
1251
  #
953
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/InvalidInputException AWS API Documentation
954
- #
955
- class InvalidInputException < Struct.new(
956
- :message)
957
- SENSITIVE = []
958
- include Aws::Structure
959
- end
960
-
961
- # Provides details of Amazon Security Lake configuration object.
962
- #
963
- # @!attribute [rw] encryption_key
964
- # The type of encryption key used by Amazon Security Lake to encrypt
965
- # the Security Lake configuration object.
1252
+ # @!attribute [rw] endpoint
1253
+ # The subscription endpoint in Security Lake. If you prefer
1254
+ # notification with an HTTPs endpoint, populate this field.
966
1255
  # @return [String]
967
1256
  #
968
- # @!attribute [rw] replication_destination_regions
969
- # Replication enables automatic, asynchronous copying of objects
970
- # across Amazon S3 buckets. Amazon S3 buckets that are configured for
971
- # object replication can be owned by the same Amazon Web Services
972
- # account or by different accounts. You can replicate objects to a
973
- # single destination bucket or to multiple destination buckets. The
974
- # destination buckets can be in different Amazon Web Services Regions
975
- # or within the same Region as the source bucket.
1257
+ # @!attribute [rw] http_method
1258
+ # The HTTPS method used for the notification subscription.
1259
+ # @return [String]
976
1260
  #
977
- # Set up one or more rollup Regions by providing the Region or Regions
978
- # that should contribute to the central rollup Region.
979
- # @return [Array<String>]
1261
+ # @!attribute [rw] target_role_arn
1262
+ # The Amazon Resource Name (ARN) of the EventBridge API destinations
1263
+ # IAM role that you created. For more information about ARNs and how
1264
+ # to use them in policies, see [Managing data access][1] and [Amazon
1265
+ # Web Services Managed Policies][2] in the Amazon Security Lake User
1266
+ # Guide.
980
1267
  #
981
- # @!attribute [rw] replication_role_arn
982
- # Replication settings for the Amazon S3 buckets. This parameter uses
983
- # the Identity and Access Management (IAM) role you created that is
984
- # managed by Security Lake, to ensure the replication setting is
985
- # correct.
986
- # @return [String]
987
1268
  #
988
- # @!attribute [rw] retention_settings
989
- # Retention settings for the destination Amazon S3 buckets.
990
- # @return [Array<Types::RetentionSetting>]
991
1269
  #
992
- # @!attribute [rw] tags_map
993
- # A tag is a label that you assign to an Amazon Web Services resource.
994
- # Each tag consists of a key and an optional value, both of which you
995
- # define.
996
- # @return [Hash<String,String>]
1270
+ # [1]: https://docs.aws.amazon.com//security-lake/latest/userguide/subscriber-data-access.html
1271
+ # [2]: https://docs.aws.amazon.com/security-lake/latest/userguide/security-iam-awsmanpol.html
1272
+ # @return [String]
997
1273
  #
998
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/LakeConfigurationRequest AWS API Documentation
1274
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/HttpsNotificationConfiguration AWS API Documentation
999
1275
  #
1000
- class LakeConfigurationRequest < Struct.new(
1001
- :encryption_key,
1002
- :replication_destination_regions,
1003
- :replication_role_arn,
1004
- :retention_settings,
1005
- :tags_map)
1276
+ class HttpsNotificationConfiguration < Struct.new(
1277
+ :authorization_api_key_name,
1278
+ :authorization_api_key_value,
1279
+ :endpoint,
1280
+ :http_method,
1281
+ :target_role_arn)
1006
1282
  SENSITIVE = []
1007
1283
  include Aws::Structure
1008
1284
  end
1009
1285
 
1010
- # Provides details of Amazon Security Lake lake configuration object.
1011
- #
1012
- # @!attribute [rw] encryption_key
1013
- # The type of encryption key used by secure the Security Lake
1014
- # configuration object.
1015
- # @return [String]
1016
- #
1017
- # @!attribute [rw] replication_destination_regions
1018
- # Replication enables automatic, asynchronous copying of objects
1019
- # across Amazon S3 buckets. Amazon S3 buckets that are configured for
1020
- # object replication can be owned by the same Amazon Web Services
1021
- # account or by different accounts. You can replicate objects to a
1022
- # single destination bucket or to multiple destination buckets. The
1023
- # destination buckets can be in different Amazon Web Services Regions
1024
- # or within the same Region as the source bucket.
1025
- #
1026
- # Set up one or more rollup Regions by providing the Region or Regions
1027
- # that should contribute to the central rollup Region.
1028
- # @return [Array<String>]
1029
- #
1030
- # @!attribute [rw] replication_role_arn
1031
- # Replication settings for the Amazon S3 buckets. This parameter uses
1032
- # the IAM role you created that is managed by Security Lake, to ensure
1033
- # the replication setting is correct.
1034
- # @return [String]
1035
- #
1036
- # @!attribute [rw] retention_settings
1037
- # Retention settings for the destination Amazon S3 buckets.
1038
- # @return [Array<Types::RetentionSetting>]
1039
- #
1040
- # @!attribute [rw] s3_bucket_arn
1041
- # Amazon Resource Names (ARNs) uniquely identify Amazon Web Services
1042
- # resources. Security Lake requires an ARN when you need to specify a
1043
- # resource unambiguously across all of Amazon Web Services, such as in
1044
- # IAM policies, Amazon Relational Database Service (Amazon RDS) tags,
1045
- # and API calls.
1046
- # @return [String]
1286
+ # Internal service exceptions are sometimes caused by transient issues.
1287
+ # Before you start troubleshooting, perform the operation again.
1047
1288
  #
1048
- # @!attribute [rw] status
1049
- # Retrieves the status of the configuration operation for an account
1050
- # in Amazon Security Lake.
1289
+ # @!attribute [rw] message
1051
1290
  # @return [String]
1052
1291
  #
1053
- # @!attribute [rw] tags_map
1054
- # A tag is a label that you assign to an Amazon Web Services resource.
1055
- # Each tag consists of a key and an optional value, both of which you
1056
- # define.
1057
- # @return [Hash<String,String>]
1058
- #
1059
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/LakeConfigurationResponse AWS API Documentation
1292
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/InternalServerException AWS API Documentation
1060
1293
  #
1061
- class LakeConfigurationResponse < Struct.new(
1062
- :encryption_key,
1063
- :replication_destination_regions,
1064
- :replication_role_arn,
1065
- :retention_settings,
1066
- :s3_bucket_arn,
1067
- :status,
1068
- :tags_map)
1294
+ class InternalServerException < Struct.new(
1295
+ :message)
1069
1296
  SENSITIVE = []
1070
1297
  include Aws::Structure
1071
1298
  end
1072
1299
 
1073
- # @!attribute [rw] max_failures
1300
+ # @!attribute [rw] max_results
1074
1301
  # List the maximum number of failures in Security Lake.
1075
1302
  # @return [Integer]
1076
1303
  #
@@ -1084,21 +1311,25 @@ module Aws::SecurityLake
1084
1311
  # pagination token will return an HTTP 400 InvalidToken error.
1085
1312
  # @return [String]
1086
1313
  #
1087
- # @!attribute [rw] region_set
1314
+ # @!attribute [rw] regions
1088
1315
  # List the Amazon Web Services Regions from which exceptions are
1089
1316
  # retrieved.
1090
1317
  # @return [Array<String>]
1091
1318
  #
1092
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ListDatalakeExceptionsRequest AWS API Documentation
1319
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ListDataLakeExceptionsRequest AWS API Documentation
1093
1320
  #
1094
- class ListDatalakeExceptionsRequest < Struct.new(
1095
- :max_failures,
1321
+ class ListDataLakeExceptionsRequest < Struct.new(
1322
+ :max_results,
1096
1323
  :next_token,
1097
- :region_set)
1324
+ :regions)
1098
1325
  SENSITIVE = []
1099
1326
  include Aws::Structure
1100
1327
  end
1101
1328
 
1329
+ # @!attribute [rw] exceptions
1330
+ # Lists the failures that cannot be retried in the current Region.
1331
+ # @return [Array<Types::DataLakeException>]
1332
+ #
1102
1333
  # @!attribute [rw] next_token
1103
1334
  # List if there are more results available. The value of nextToken is
1104
1335
  # a unique pagination token for each page. Repeat the call using the
@@ -1109,41 +1340,43 @@ module Aws::SecurityLake
1109
1340
  # pagination token will return an HTTP 400 InvalidToken error.
1110
1341
  # @return [String]
1111
1342
  #
1112
- # @!attribute [rw] non_retryable_failures
1113
- # Lists the failures that cannot be retried in the current Region.
1114
- # @return [Array<Types::FailuresResponse>]
1115
- #
1116
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ListDatalakeExceptionsResponse AWS API Documentation
1343
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ListDataLakeExceptionsResponse AWS API Documentation
1117
1344
  #
1118
- class ListDatalakeExceptionsResponse < Struct.new(
1119
- :next_token,
1120
- :non_retryable_failures)
1345
+ class ListDataLakeExceptionsResponse < Struct.new(
1346
+ :exceptions,
1347
+ :next_token)
1121
1348
  SENSITIVE = []
1122
1349
  include Aws::Structure
1123
1350
  end
1124
1351
 
1125
- # @!attribute [rw] input_order
1126
- # Lists the log sources in input order, namely Region, source type,
1127
- # and member account.
1352
+ # @!attribute [rw] regions
1353
+ # The list of regions where Security Lake is enabled.
1128
1354
  # @return [Array<String>]
1129
1355
  #
1130
- # @!attribute [rw] list_all_dimensions
1131
- # List the view of log sources for enabled Amazon Security Lake
1132
- # accounts for specific Amazon Web Services sources from specific
1133
- # accounts and specific Regions.
1134
- # @return [Hash<String,Hash<String,Array<String>>>]
1356
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ListDataLakesRequest AWS API Documentation
1135
1357
  #
1136
- # @!attribute [rw] list_single_dimension
1137
- # List the view of log sources for enabled Security Lake accounts for
1138
- # all Amazon Web Services sources from specific accounts or specific
1139
- # Regions.
1140
- # @return [Array<String>]
1358
+ class ListDataLakesRequest < Struct.new(
1359
+ :regions)
1360
+ SENSITIVE = []
1361
+ include Aws::Structure
1362
+ end
1363
+
1364
+ # @!attribute [rw] data_lakes
1365
+ # Retrieves the Security Lake configuration object.
1366
+ # @return [Array<Types::DataLakeResource>]
1141
1367
  #
1142
- # @!attribute [rw] list_two_dimensions
1143
- # Lists the view of log sources for enabled Security Lake accounts for
1144
- # specific Amazon Web Services sources from specific accounts or
1145
- # specific Regions.
1146
- # @return [Hash<String,Array<String>>]
1368
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ListDataLakesResponse AWS API Documentation
1369
+ #
1370
+ class ListDataLakesResponse < Struct.new(
1371
+ :data_lakes)
1372
+ SENSITIVE = []
1373
+ include Aws::Structure
1374
+ end
1375
+
1376
+ # @!attribute [rw] accounts
1377
+ # The list of Amazon Web Services accounts for which log sources are
1378
+ # displayed.
1379
+ # @return [Array<String>]
1147
1380
  #
1148
1381
  # @!attribute [rw] max_results
1149
1382
  # The maximum number of accounts for which the log sources are
@@ -1155,15 +1388,22 @@ module Aws::SecurityLake
1155
1388
  # repeat the call using the returned token to retrieve the next page.
1156
1389
  # @return [String]
1157
1390
  #
1391
+ # @!attribute [rw] regions
1392
+ # The list of regions for which log sources are displayed.
1393
+ # @return [Array<String>]
1394
+ #
1395
+ # @!attribute [rw] sources
1396
+ # The list of sources for which log sources are displayed.
1397
+ # @return [Array<Types::LogSourceResource>]
1398
+ #
1158
1399
  # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ListLogSourcesRequest AWS API Documentation
1159
1400
  #
1160
1401
  class ListLogSourcesRequest < Struct.new(
1161
- :input_order,
1162
- :list_all_dimensions,
1163
- :list_single_dimension,
1164
- :list_two_dimensions,
1402
+ :accounts,
1165
1403
  :max_results,
1166
- :next_token)
1404
+ :next_token,
1405
+ :regions,
1406
+ :sources)
1167
1407
  SENSITIVE = []
1168
1408
  include Aws::Structure
1169
1409
  end
@@ -1173,15 +1413,16 @@ module Aws::SecurityLake
1173
1413
  # repeat the call using the returned token to retrieve the next page.
1174
1414
  # @return [String]
1175
1415
  #
1176
- # @!attribute [rw] region_source_types_accounts_list
1177
- # Lists the log sources by Regions for enabled Security Lake accounts.
1178
- # @return [Array<Hash<String,Hash<String,Array<String>>>>]
1416
+ # @!attribute [rw] sources
1417
+ # The list of log sources in your organization that send data to the
1418
+ # data lake.
1419
+ # @return [Array<Types::LogSource>]
1179
1420
  #
1180
1421
  # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ListLogSourcesResponse AWS API Documentation
1181
1422
  #
1182
1423
  class ListLogSourcesResponse < Struct.new(
1183
1424
  :next_token,
1184
- :region_source_types_accounts_list)
1425
+ :sources)
1185
1426
  SENSITIVE = []
1186
1427
  include Aws::Structure
1187
1428
  end
@@ -1224,182 +1465,144 @@ module Aws::SecurityLake
1224
1465
  include Aws::Structure
1225
1466
  end
1226
1467
 
1227
- # Retrieves the Logs status for the Amazon Security Lake account.
1468
+ # Amazon Security Lake can collect logs and events from
1469
+ # natively-supported Amazon Web Services services and custom sources.
1228
1470
  #
1229
- # @!attribute [rw] health_status
1230
- # The health status of services, including error codes and patterns.
1471
+ # @!attribute [rw] account
1472
+ # Specify the account from which you want to collect logs.
1231
1473
  # @return [String]
1232
1474
  #
1233
- # @!attribute [rw] path_to_logs
1234
- # Defines path the stored logs are available which has information on
1235
- # your systems, applications, and services.
1475
+ # @!attribute [rw] region
1476
+ # Specify the Regions from which you want to collect logs.
1236
1477
  # @return [String]
1237
1478
  #
1238
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/LogsStatus AWS API Documentation
1479
+ # @!attribute [rw] sources
1480
+ # Specify the sources from which you want to collect logs.
1481
+ # @return [Array<Types::LogSourceResource>]
1482
+ #
1483
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/LogSource AWS API Documentation
1239
1484
  #
1240
- class LogsStatus < Struct.new(
1241
- :health_status,
1242
- :path_to_logs)
1485
+ class LogSource < Struct.new(
1486
+ :account,
1487
+ :region,
1488
+ :sources)
1243
1489
  SENSITIVE = []
1244
1490
  include Aws::Structure
1245
1491
  end
1246
1492
 
1247
- # Protocol used in Amazon Security Lake that dictates how notifications
1248
- # are posted at the endpoint.
1493
+ # The supported source types from which logs and events are collected in
1494
+ # Amazon Security Lake. For the list of supported Amazon Web Services,
1495
+ # see the [Amazon Security Lake User Guide][1].
1249
1496
  #
1250
- # @!attribute [rw] endpoint
1251
- # The account that is subscribed to receive exception notifications.
1252
- # @return [String]
1253
1497
  #
1254
- # @!attribute [rw] protocol
1255
- # The protocol to which notification messages are posted.
1256
- # @return [String]
1257
1498
  #
1258
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ProtocolAndNotificationEndpoint AWS API Documentation
1499
+ # [1]: https://docs.aws.amazon.com/security-lake/latest/userguide/internal-sources.html
1259
1500
  #
1260
- class ProtocolAndNotificationEndpoint < Struct.new(
1261
- :endpoint,
1262
- :protocol)
1263
- SENSITIVE = []
1264
- include Aws::Structure
1265
- end
1266
-
1267
- # The resource could not be found.
1501
+ # @note LogSourceResource is a union - when making an API calls you must set exactly one of the members.
1268
1502
  #
1269
- # @!attribute [rw] message
1270
- # @return [String]
1503
+ # @note LogSourceResource is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of LogSourceResource corresponding to the set member.
1271
1504
  #
1272
- # @!attribute [rw] resource_id
1273
- # The ID of the resource for which the type of resource could not be
1274
- # found.
1275
- # @return [String]
1505
+ # @!attribute [rw] aws_log_source
1506
+ # Amazon Security Lake supports log and event collection for natively
1507
+ # supported Amazon Web Services.
1508
+ # @return [Types::AwsLogSourceResource]
1276
1509
  #
1277
- # @!attribute [rw] resource_type
1278
- # The type of the resource that could not be found.
1279
- # @return [String]
1510
+ # @!attribute [rw] custom_log_source
1511
+ # Amazon Security Lake supports custom source types. For a detailed
1512
+ # list, see the Amazon Security Lake User Guide.
1513
+ # @return [Types::CustomLogSourceResource]
1280
1514
  #
1281
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ResourceNotFoundException AWS API Documentation
1515
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/LogSourceResource AWS API Documentation
1282
1516
  #
1283
- class ResourceNotFoundException < Struct.new(
1284
- :message,
1285
- :resource_id,
1286
- :resource_type)
1517
+ class LogSourceResource < Struct.new(
1518
+ :aws_log_source,
1519
+ :custom_log_source,
1520
+ :unknown)
1287
1521
  SENSITIVE = []
1288
1522
  include Aws::Structure
1523
+ include Aws::Structure::Union
1524
+
1525
+ class AwsLogSource < LogSourceResource; end
1526
+ class CustomLogSource < LogSourceResource; end
1527
+ class Unknown < LogSourceResource; end
1289
1528
  end
1290
1529
 
1291
- # Retention settings for the destination Amazon S3 buckets in Amazon
1292
- # Security Lake.
1530
+ # Specify the configurations you want to use for subscriber notification
1531
+ # to notify the subscriber when new data is written to the data lake for
1532
+ # sources that the subscriber consumes in Security Lake.
1293
1533
  #
1294
- # @!attribute [rw] retention_period
1295
- # The retention period specifies a fixed period of time during which
1296
- # the Security Lake object remains locked. You can specify the
1297
- # retention period in days for one or more sources.
1298
- # @return [Integer]
1534
+ # @note NotificationConfiguration is a union - when making an API calls you must set exactly one of the members.
1299
1535
  #
1300
- # @!attribute [rw] storage_class
1301
- # The range of storage classes that you can choose from based on the
1302
- # data access, resiliency, and cost requirements of your workloads.
1303
- # @return [String]
1536
+ # @!attribute [rw] https_notification_configuration
1537
+ # The configurations for HTTPS subscriber notification.
1538
+ # @return [Types::HttpsNotificationConfiguration]
1304
1539
  #
1305
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/RetentionSetting AWS API Documentation
1540
+ # @!attribute [rw] sqs_notification_configuration
1541
+ # The configurations for SQS subscriber notification.
1542
+ # @return [Types::SqsNotificationConfiguration]
1306
1543
  #
1307
- class RetentionSetting < Struct.new(
1308
- :retention_period,
1309
- :storage_class)
1544
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/NotificationConfiguration AWS API Documentation
1545
+ #
1546
+ class NotificationConfiguration < Struct.new(
1547
+ :https_notification_configuration,
1548
+ :sqs_notification_configuration,
1549
+ :unknown)
1310
1550
  SENSITIVE = []
1311
1551
  include Aws::Structure
1552
+ include Aws::Structure::Union
1553
+
1554
+ class HttpsNotificationConfiguration < NotificationConfiguration; end
1555
+ class SqsNotificationConfiguration < NotificationConfiguration; end
1556
+ class Unknown < NotificationConfiguration; end
1312
1557
  end
1313
1558
 
1314
- # Provides an extension of the AmazonServiceException for errors
1315
- # reported by Amazon S3 while processing a request. In particular, this
1316
- # class provides access to the Amazon S3 extended request ID. If Amazon
1317
- # S3 is incorrectly handling a request and you need to contact Amazon,
1318
- # this extended request ID may provide useful debugging information.
1319
- #
1320
- # @!attribute [rw] message
1559
+ # @!attribute [rw] account_id
1560
+ # The Amazon Web Services account ID of the Security Lake delegated
1561
+ # administrator.
1321
1562
  # @return [String]
1322
1563
  #
1323
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/S3Exception AWS API Documentation
1564
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/RegisterDataLakeDelegatedAdministratorRequest AWS API Documentation
1324
1565
  #
1325
- class S3Exception < Struct.new(
1326
- :message)
1566
+ class RegisterDataLakeDelegatedAdministratorRequest < Struct.new(
1567
+ :account_id)
1327
1568
  SENSITIVE = []
1328
1569
  include Aws::Structure
1329
1570
  end
1330
1571
 
1331
- # You have exceeded your service quota. To perform the requested action,
1332
- # remove some of the relevant resources, or use Service Quotas to
1333
- # request a service quota increase.
1572
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/RegisterDataLakeDelegatedAdministratorResponse AWS API Documentation
1334
1573
  #
1335
- # @!attribute [rw] message
1336
- # @return [String]
1574
+ class RegisterDataLakeDelegatedAdministratorResponse < Aws::EmptyStructure; end
1575
+
1576
+ # The resource could not be found.
1337
1577
  #
1338
- # @!attribute [rw] quota_code
1339
- # That the rate of requests to Security Lake is exceeding the request
1340
- # quotas for your Amazon Web Services account.
1578
+ # @!attribute [rw] message
1341
1579
  # @return [String]
1342
1580
  #
1343
- # @!attribute [rw] resource_id
1344
- # The ID of the resource that exceeds the service quota.
1581
+ # @!attribute [rw] resource_name
1582
+ # The name of the resource that could not be found.
1345
1583
  # @return [String]
1346
1584
  #
1347
1585
  # @!attribute [rw] resource_type
1348
- # The type of the resource that exceeds the service quota.
1349
- # @return [String]
1350
- #
1351
- # @!attribute [rw] service_code
1352
- # The code for the service in Service Quotas.
1586
+ # The type of the resource that could not be found.
1353
1587
  # @return [String]
1354
1588
  #
1355
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ServiceQuotaExceededException AWS API Documentation
1589
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ResourceNotFoundException AWS API Documentation
1356
1590
  #
1357
- class ServiceQuotaExceededException < Struct.new(
1591
+ class ResourceNotFoundException < Struct.new(
1358
1592
  :message,
1359
- :quota_code,
1360
- :resource_id,
1361
- :resource_type,
1362
- :service_code)
1593
+ :resource_name,
1594
+ :resource_type)
1363
1595
  SENSITIVE = []
1364
1596
  include Aws::Structure
1365
1597
  end
1366
1598
 
1367
- # The supported source types from which logs and events are collected in
1368
- # Amazon Security Lake. For the list of supported Amazon Web Services,
1369
- # see the [Amazon Security Lake User Guide][1].
1370
- #
1371
- #
1372
- #
1373
- # [1]: https://docs.aws.amazon.com/security-lake/latest/userguide/internal-sources.html
1599
+ # The configurations for SQS subscriber notification.
1374
1600
  #
1375
- # @note SourceType is a union - when making an API calls you must set exactly one of the members.
1376
- #
1377
- # @note SourceType is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of SourceType corresponding to the set member.
1378
- #
1379
- # @!attribute [rw] aws_source_type
1380
- # Amazon Security Lake supports log and event collection for natively
1381
- # supported Amazon Web Services.
1382
- # @return [String]
1383
- #
1384
- # @!attribute [rw] custom_source_type
1385
- # Amazon Security Lake supports custom source types. For a detailed
1386
- # list, see the Amazon Security Lake User Guide.
1387
- # @return [String]
1601
+ # @api private
1388
1602
  #
1389
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/SourceType AWS API Documentation
1603
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/SqsNotificationConfiguration AWS API Documentation
1390
1604
  #
1391
- class SourceType < Struct.new(
1392
- :aws_source_type,
1393
- :custom_source_type,
1394
- :unknown)
1395
- SENSITIVE = []
1396
- include Aws::Structure
1397
- include Aws::Structure::Union
1398
-
1399
- class AwsSourceType < SourceType; end
1400
- class CustomSourceType < SourceType; end
1401
- class Unknown < SourceType; end
1402
- end
1605
+ class SqsNotificationConfiguration < Aws::EmptyStructure; end
1403
1606
 
1404
1607
  # Provides details about the Amazon Security Lake account subscription.
1405
1608
  # Subscribers are notified of new objects for a source as the data is
@@ -1415,20 +1618,21 @@ module Aws::SecurityLake
1415
1618
  # This subscription type is defined as `LAKEFORMATION`.
1416
1619
  # @return [Array<String>]
1417
1620
  #
1418
- # @!attribute [rw] account_id
1419
- # The Amazon Web Services account ID you are using to create your
1420
- # Amazon Security Lake account.
1421
- # @return [String]
1422
- #
1423
1621
  # @!attribute [rw] created_at
1424
- # The date and time when the subscription was created.
1622
+ # The date and time when the subscriber was created.
1425
1623
  # @return [Time]
1426
1624
  #
1427
- # @!attribute [rw] external_id
1428
- # The external ID of the subscriber. The external ID lets the user
1429
- # that is assuming the role assert the circumstances in which they are
1430
- # operating. It also provides a way for the account owner to permit
1431
- # the role to be assumed only under specific circumstances.
1625
+ # @!attribute [rw] resource_share_arn
1626
+ # The Amazon Resource Name (ARN) which uniquely defines the AWS RAM
1627
+ # resource share. Before accepting the RAM resource share invitation,
1628
+ # you can view details related to the RAM resource share.
1629
+ #
1630
+ # This field is available only for Lake Formation subscribers created
1631
+ # after March 8, 2023.
1632
+ # @return [String]
1633
+ #
1634
+ # @!attribute [rw] resource_share_name
1635
+ # The name of the resource share.
1432
1636
  # @return [String]
1433
1637
  #
1434
1638
  # @!attribute [rw] role_arn
@@ -1440,64 +1644,64 @@ module Aws::SecurityLake
1440
1644
  # The ARN for the Amazon S3 bucket.
1441
1645
  # @return [String]
1442
1646
  #
1443
- # @!attribute [rw] sns_arn
1444
- # The ARN for the Amazon Simple Notification Service.
1445
- # @return [String]
1446
- #
1447
- # @!attribute [rw] source_types
1647
+ # @!attribute [rw] sources
1448
1648
  # Amazon Security Lake supports log and event collection for natively
1449
1649
  # supported Amazon Web Services. For more information, see the Amazon
1450
1650
  # Security Lake User Guide.
1451
- # @return [Array<Types::SourceType>]
1651
+ # @return [Array<Types::LogSourceResource>]
1652
+ #
1653
+ # @!attribute [rw] subscriber_arn
1654
+ # The subscriber ARN of the Amazon Security Lake subscriber account.
1655
+ # @return [String]
1452
1656
  #
1453
1657
  # @!attribute [rw] subscriber_description
1454
1658
  # The subscriber descriptions for a subscriber account. The
1455
1659
  # description for a subscriber includes `subscriberName`, `accountID`,
1456
- # `externalID`, and `subscriptionId`.
1660
+ # `externalID`, and `subscriberId`.
1457
1661
  # @return [String]
1458
1662
  #
1459
- # @!attribute [rw] subscriber_name
1460
- # The name of your Amazon Security Lake subscriber account.
1663
+ # @!attribute [rw] subscriber_endpoint
1664
+ # The subscriber endpoint to which exception messages are posted.
1461
1665
  # @return [String]
1462
1666
  #
1463
- # @!attribute [rw] subscription_endpoint
1464
- # The subscription endpoint to which exception messages are posted.
1667
+ # @!attribute [rw] subscriber_id
1668
+ # The subscriber ID of the Amazon Security Lake subscriber account.
1465
1669
  # @return [String]
1466
1670
  #
1467
- # @!attribute [rw] subscription_id
1468
- # The subscription ID of the Amazon Security Lake subscriber account.
1469
- # @return [String]
1671
+ # @!attribute [rw] subscriber_identity
1672
+ # The AWS identity used to access your data.
1673
+ # @return [Types::AwsIdentity]
1470
1674
  #
1471
- # @!attribute [rw] subscription_protocol
1472
- # The subscription protocol to which exception messages are posted.
1675
+ # @!attribute [rw] subscriber_name
1676
+ # The name of your Amazon Security Lake subscriber account.
1473
1677
  # @return [String]
1474
1678
  #
1475
- # @!attribute [rw] subscription_status
1476
- # The subscription status of the Amazon Security Lake subscriber
1679
+ # @!attribute [rw] subscriber_status
1680
+ # The subscriber status of the Amazon Security Lake subscriber
1477
1681
  # account.
1478
1682
  # @return [String]
1479
1683
  #
1480
1684
  # @!attribute [rw] updated_at
1481
- # The date and time when the subscription was created.
1685
+ # The date and time when the subscriber was last updated.
1482
1686
  # @return [Time]
1483
1687
  #
1484
1688
  # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/SubscriberResource AWS API Documentation
1485
1689
  #
1486
1690
  class SubscriberResource < Struct.new(
1487
1691
  :access_types,
1488
- :account_id,
1489
1692
  :created_at,
1490
- :external_id,
1693
+ :resource_share_arn,
1694
+ :resource_share_name,
1491
1695
  :role_arn,
1492
1696
  :s3_bucket_arn,
1493
- :sns_arn,
1494
- :source_types,
1697
+ :sources,
1698
+ :subscriber_arn,
1495
1699
  :subscriber_description,
1700
+ :subscriber_endpoint,
1701
+ :subscriber_id,
1702
+ :subscriber_identity,
1496
1703
  :subscriber_name,
1497
- :subscription_endpoint,
1498
- :subscription_id,
1499
- :subscription_protocol,
1500
- :subscription_status,
1704
+ :subscriber_status,
1501
1705
  :updated_at)
1502
1706
  SENSITIVE = []
1503
1707
  include Aws::Structure
@@ -1532,22 +1736,10 @@ module Aws::SecurityLake
1532
1736
  include Aws::Structure
1533
1737
  end
1534
1738
 
1535
- # @!attribute [rw] exception_message_expiry
1739
+ # @!attribute [rw] exception_time_to_live
1536
1740
  # The time-to-live (TTL) for the exception message to remain.
1537
1741
  # @return [Integer]
1538
1742
  #
1539
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateDatalakeExceptionsExpiryRequest AWS API Documentation
1540
- #
1541
- class UpdateDatalakeExceptionsExpiryRequest < Struct.new(
1542
- :exception_message_expiry)
1543
- SENSITIVE = []
1544
- include Aws::Structure
1545
- end
1546
-
1547
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateDatalakeExceptionsExpiryResponse AWS API Documentation
1548
- #
1549
- class UpdateDatalakeExceptionsExpiryResponse < Aws::EmptyStructure; end
1550
-
1551
1743
  # @!attribute [rw] notification_endpoint
1552
1744
  # The account that is subscribed to receive exception notifications.
1553
1745
  # @return [String]
@@ -1556,46 +1748,76 @@ module Aws::SecurityLake
1556
1748
  # The subscription protocol to which exception messages are posted.
1557
1749
  # @return [String]
1558
1750
  #
1559
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateDatalakeExceptionsSubscriptionRequest AWS API Documentation
1751
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateDataLakeExceptionSubscriptionRequest AWS API Documentation
1560
1752
  #
1561
- class UpdateDatalakeExceptionsSubscriptionRequest < Struct.new(
1753
+ class UpdateDataLakeExceptionSubscriptionRequest < Struct.new(
1754
+ :exception_time_to_live,
1562
1755
  :notification_endpoint,
1563
1756
  :subscription_protocol)
1564
1757
  SENSITIVE = []
1565
1758
  include Aws::Structure
1566
1759
  end
1567
1760
 
1568
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateDatalakeExceptionsSubscriptionResponse AWS API Documentation
1761
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateDataLakeExceptionSubscriptionResponse AWS API Documentation
1569
1762
  #
1570
- class UpdateDatalakeExceptionsSubscriptionResponse < Aws::EmptyStructure; end
1763
+ class UpdateDataLakeExceptionSubscriptionResponse < Aws::EmptyStructure; end
1571
1764
 
1572
1765
  # @!attribute [rw] configurations
1573
1766
  # Specify the Region or Regions that will contribute data to the
1574
1767
  # rollup region.
1575
- # @return [Hash<String,Types::LakeConfigurationRequest>]
1768
+ # @return [Array<Types::DataLakeConfiguration>]
1576
1769
  #
1577
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateDatalakeRequest AWS API Documentation
1770
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateDataLakeRequest AWS API Documentation
1578
1771
  #
1579
- class UpdateDatalakeRequest < Struct.new(
1772
+ class UpdateDataLakeRequest < Struct.new(
1580
1773
  :configurations)
1581
1774
  SENSITIVE = []
1582
1775
  include Aws::Structure
1583
1776
  end
1584
1777
 
1585
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateDatalakeResponse AWS API Documentation
1778
+ # @!attribute [rw] data_lakes
1779
+ # The created Security Lake configuration object.
1780
+ # @return [Array<Types::DataLakeResource>]
1781
+ #
1782
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateDataLakeResponse AWS API Documentation
1586
1783
  #
1587
- class UpdateDatalakeResponse < Aws::EmptyStructure; end
1784
+ class UpdateDataLakeResponse < Struct.new(
1785
+ :data_lakes)
1786
+ SENSITIVE = []
1787
+ include Aws::Structure
1788
+ end
1588
1789
 
1589
- # @!attribute [rw] external_id
1590
- # The external ID of the Security Lake account.
1790
+ # @!attribute [rw] configuration
1791
+ # The configuration for subscriber notification.
1792
+ # @return [Types::NotificationConfiguration]
1793
+ #
1794
+ # @!attribute [rw] subscriber_id
1795
+ # The subscription ID for which the subscription notification is
1796
+ # specified.
1591
1797
  # @return [String]
1592
1798
  #
1593
- # @!attribute [rw] id
1594
- # A value created by Security Lake that uniquely identifies your
1595
- # subscription.
1799
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateSubscriberNotificationRequest AWS API Documentation
1800
+ #
1801
+ class UpdateSubscriberNotificationRequest < Struct.new(
1802
+ :configuration,
1803
+ :subscriber_id)
1804
+ SENSITIVE = []
1805
+ include Aws::Structure
1806
+ end
1807
+
1808
+ # @!attribute [rw] subscriber_endpoint
1809
+ # The subscriber endpoint to which exception messages are posted.
1596
1810
  # @return [String]
1597
1811
  #
1598
- # @!attribute [rw] source_types
1812
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateSubscriberNotificationResponse AWS API Documentation
1813
+ #
1814
+ class UpdateSubscriberNotificationResponse < Struct.new(
1815
+ :subscriber_endpoint)
1816
+ SENSITIVE = []
1817
+ include Aws::Structure
1818
+ end
1819
+
1820
+ # @!attribute [rw] sources
1599
1821
  # The supported Amazon Web Services from which logs and events are
1600
1822
  # collected. For the list of supported Amazon Web Services, see the
1601
1823
  # [Amazon Security Lake User Guide][1].
@@ -1603,12 +1825,21 @@ module Aws::SecurityLake
1603
1825
  #
1604
1826
  #
1605
1827
  # [1]: https://docs.aws.amazon.com/security-lake/latest/userguide/internal-sources.html
1606
- # @return [Array<Types::SourceType>]
1828
+ # @return [Array<Types::LogSourceResource>]
1607
1829
  #
1608
1830
  # @!attribute [rw] subscriber_description
1609
1831
  # The description of the Security Lake account subscriber.
1610
1832
  # @return [String]
1611
1833
  #
1834
+ # @!attribute [rw] subscriber_id
1835
+ # A value created by Security Lake that uniquely identifies your
1836
+ # subscription.
1837
+ # @return [String]
1838
+ #
1839
+ # @!attribute [rw] subscriber_identity
1840
+ # The AWS identity used to access your data.
1841
+ # @return [Types::AwsIdentity]
1842
+ #
1612
1843
  # @!attribute [rw] subscriber_name
1613
1844
  # The name of the Security Lake account subscriber.
1614
1845
  # @return [String]
@@ -1616,17 +1847,17 @@ module Aws::SecurityLake
1616
1847
  # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateSubscriberRequest AWS API Documentation
1617
1848
  #
1618
1849
  class UpdateSubscriberRequest < Struct.new(
1619
- :external_id,
1620
- :id,
1621
- :source_types,
1850
+ :sources,
1622
1851
  :subscriber_description,
1852
+ :subscriber_id,
1853
+ :subscriber_identity,
1623
1854
  :subscriber_name)
1624
1855
  SENSITIVE = []
1625
1856
  include Aws::Structure
1626
1857
  end
1627
1858
 
1628
1859
  # @!attribute [rw] subscriber
1629
- # The account of the subscriber.
1860
+ # The updated subscriber information.
1630
1861
  # @return [Types::SubscriberResource]
1631
1862
  #
1632
1863
  # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateSubscriberResponse AWS API Documentation
@@ -1637,105 +1868,5 @@ module Aws::SecurityLake
1637
1868
  include Aws::Structure
1638
1869
  end
1639
1870
 
1640
- # @!attribute [rw] create_sqs
1641
- # Create a new subscription notification for the specified
1642
- # subscription ID in Amazon Security Lake.
1643
- # @return [Boolean]
1644
- #
1645
- # @!attribute [rw] https_api_key_name
1646
- # The key name for the subscription notification.
1647
- # @return [String]
1648
- #
1649
- # @!attribute [rw] https_api_key_value
1650
- # The key value for the subscription notification.
1651
- # @return [String]
1652
- #
1653
- # @!attribute [rw] https_method
1654
- # The HTTPS method used for the subscription notification.
1655
- # @return [String]
1656
- #
1657
- # @!attribute [rw] role_arn
1658
- # The Amazon Resource Name (ARN) specifying the role of the
1659
- # subscriber.
1660
- # @return [String]
1661
- #
1662
- # @!attribute [rw] subscription_endpoint
1663
- # The subscription endpoint in Security Lake.
1664
- # @return [String]
1665
- #
1666
- # @!attribute [rw] subscription_id
1667
- # The subscription ID for which the subscription notification is
1668
- # specified.
1669
- # @return [String]
1670
- #
1671
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateSubscriptionNotificationConfigurationRequest AWS API Documentation
1672
- #
1673
- class UpdateSubscriptionNotificationConfigurationRequest < Struct.new(
1674
- :create_sqs,
1675
- :https_api_key_name,
1676
- :https_api_key_value,
1677
- :https_method,
1678
- :role_arn,
1679
- :subscription_endpoint,
1680
- :subscription_id)
1681
- SENSITIVE = []
1682
- include Aws::Structure
1683
- end
1684
-
1685
- # @!attribute [rw] queue_arn
1686
- # Returns the ARN of the queue.
1687
- # @return [String]
1688
- #
1689
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/UpdateSubscriptionNotificationConfigurationResponse AWS API Documentation
1690
- #
1691
- class UpdateSubscriptionNotificationConfigurationResponse < Struct.new(
1692
- :queue_arn)
1693
- SENSITIVE = []
1694
- include Aws::Structure
1695
- end
1696
-
1697
- # Your signing certificate could not be validated.
1698
- #
1699
- # @!attribute [rw] field_list
1700
- # The list of parameters that failed to validate.
1701
- # @return [Array<Types::ValidationExceptionField>]
1702
- #
1703
- # @!attribute [rw] message
1704
- # @return [String]
1705
- #
1706
- # @!attribute [rw] reason
1707
- # The reason for the validation exception.
1708
- # @return [String]
1709
- #
1710
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ValidationException AWS API Documentation
1711
- #
1712
- class ValidationException < Struct.new(
1713
- :field_list,
1714
- :message,
1715
- :reason)
1716
- SENSITIVE = []
1717
- include Aws::Structure
1718
- end
1719
-
1720
- # The input fails to meet the constraints specified in Amazon Security
1721
- # Lake.
1722
- #
1723
- # @!attribute [rw] message
1724
- # Describes the error encountered.
1725
- # @return [String]
1726
- #
1727
- # @!attribute [rw] name
1728
- # Name of the validation exception.
1729
- # @return [String]
1730
- #
1731
- # @see http://docs.aws.amazon.com/goto/WebAPI/securitylake-2018-05-10/ValidationExceptionField AWS API Documentation
1732
- #
1733
- class ValidationExceptionField < Struct.new(
1734
- :message,
1735
- :name)
1736
- SENSITIVE = []
1737
- include Aws::Structure
1738
- end
1739
-
1740
1871
  end
1741
1872
  end