aws-sdk-cloudtrail 1.72.0 → 1.73.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b06776bb2b0dc051b261fefe0fc55106b2476c72eb4513182b23d23e96bbc73f
4
- data.tar.gz: ffa5899ae76b28c5e97f5e627535f1b8755b8ab8a4b15b1a6f6a91117f3b6ddf
3
+ metadata.gz: 6701872c247ca32899a7ea46b56ed3eccbd2bcb8b6a024cd07385976c32e4c12
4
+ data.tar.gz: dc0294be39f562cc1826fddb1aefb9627ab89c2141923c92e39fcafd5e3c3758
5
5
  SHA512:
6
- metadata.gz: 904b624dc428a5d2131e5363472c94fc86010e2df69e80eb32b6b482d69f8056ee69a2c88a7df6fee618d1a33929aeb9c937527fee364f43f6b7d2edab4e7c7e
7
- data.tar.gz: 0e7010a32748a05b75bd04fe131cc78d69a6bd931b6a6aee6e633b329b236f192c4441c23bcd3327a9b11bb3d8f419dea0a8592306ac0b6a64ea989c5cd1fec3
6
+ metadata.gz: 75ec5991334ca5973acc817c28b1050e9b98d191ea3f8e13c5257a6704d5d91afcd2cd364b6c81f0c00bdea5ef0576aa3f658b3f06e1cf881140d2c9784781d4
7
+ data.tar.gz: 0d27daa1d2416cc68bbf71631eb2cc05a1335e728cfb1ccfa074fb3e65a60f747de5aa91de1d8a069618d49b41ff46262edeaa6d85f0c47c51f5cdf766967328
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.73.0 (2023-11-27)
5
+ ------------------
6
+
7
+ * Feature - CloudTrail Lake now supports federating event data stores. giving users the ability to run queries against their event data using Amazon Athena.
8
+
4
9
  1.72.0 (2023-11-22)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.72.0
1
+ 1.73.0
@@ -997,8 +997,9 @@ module Aws::CloudTrail
997
997
  # the event data store enters a `PENDING_DELETION` state, and is
998
998
  # automatically deleted after a wait period of seven days.
999
999
  # `TerminationProtectionEnabled` must be set to `False` on the event
1000
- # data store; this operation cannot work if
1001
- # `TerminationProtectionEnabled` is `True`.
1000
+ # data store and the `FederationStatus` must be `DISABLED`. You cannot
1001
+ # delete an event data store if `TerminationProtectionEnabled` is `True`
1002
+ # or the `FederationStatus` is `ENABLED`.
1002
1003
  #
1003
1004
  # After you run `DeleteEventDataStore` on an event data store, you
1004
1005
  # cannot run `ListQueries`, `DescribeQuery`, or `GetQueryResults` on
@@ -1238,6 +1239,109 @@ module Aws::CloudTrail
1238
1239
  req.send_request(options)
1239
1240
  end
1240
1241
 
1242
+ # Disables Lake query federation on the specified event data store. When
1243
+ # you disable federation, CloudTrail removes the metadata associated
1244
+ # with the federated event data store in the Glue Data Catalog and
1245
+ # removes registration for the federation role ARN and event data store
1246
+ # in Lake Formation. No CloudTrail Lake data is deleted when you disable
1247
+ # federation.
1248
+ #
1249
+ # @option params [required, String] :event_data_store
1250
+ # The ARN (or ID suffix of the ARN) of the event data store for which
1251
+ # you want to disable Lake query federation.
1252
+ #
1253
+ # @return [Types::DisableFederationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1254
+ #
1255
+ # * {Types::DisableFederationResponse#event_data_store_arn #event_data_store_arn} => String
1256
+ # * {Types::DisableFederationResponse#federation_status #federation_status} => String
1257
+ #
1258
+ # @example Request syntax with placeholder values
1259
+ #
1260
+ # resp = client.disable_federation({
1261
+ # event_data_store: "EventDataStoreArn", # required
1262
+ # })
1263
+ #
1264
+ # @example Response structure
1265
+ #
1266
+ # resp.event_data_store_arn #=> String
1267
+ # resp.federation_status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED"
1268
+ #
1269
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/DisableFederation AWS API Documentation
1270
+ #
1271
+ # @overload disable_federation(params = {})
1272
+ # @param [Hash] params ({})
1273
+ def disable_federation(params = {}, options = {})
1274
+ req = build_request(:disable_federation, params)
1275
+ req.send_request(options)
1276
+ end
1277
+
1278
+ # Enables Lake query federation on the specified event data store.
1279
+ # Federating an event data store lets you view the metadata associated
1280
+ # with the event data store in the Glue [Data Catalog][1] and run SQL
1281
+ # queries against your event data using Amazon Athena. The table
1282
+ # metadata stored in the Glue Data Catalog lets the Athena query engine
1283
+ # know how to find, read, and process the data that you want to query.
1284
+ #
1285
+ # When you enable Lake query federation, CloudTrail creates a federated
1286
+ # database named `aws:cloudtrail` (if the database doesn't already
1287
+ # exist) and a federated table in the Glue Data Catalog. The event data
1288
+ # store ID is used for the table name. CloudTrail registers the role ARN
1289
+ # and event data store in [Lake Formation][2], the service responsible
1290
+ # for revoking or granting permissions to the federated resources in the
1291
+ # Glue Data Catalog.
1292
+ #
1293
+ # For more information about Lake query federation, see [Federate an
1294
+ # event data store][3].
1295
+ #
1296
+ #
1297
+ #
1298
+ # [1]: https://docs.aws.amazon.com/glue/latest/dg/components-overview.html#data-catalog-intro
1299
+ # [2]: https://docs.aws.amazon.com/lake-formation/latest/dg/how-it-works.html
1300
+ # [3]: https://docs.aws.amazon.com/awscloudtrail/latest/userguide/query-federation.html
1301
+ #
1302
+ # @option params [required, String] :event_data_store
1303
+ # The ARN (or ID suffix of the ARN) of the event data store for which
1304
+ # you want to enable Lake query federation.
1305
+ #
1306
+ # @option params [required, String] :federation_role_arn
1307
+ # The ARN of the federation role to use for the event data store. Amazon
1308
+ # Web Services services like Lake Formation use this federation role to
1309
+ # access data for the federated event data store. The federation role
1310
+ # must exist in your account and provide the [required minimum
1311
+ # permissions][1].
1312
+ #
1313
+ #
1314
+ #
1315
+ # [1]: https://docs.aws.amazon.com/awscloudtrail/latest/userguide/query-federation.html#query-federation-permissions-role
1316
+ #
1317
+ # @return [Types::EnableFederationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1318
+ #
1319
+ # * {Types::EnableFederationResponse#event_data_store_arn #event_data_store_arn} => String
1320
+ # * {Types::EnableFederationResponse#federation_status #federation_status} => String
1321
+ # * {Types::EnableFederationResponse#federation_role_arn #federation_role_arn} => String
1322
+ #
1323
+ # @example Request syntax with placeholder values
1324
+ #
1325
+ # resp = client.enable_federation({
1326
+ # event_data_store: "EventDataStoreArn", # required
1327
+ # federation_role_arn: "FederationRoleArn", # required
1328
+ # })
1329
+ #
1330
+ # @example Response structure
1331
+ #
1332
+ # resp.event_data_store_arn #=> String
1333
+ # resp.federation_status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED"
1334
+ # resp.federation_role_arn #=> String
1335
+ #
1336
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/EnableFederation AWS API Documentation
1337
+ #
1338
+ # @overload enable_federation(params = {})
1339
+ # @param [Hash] params ({})
1340
+ def enable_federation(params = {}, options = {})
1341
+ req = build_request(:enable_federation, params)
1342
+ req.send_request(options)
1343
+ end
1344
+
1241
1345
  # Returns information about a specific channel.
1242
1346
  #
1243
1347
  # @option params [required, String] :channel
@@ -1319,6 +1423,8 @@ module Aws::CloudTrail
1319
1423
  # * {Types::GetEventDataStoreResponse#updated_timestamp #updated_timestamp} => Time
1320
1424
  # * {Types::GetEventDataStoreResponse#kms_key_id #kms_key_id} => String
1321
1425
  # * {Types::GetEventDataStoreResponse#billing_mode #billing_mode} => String
1426
+ # * {Types::GetEventDataStoreResponse#federation_status #federation_status} => String
1427
+ # * {Types::GetEventDataStoreResponse#federation_role_arn #federation_role_arn} => String
1322
1428
  #
1323
1429
  # @example Request syntax with placeholder values
1324
1430
  #
@@ -1355,6 +1461,8 @@ module Aws::CloudTrail
1355
1461
  # resp.updated_timestamp #=> Time
1356
1462
  # resp.kms_key_id #=> String
1357
1463
  # resp.billing_mode #=> String, one of "EXTENDABLE_RETENTION_PRICING", "FIXED_RETENTION_PRICING"
1464
+ # resp.federation_status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED"
1465
+ # resp.federation_role_arn #=> String
1358
1466
  #
1359
1467
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/GetEventDataStore AWS API Documentation
1360
1468
  #
@@ -3340,6 +3448,8 @@ module Aws::CloudTrail
3340
3448
  # * {Types::UpdateEventDataStoreResponse#updated_timestamp #updated_timestamp} => Time
3341
3449
  # * {Types::UpdateEventDataStoreResponse#kms_key_id #kms_key_id} => String
3342
3450
  # * {Types::UpdateEventDataStoreResponse#billing_mode #billing_mode} => String
3451
+ # * {Types::UpdateEventDataStoreResponse#federation_status #federation_status} => String
3452
+ # * {Types::UpdateEventDataStoreResponse#federation_role_arn #federation_role_arn} => String
3343
3453
  #
3344
3454
  # @example Request syntax with placeholder values
3345
3455
  #
@@ -3399,6 +3509,8 @@ module Aws::CloudTrail
3399
3509
  # resp.updated_timestamp #=> Time
3400
3510
  # resp.kms_key_id #=> String
3401
3511
  # resp.billing_mode #=> String, one of "EXTENDABLE_RETENTION_PRICING", "FIXED_RETENTION_PRICING"
3512
+ # resp.federation_status #=> String, one of "ENABLING", "ENABLED", "DISABLING", "DISABLED"
3513
+ # resp.federation_role_arn #=> String
3402
3514
  #
3403
3515
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/UpdateEventDataStore AWS API Documentation
3404
3516
  #
@@ -3619,7 +3731,7 @@ module Aws::CloudTrail
3619
3731
  params: params,
3620
3732
  config: config)
3621
3733
  context[:gem_name] = 'aws-sdk-cloudtrail'
3622
- context[:gem_version] = '1.72.0'
3734
+ context[:gem_version] = '1.73.0'
3623
3735
  Seahorse::Client::Request.new(handlers, context)
3624
3736
  end
3625
3737
 
@@ -13,6 +13,7 @@ module Aws::CloudTrail
13
13
 
14
14
  include Seahorse::Model
15
15
 
16
+ AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException')
16
17
  AccountHasOngoingImportException = Shapes::StructureShape.new(name: 'AccountHasOngoingImportException')
17
18
  AccountId = Shapes::StringShape.new(name: 'AccountId')
18
19
  AccountNotFoundException = Shapes::StructureShape.new(name: 'AccountNotFoundException')
@@ -43,6 +44,7 @@ module Aws::CloudTrail
43
44
  CloudTrailAccessNotEnabledException = Shapes::StructureShape.new(name: 'CloudTrailAccessNotEnabledException')
44
45
  CloudTrailInvalidClientTokenIdException = Shapes::StructureShape.new(name: 'CloudTrailInvalidClientTokenIdException')
45
46
  CloudWatchLogsDeliveryUnavailableException = Shapes::StructureShape.new(name: 'CloudWatchLogsDeliveryUnavailableException')
47
+ ConcurrentModificationException = Shapes::StructureShape.new(name: 'ConcurrentModificationException')
46
48
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
47
49
  CreateChannelRequest = Shapes::StructureShape.new(name: 'CreateChannelRequest')
48
50
  CreateChannelResponse = Shapes::StructureShape.new(name: 'CreateChannelResponse')
@@ -74,6 +76,10 @@ module Aws::CloudTrail
74
76
  Destination = Shapes::StructureShape.new(name: 'Destination')
75
77
  DestinationType = Shapes::StringShape.new(name: 'DestinationType')
76
78
  Destinations = Shapes::ListShape.new(name: 'Destinations')
79
+ DisableFederationRequest = Shapes::StructureShape.new(name: 'DisableFederationRequest')
80
+ DisableFederationResponse = Shapes::StructureShape.new(name: 'DisableFederationResponse')
81
+ EnableFederationRequest = Shapes::StructureShape.new(name: 'EnableFederationRequest')
82
+ EnableFederationResponse = Shapes::StructureShape.new(name: 'EnableFederationResponse')
77
83
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
78
84
  Event = Shapes::StructureShape.new(name: 'Event')
79
85
  EventCategory = Shapes::StringShape.new(name: 'EventCategory')
@@ -81,6 +87,7 @@ module Aws::CloudTrail
81
87
  EventDataStoreARNInvalidException = Shapes::StructureShape.new(name: 'EventDataStoreARNInvalidException')
82
88
  EventDataStoreAlreadyExistsException = Shapes::StructureShape.new(name: 'EventDataStoreAlreadyExistsException')
83
89
  EventDataStoreArn = Shapes::StringShape.new(name: 'EventDataStoreArn')
90
+ EventDataStoreFederationEnabledException = Shapes::StructureShape.new(name: 'EventDataStoreFederationEnabledException')
84
91
  EventDataStoreHasOngoingImportException = Shapes::StructureShape.new(name: 'EventDataStoreHasOngoingImportException')
85
92
  EventDataStoreKmsKeyId = Shapes::StringShape.new(name: 'EventDataStoreKmsKeyId')
86
93
  EventDataStoreMaxLimitExceededException = Shapes::StructureShape.new(name: 'EventDataStoreMaxLimitExceededException')
@@ -93,6 +100,8 @@ module Aws::CloudTrail
93
100
  EventSelectors = Shapes::ListShape.new(name: 'EventSelectors')
94
101
  EventsList = Shapes::ListShape.new(name: 'EventsList')
95
102
  ExcludeManagementEventSources = Shapes::ListShape.new(name: 'ExcludeManagementEventSources')
103
+ FederationRoleArn = Shapes::StringShape.new(name: 'FederationRoleArn')
104
+ FederationStatus = Shapes::StringShape.new(name: 'FederationStatus')
96
105
  GetChannelRequest = Shapes::StructureShape.new(name: 'GetChannelRequest')
97
106
  GetChannelResponse = Shapes::StructureShape.new(name: 'GetChannelResponse')
98
107
  GetEventDataStoreRequest = Shapes::StructureShape.new(name: 'GetEventDataStoreRequest')
@@ -293,6 +302,8 @@ module Aws::CloudTrail
293
302
  UpdateTrailRequest = Shapes::StructureShape.new(name: 'UpdateTrailRequest')
294
303
  UpdateTrailResponse = Shapes::StructureShape.new(name: 'UpdateTrailResponse')
295
304
 
305
+ AccessDeniedException.struct_class = Types::AccessDeniedException
306
+
296
307
  AccountHasOngoingImportException.struct_class = Types::AccountHasOngoingImportException
297
308
 
298
309
  AccountNotFoundException.struct_class = Types::AccountNotFoundException
@@ -358,6 +369,8 @@ module Aws::CloudTrail
358
369
 
359
370
  CloudWatchLogsDeliveryUnavailableException.struct_class = Types::CloudWatchLogsDeliveryUnavailableException
360
371
 
372
+ ConcurrentModificationException.struct_class = Types::ConcurrentModificationException
373
+
361
374
  ConflictException.struct_class = Types::ConflictException
362
375
 
363
376
  CreateChannelRequest.add_member(:name, Shapes::ShapeRef.new(shape: ChannelName, required: true, location_name: "Name"))
@@ -491,6 +504,22 @@ module Aws::CloudTrail
491
504
 
492
505
  Destinations.member = Shapes::ShapeRef.new(shape: Destination)
493
506
 
507
+ DisableFederationRequest.add_member(:event_data_store, Shapes::ShapeRef.new(shape: EventDataStoreArn, required: true, location_name: "EventDataStore"))
508
+ DisableFederationRequest.struct_class = Types::DisableFederationRequest
509
+
510
+ DisableFederationResponse.add_member(:event_data_store_arn, Shapes::ShapeRef.new(shape: EventDataStoreArn, location_name: "EventDataStoreArn"))
511
+ DisableFederationResponse.add_member(:federation_status, Shapes::ShapeRef.new(shape: FederationStatus, location_name: "FederationStatus"))
512
+ DisableFederationResponse.struct_class = Types::DisableFederationResponse
513
+
514
+ EnableFederationRequest.add_member(:event_data_store, Shapes::ShapeRef.new(shape: EventDataStoreArn, required: true, location_name: "EventDataStore"))
515
+ EnableFederationRequest.add_member(:federation_role_arn, Shapes::ShapeRef.new(shape: FederationRoleArn, required: true, location_name: "FederationRoleArn"))
516
+ EnableFederationRequest.struct_class = Types::EnableFederationRequest
517
+
518
+ EnableFederationResponse.add_member(:event_data_store_arn, Shapes::ShapeRef.new(shape: EventDataStoreArn, location_name: "EventDataStoreArn"))
519
+ EnableFederationResponse.add_member(:federation_status, Shapes::ShapeRef.new(shape: FederationStatus, location_name: "FederationStatus"))
520
+ EnableFederationResponse.add_member(:federation_role_arn, Shapes::ShapeRef.new(shape: FederationRoleArn, location_name: "FederationRoleArn"))
521
+ EnableFederationResponse.struct_class = Types::EnableFederationResponse
522
+
494
523
  Event.add_member(:event_id, Shapes::ShapeRef.new(shape: String, location_name: "EventId"))
495
524
  Event.add_member(:event_name, Shapes::ShapeRef.new(shape: String, location_name: "EventName"))
496
525
  Event.add_member(:read_only, Shapes::ShapeRef.new(shape: String, location_name: "ReadOnly"))
@@ -518,6 +547,8 @@ module Aws::CloudTrail
518
547
 
519
548
  EventDataStoreAlreadyExistsException.struct_class = Types::EventDataStoreAlreadyExistsException
520
549
 
550
+ EventDataStoreFederationEnabledException.struct_class = Types::EventDataStoreFederationEnabledException
551
+
521
552
  EventDataStoreHasOngoingImportException.struct_class = Types::EventDataStoreHasOngoingImportException
522
553
 
523
554
  EventDataStoreMaxLimitExceededException.struct_class = Types::EventDataStoreMaxLimitExceededException
@@ -566,6 +597,8 @@ module Aws::CloudTrail
566
597
  GetEventDataStoreResponse.add_member(:updated_timestamp, Shapes::ShapeRef.new(shape: Date, location_name: "UpdatedTimestamp"))
567
598
  GetEventDataStoreResponse.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: EventDataStoreKmsKeyId, location_name: "KmsKeyId"))
568
599
  GetEventDataStoreResponse.add_member(:billing_mode, Shapes::ShapeRef.new(shape: BillingMode, location_name: "BillingMode"))
600
+ GetEventDataStoreResponse.add_member(:federation_status, Shapes::ShapeRef.new(shape: FederationStatus, location_name: "FederationStatus"))
601
+ GetEventDataStoreResponse.add_member(:federation_role_arn, Shapes::ShapeRef.new(shape: FederationRoleArn, location_name: "FederationRoleArn"))
569
602
  GetEventDataStoreResponse.struct_class = Types::GetEventDataStoreResponse
570
603
 
571
604
  GetEventSelectorsRequest.add_member(:trail_name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "TrailName"))
@@ -1143,6 +1176,8 @@ module Aws::CloudTrail
1143
1176
  UpdateEventDataStoreResponse.add_member(:updated_timestamp, Shapes::ShapeRef.new(shape: Date, location_name: "UpdatedTimestamp"))
1144
1177
  UpdateEventDataStoreResponse.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: EventDataStoreKmsKeyId, location_name: "KmsKeyId"))
1145
1178
  UpdateEventDataStoreResponse.add_member(:billing_mode, Shapes::ShapeRef.new(shape: BillingMode, location_name: "BillingMode"))
1179
+ UpdateEventDataStoreResponse.add_member(:federation_status, Shapes::ShapeRef.new(shape: FederationStatus, location_name: "FederationStatus"))
1180
+ UpdateEventDataStoreResponse.add_member(:federation_role_arn, Shapes::ShapeRef.new(shape: FederationRoleArn, location_name: "FederationRoleArn"))
1146
1181
  UpdateEventDataStoreResponse.struct_class = Types::UpdateEventDataStoreResponse
1147
1182
 
1148
1183
  UpdateTrailRequest.add_member(:name, Shapes::ShapeRef.new(shape: String, required: true, location_name: "Name"))
@@ -1350,6 +1385,8 @@ module Aws::CloudTrail
1350
1385
  o.errors << Shapes::ShapeRef.new(shape: NoManagementAccountSLRExistsException)
1351
1386
  o.errors << Shapes::ShapeRef.new(shape: ChannelExistsForEDSException)
1352
1387
  o.errors << Shapes::ShapeRef.new(shape: InsufficientDependencyServiceAccessPermissionException)
1388
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1389
+ o.errors << Shapes::ShapeRef.new(shape: EventDataStoreFederationEnabledException)
1353
1390
  end)
1354
1391
 
1355
1392
  api.add_operation(:delete_resource_policy, Seahorse::Model::Operation.new.tap do |o|
@@ -1432,6 +1469,51 @@ module Aws::CloudTrail
1432
1469
  o.errors << Shapes::ShapeRef.new(shape: NoManagementAccountSLRExistsException)
1433
1470
  end)
1434
1471
 
1472
+ api.add_operation(:disable_federation, Seahorse::Model::Operation.new.tap do |o|
1473
+ o.name = "DisableFederation"
1474
+ o.http_method = "POST"
1475
+ o.http_request_uri = "/"
1476
+ o.input = Shapes::ShapeRef.new(shape: DisableFederationRequest)
1477
+ o.output = Shapes::ShapeRef.new(shape: DisableFederationResponse)
1478
+ o.errors << Shapes::ShapeRef.new(shape: EventDataStoreARNInvalidException)
1479
+ o.errors << Shapes::ShapeRef.new(shape: EventDataStoreNotFoundException)
1480
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1481
+ o.errors << Shapes::ShapeRef.new(shape: InactiveEventDataStoreException)
1482
+ o.errors << Shapes::ShapeRef.new(shape: OperationNotPermittedException)
1483
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1484
+ o.errors << Shapes::ShapeRef.new(shape: CloudTrailAccessNotEnabledException)
1485
+ o.errors << Shapes::ShapeRef.new(shape: InsufficientDependencyServiceAccessPermissionException)
1486
+ o.errors << Shapes::ShapeRef.new(shape: NotOrganizationMasterAccountException)
1487
+ o.errors << Shapes::ShapeRef.new(shape: NoManagementAccountSLRExistsException)
1488
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationsNotInUseException)
1489
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotInAllFeaturesModeException)
1490
+ o.errors << Shapes::ShapeRef.new(shape: ConcurrentModificationException)
1491
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1492
+ end)
1493
+
1494
+ api.add_operation(:enable_federation, Seahorse::Model::Operation.new.tap do |o|
1495
+ o.name = "EnableFederation"
1496
+ o.http_method = "POST"
1497
+ o.http_request_uri = "/"
1498
+ o.input = Shapes::ShapeRef.new(shape: EnableFederationRequest)
1499
+ o.output = Shapes::ShapeRef.new(shape: EnableFederationResponse)
1500
+ o.errors << Shapes::ShapeRef.new(shape: EventDataStoreARNInvalidException)
1501
+ o.errors << Shapes::ShapeRef.new(shape: EventDataStoreNotFoundException)
1502
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1503
+ o.errors << Shapes::ShapeRef.new(shape: InactiveEventDataStoreException)
1504
+ o.errors << Shapes::ShapeRef.new(shape: OperationNotPermittedException)
1505
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1506
+ o.errors << Shapes::ShapeRef.new(shape: CloudTrailAccessNotEnabledException)
1507
+ o.errors << Shapes::ShapeRef.new(shape: InsufficientDependencyServiceAccessPermissionException)
1508
+ o.errors << Shapes::ShapeRef.new(shape: NotOrganizationMasterAccountException)
1509
+ o.errors << Shapes::ShapeRef.new(shape: NoManagementAccountSLRExistsException)
1510
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationsNotInUseException)
1511
+ o.errors << Shapes::ShapeRef.new(shape: OrganizationNotInAllFeaturesModeException)
1512
+ o.errors << Shapes::ShapeRef.new(shape: ConcurrentModificationException)
1513
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1514
+ o.errors << Shapes::ShapeRef.new(shape: EventDataStoreFederationEnabledException)
1515
+ end)
1516
+
1435
1517
  api.add_operation(:get_channel, Seahorse::Model::Operation.new.tap do |o|
1436
1518
  o.name = "GetChannel"
1437
1519
  o.http_method = "POST"
@@ -180,6 +180,34 @@ module Aws::CloudTrail
180
180
  end
181
181
  end
182
182
 
183
+ class DisableFederation
184
+ def self.build(context)
185
+ unless context.config.regional_endpoint
186
+ endpoint = context.config.endpoint.to_s
187
+ end
188
+ Aws::CloudTrail::EndpointParameters.new(
189
+ region: context.config.region,
190
+ use_dual_stack: context.config.use_dualstack_endpoint,
191
+ use_fips: context.config.use_fips_endpoint,
192
+ endpoint: endpoint,
193
+ )
194
+ end
195
+ end
196
+
197
+ class EnableFederation
198
+ def self.build(context)
199
+ unless context.config.regional_endpoint
200
+ endpoint = context.config.endpoint.to_s
201
+ end
202
+ Aws::CloudTrail::EndpointParameters.new(
203
+ region: context.config.region,
204
+ use_dual_stack: context.config.use_dualstack_endpoint,
205
+ use_fips: context.config.use_fips_endpoint,
206
+ endpoint: endpoint,
207
+ )
208
+ end
209
+ end
210
+
183
211
  class GetChannel
184
212
  def self.build(context)
185
213
  unless context.config.regional_endpoint
@@ -27,6 +27,7 @@ module Aws::CloudTrail
27
27
  # See {Seahorse::Client::RequestContext} for more information.
28
28
  #
29
29
  # ## Error Classes
30
+ # * {AccessDeniedException}
30
31
  # * {AccountHasOngoingImportException}
31
32
  # * {AccountNotFoundException}
32
33
  # * {AccountNotRegisteredException}
@@ -41,10 +42,12 @@ module Aws::CloudTrail
41
42
  # * {CloudTrailAccessNotEnabledException}
42
43
  # * {CloudTrailInvalidClientTokenIdException}
43
44
  # * {CloudWatchLogsDeliveryUnavailableException}
45
+ # * {ConcurrentModificationException}
44
46
  # * {ConflictException}
45
47
  # * {DelegatedAdminAccountLimitExceededException}
46
48
  # * {EventDataStoreARNInvalidException}
47
49
  # * {EventDataStoreAlreadyExistsException}
50
+ # * {EventDataStoreFederationEnabledException}
48
51
  # * {EventDataStoreHasOngoingImportException}
49
52
  # * {EventDataStoreMaxLimitExceededException}
50
53
  # * {EventDataStoreNotFoundException}
@@ -114,6 +117,16 @@ module Aws::CloudTrail
114
117
 
115
118
  extend Aws::Errors::DynamicErrors
116
119
 
120
+ class AccessDeniedException < ServiceError
121
+
122
+ # @param [Seahorse::Client::RequestContext] context
123
+ # @param [String] message
124
+ # @param [Aws::CloudTrail::Types::AccessDeniedException] data
125
+ def initialize(context, message, data = Aws::EmptyStructure.new)
126
+ super(context, message, data)
127
+ end
128
+ end
129
+
117
130
  class AccountHasOngoingImportException < ServiceError
118
131
 
119
132
  # @param [Seahorse::Client::RequestContext] context
@@ -254,6 +267,16 @@ module Aws::CloudTrail
254
267
  end
255
268
  end
256
269
 
270
+ class ConcurrentModificationException < ServiceError
271
+
272
+ # @param [Seahorse::Client::RequestContext] context
273
+ # @param [String] message
274
+ # @param [Aws::CloudTrail::Types::ConcurrentModificationException] data
275
+ def initialize(context, message, data = Aws::EmptyStructure.new)
276
+ super(context, message, data)
277
+ end
278
+ end
279
+
257
280
  class ConflictException < ServiceError
258
281
 
259
282
  # @param [Seahorse::Client::RequestContext] context
@@ -294,6 +317,16 @@ module Aws::CloudTrail
294
317
  end
295
318
  end
296
319
 
320
+ class EventDataStoreFederationEnabledException < ServiceError
321
+
322
+ # @param [Seahorse::Client::RequestContext] context
323
+ # @param [String] message
324
+ # @param [Aws::CloudTrail::Types::EventDataStoreFederationEnabledException] data
325
+ def initialize(context, message, data = Aws::EmptyStructure.new)
326
+ super(context, message, data)
327
+ end
328
+ end
329
+
297
330
  class EventDataStoreHasOngoingImportException < ServiceError
298
331
 
299
332
  # @param [Seahorse::Client::RequestContext] context
@@ -80,6 +80,10 @@ module Aws::CloudTrail
80
80
  Aws::CloudTrail::Endpoints::DescribeQuery.build(context)
81
81
  when :describe_trails
82
82
  Aws::CloudTrail::Endpoints::DescribeTrails.build(context)
83
+ when :disable_federation
84
+ Aws::CloudTrail::Endpoints::DisableFederation.build(context)
85
+ when :enable_federation
86
+ Aws::CloudTrail::Endpoints::EnableFederation.build(context)
83
87
  when :get_channel
84
88
  Aws::CloudTrail::Endpoints::GetChannel.build(context)
85
89
  when :get_event_data_store
@@ -10,6 +10,12 @@
10
10
  module Aws::CloudTrail
11
11
  module Types
12
12
 
13
+ # You do not have sufficient access to perform this action.
14
+ #
15
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/AccessDeniedException AWS API Documentation
16
+ #
17
+ class AccessDeniedException < Aws::EmptyStructure; end
18
+
13
19
  # This exception is thrown when you start a new import and a previous
14
20
  # import is still in progress.
15
21
  #
@@ -689,6 +695,14 @@ module Aws::CloudTrail
689
695
  #
690
696
  class CloudWatchLogsDeliveryUnavailableException < Aws::EmptyStructure; end
691
697
 
698
+ # You are trying to update a resource when another request is in
699
+ # progress. Allow sufficient wait time for the previous request to
700
+ # complete, then retry your request.
701
+ #
702
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/ConcurrentModificationException AWS API Documentation
703
+ #
704
+ class ConcurrentModificationException < Aws::EmptyStructure; end
705
+
692
706
  # This exception is thrown when the specified resource is not ready for
693
707
  # an operation. This can occur when you try to run an operation on a
694
708
  # resource before CloudTrail has time to fully load the resource, or
@@ -1718,6 +1732,86 @@ module Aws::CloudTrail
1718
1732
  include Aws::Structure
1719
1733
  end
1720
1734
 
1735
+ # @!attribute [rw] event_data_store
1736
+ # The ARN (or ID suffix of the ARN) of the event data store for which
1737
+ # you want to disable Lake query federation.
1738
+ # @return [String]
1739
+ #
1740
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/DisableFederationRequest AWS API Documentation
1741
+ #
1742
+ class DisableFederationRequest < Struct.new(
1743
+ :event_data_store)
1744
+ SENSITIVE = []
1745
+ include Aws::Structure
1746
+ end
1747
+
1748
+ # @!attribute [rw] event_data_store_arn
1749
+ # The ARN of the event data store for which you disabled Lake query
1750
+ # federation.
1751
+ # @return [String]
1752
+ #
1753
+ # @!attribute [rw] federation_status
1754
+ # The federation status.
1755
+ # @return [String]
1756
+ #
1757
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/DisableFederationResponse AWS API Documentation
1758
+ #
1759
+ class DisableFederationResponse < Struct.new(
1760
+ :event_data_store_arn,
1761
+ :federation_status)
1762
+ SENSITIVE = []
1763
+ include Aws::Structure
1764
+ end
1765
+
1766
+ # @!attribute [rw] event_data_store
1767
+ # The ARN (or ID suffix of the ARN) of the event data store for which
1768
+ # you want to enable Lake query federation.
1769
+ # @return [String]
1770
+ #
1771
+ # @!attribute [rw] federation_role_arn
1772
+ # The ARN of the federation role to use for the event data store.
1773
+ # Amazon Web Services services like Lake Formation use this federation
1774
+ # role to access data for the federated event data store. The
1775
+ # federation role must exist in your account and provide the [required
1776
+ # minimum permissions][1].
1777
+ #
1778
+ #
1779
+ #
1780
+ # [1]: https://docs.aws.amazon.com/awscloudtrail/latest/userguide/query-federation.html#query-federation-permissions-role
1781
+ # @return [String]
1782
+ #
1783
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/EnableFederationRequest AWS API Documentation
1784
+ #
1785
+ class EnableFederationRequest < Struct.new(
1786
+ :event_data_store,
1787
+ :federation_role_arn)
1788
+ SENSITIVE = []
1789
+ include Aws::Structure
1790
+ end
1791
+
1792
+ # @!attribute [rw] event_data_store_arn
1793
+ # The ARN of the event data store for which you enabled Lake query
1794
+ # federation.
1795
+ # @return [String]
1796
+ #
1797
+ # @!attribute [rw] federation_status
1798
+ # The federation status.
1799
+ # @return [String]
1800
+ #
1801
+ # @!attribute [rw] federation_role_arn
1802
+ # The ARN of the federation role.
1803
+ # @return [String]
1804
+ #
1805
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/EnableFederationResponse AWS API Documentation
1806
+ #
1807
+ class EnableFederationResponse < Struct.new(
1808
+ :event_data_store_arn,
1809
+ :federation_status,
1810
+ :federation_role_arn)
1811
+ SENSITIVE = []
1812
+ include Aws::Structure
1813
+ end
1814
+
1721
1815
  # Contains information about an event that was returned by a lookup
1722
1816
  # request. The result includes a representation of a CloudTrail event.
1723
1817
  #
@@ -1862,6 +1956,15 @@ module Aws::CloudTrail
1862
1956
  #
1863
1957
  class EventDataStoreAlreadyExistsException < Aws::EmptyStructure; end
1864
1958
 
1959
+ # You cannot delete the event data store because Lake query federation
1960
+ # is enabled. To delete the event data store, run the
1961
+ # `DisableFederation` operation to disable Lake query federation on the
1962
+ # event data store.
1963
+ #
1964
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/EventDataStoreFederationEnabledException AWS API Documentation
1965
+ #
1966
+ class EventDataStoreFederationEnabledException < Aws::EmptyStructure; end
1967
+
1865
1968
  # This exception is thrown when you try to update or delete an event
1866
1969
  # data store that currently has an import in progress.
1867
1970
  #
@@ -2100,6 +2203,23 @@ module Aws::CloudTrail
2100
2203
  # The billing mode for the event data store.
2101
2204
  # @return [String]
2102
2205
  #
2206
+ # @!attribute [rw] federation_status
2207
+ # Indicates the [Lake query federation][1] status. The status is
2208
+ # `ENABLED` if Lake query federation is enabled, or `DISABLED` if Lake
2209
+ # query federation is disabled. You cannot delete an event data store
2210
+ # if the `FederationStatus` is `ENABLED`.
2211
+ #
2212
+ #
2213
+ #
2214
+ # [1]: https://docs.aws.amazon.com/awscloudtrail/latest/userguide/query-federation.html
2215
+ # @return [String]
2216
+ #
2217
+ # @!attribute [rw] federation_role_arn
2218
+ # If Lake query federation is enabled, provides the ARN of the
2219
+ # federation role used to access the resources for the federated event
2220
+ # data store.
2221
+ # @return [String]
2222
+ #
2103
2223
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/GetEventDataStoreResponse AWS API Documentation
2104
2224
  #
2105
2225
  class GetEventDataStoreResponse < Struct.new(
@@ -2114,7 +2234,9 @@ module Aws::CloudTrail
2114
2234
  :created_timestamp,
2115
2235
  :updated_timestamp,
2116
2236
  :kms_key_id,
2117
- :billing_mode)
2237
+ :billing_mode,
2238
+ :federation_status,
2239
+ :federation_role_arn)
2118
2240
  SENSITIVE = []
2119
2241
  include Aws::Structure
2120
2242
  end
@@ -5000,6 +5122,23 @@ module Aws::CloudTrail
5000
5122
  # The billing mode for the event data store.
5001
5123
  # @return [String]
5002
5124
  #
5125
+ # @!attribute [rw] federation_status
5126
+ # Indicates the [Lake query federation][1] status. The status is
5127
+ # `ENABLED` if Lake query federation is enabled, or `DISABLED` if Lake
5128
+ # query federation is disabled. You cannot delete an event data store
5129
+ # if the `FederationStatus` is `ENABLED`.
5130
+ #
5131
+ #
5132
+ #
5133
+ # [1]: https://docs.aws.amazon.com/awscloudtrail/latest/userguide/query-federation.html
5134
+ # @return [String]
5135
+ #
5136
+ # @!attribute [rw] federation_role_arn
5137
+ # If Lake query federation is enabled, provides the ARN of the
5138
+ # federation role used to access the resources for the federated event
5139
+ # data store.
5140
+ # @return [String]
5141
+ #
5003
5142
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloudtrail-2013-11-01/UpdateEventDataStoreResponse AWS API Documentation
5004
5143
  #
5005
5144
  class UpdateEventDataStoreResponse < Struct.new(
@@ -5014,7 +5153,9 @@ module Aws::CloudTrail
5014
5153
  :created_timestamp,
5015
5154
  :updated_timestamp,
5016
5155
  :kms_key_id,
5017
- :billing_mode)
5156
+ :billing_mode,
5157
+ :federation_status,
5158
+ :federation_role_arn)
5018
5159
  SENSITIVE = []
5019
5160
  include Aws::Structure
5020
5161
  end
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-cloudtrail/customizations'
52
52
  # @!group service
53
53
  module Aws::CloudTrail
54
54
 
55
- GEM_VERSION = '1.72.0'
55
+ GEM_VERSION = '1.73.0'
56
56
 
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-cloudtrail
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.72.0
4
+ version: 1.73.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-11-22 00:00:00.000000000 Z
11
+ date: 2023-11-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core