aws-sdk-fms 1.36.0 → 1.37.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -15,6 +15,7 @@ module Aws::FMS
15
15
 
16
16
  AWSAccountId = Shapes::StringShape.new(name: 'AWSAccountId')
17
17
  AccountRoleStatus = Shapes::StringShape.new(name: 'AccountRoleStatus')
18
+ ActionTarget = Shapes::StructureShape.new(name: 'ActionTarget')
18
19
  App = Shapes::StructureShape.new(name: 'App')
19
20
  AppsList = Shapes::ListShape.new(name: 'AppsList')
20
21
  AppsListData = Shapes::StructureShape.new(name: 'AppsListData')
@@ -39,6 +40,7 @@ module Aws::FMS
39
40
  DeletePolicyRequest = Shapes::StructureShape.new(name: 'DeletePolicyRequest')
40
41
  DeleteProtocolsListRequest = Shapes::StructureShape.new(name: 'DeleteProtocolsListRequest')
41
42
  DependentServiceName = Shapes::StringShape.new(name: 'DependentServiceName')
43
+ DestinationType = Shapes::StringShape.new(name: 'DestinationType')
42
44
  DetailedInfo = Shapes::StringShape.new(name: 'DetailedInfo')
43
45
  DisassociateAdminAccountRequest = Shapes::StructureShape.new(name: 'DisassociateAdminAccountRequest')
44
46
  DnsDuplicateRuleGroupViolation = Shapes::StructureShape.new(name: 'DnsDuplicateRuleGroupViolation')
@@ -46,9 +48,18 @@ module Aws::FMS
46
48
  DnsRuleGroupPriorities = Shapes::ListShape.new(name: 'DnsRuleGroupPriorities')
47
49
  DnsRuleGroupPriority = Shapes::IntegerShape.new(name: 'DnsRuleGroupPriority')
48
50
  DnsRuleGroupPriorityConflictViolation = Shapes::StructureShape.new(name: 'DnsRuleGroupPriorityConflictViolation')
51
+ EC2AssociateRouteTableAction = Shapes::StructureShape.new(name: 'EC2AssociateRouteTableAction')
52
+ EC2CopyRouteTableAction = Shapes::StructureShape.new(name: 'EC2CopyRouteTableAction')
53
+ EC2CreateRouteAction = Shapes::StructureShape.new(name: 'EC2CreateRouteAction')
54
+ EC2CreateRouteTableAction = Shapes::StructureShape.new(name: 'EC2CreateRouteTableAction')
55
+ EC2DeleteRouteAction = Shapes::StructureShape.new(name: 'EC2DeleteRouteAction')
56
+ EC2ReplaceRouteAction = Shapes::StructureShape.new(name: 'EC2ReplaceRouteAction')
57
+ EC2ReplaceRouteTableAssociationAction = Shapes::StructureShape.new(name: 'EC2ReplaceRouteTableAssociationAction')
49
58
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
50
59
  EvaluationResult = Shapes::StructureShape.new(name: 'EvaluationResult')
51
60
  EvaluationResults = Shapes::ListShape.new(name: 'EvaluationResults')
61
+ ExpectedRoute = Shapes::StructureShape.new(name: 'ExpectedRoute')
62
+ ExpectedRoutes = Shapes::ListShape.new(name: 'ExpectedRoutes')
52
63
  GetAdminAccountRequest = Shapes::StructureShape.new(name: 'GetAdminAccountRequest')
53
64
  GetAdminAccountResponse = Shapes::StructureShape.new(name: 'GetAdminAccountResponse')
54
65
  GetAppsListRequest = Shapes::StructureShape.new(name: 'GetAppsListRequest')
@@ -72,6 +83,7 @@ module Aws::FMS
72
83
  InvalidTypeException = Shapes::StructureShape.new(name: 'InvalidTypeException')
73
84
  IssueInfoMap = Shapes::MapShape.new(name: 'IssueInfoMap')
74
85
  LengthBoundedString = Shapes::StringShape.new(name: 'LengthBoundedString')
86
+ LengthBoundedStringList = Shapes::ListShape.new(name: 'LengthBoundedStringList')
75
87
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
76
88
  ListAppsListsRequest = Shapes::StructureShape.new(name: 'ListAppsListsRequest')
77
89
  ListAppsListsResponse = Shapes::StructureShape.new(name: 'ListAppsListsResponse')
@@ -90,12 +102,19 @@ module Aws::FMS
90
102
  MemberAccounts = Shapes::ListShape.new(name: 'MemberAccounts')
91
103
  NetworkFirewallAction = Shapes::StringShape.new(name: 'NetworkFirewallAction')
92
104
  NetworkFirewallActionList = Shapes::ListShape.new(name: 'NetworkFirewallActionList')
105
+ NetworkFirewallBlackHoleRouteDetectedViolation = Shapes::StructureShape.new(name: 'NetworkFirewallBlackHoleRouteDetectedViolation')
106
+ NetworkFirewallInternetTrafficNotInspectedViolation = Shapes::StructureShape.new(name: 'NetworkFirewallInternetTrafficNotInspectedViolation')
107
+ NetworkFirewallInvalidRouteConfigurationViolation = Shapes::StructureShape.new(name: 'NetworkFirewallInvalidRouteConfigurationViolation')
93
108
  NetworkFirewallMissingExpectedRTViolation = Shapes::StructureShape.new(name: 'NetworkFirewallMissingExpectedRTViolation')
109
+ NetworkFirewallMissingExpectedRoutesViolation = Shapes::StructureShape.new(name: 'NetworkFirewallMissingExpectedRoutesViolation')
94
110
  NetworkFirewallMissingFirewallViolation = Shapes::StructureShape.new(name: 'NetworkFirewallMissingFirewallViolation')
95
111
  NetworkFirewallMissingSubnetViolation = Shapes::StructureShape.new(name: 'NetworkFirewallMissingSubnetViolation')
96
112
  NetworkFirewallPolicyDescription = Shapes::StructureShape.new(name: 'NetworkFirewallPolicyDescription')
97
113
  NetworkFirewallPolicyModifiedViolation = Shapes::StructureShape.new(name: 'NetworkFirewallPolicyModifiedViolation')
98
114
  NetworkFirewallResourceName = Shapes::StringShape.new(name: 'NetworkFirewallResourceName')
115
+ NetworkFirewallUnexpectedFirewallRoutesViolation = Shapes::StructureShape.new(name: 'NetworkFirewallUnexpectedFirewallRoutesViolation')
116
+ NetworkFirewallUnexpectedGatewayRoutesViolation = Shapes::StructureShape.new(name: 'NetworkFirewallUnexpectedGatewayRoutesViolation')
117
+ OrderedRemediationActions = Shapes::ListShape.new(name: 'OrderedRemediationActions')
99
118
  PaginationMaxResults = Shapes::IntegerShape.new(name: 'PaginationMaxResults')
100
119
  PaginationToken = Shapes::StringShape.new(name: 'PaginationToken')
101
120
  PartialMatch = Shapes::StructureShape.new(name: 'PartialMatch')
@@ -109,6 +128,9 @@ module Aws::FMS
109
128
  PolicySummary = Shapes::StructureShape.new(name: 'PolicySummary')
110
129
  PolicySummaryList = Shapes::ListShape.new(name: 'PolicySummaryList')
111
130
  PolicyUpdateToken = Shapes::StringShape.new(name: 'PolicyUpdateToken')
131
+ PossibleRemediationAction = Shapes::StructureShape.new(name: 'PossibleRemediationAction')
132
+ PossibleRemediationActionList = Shapes::ListShape.new(name: 'PossibleRemediationActionList')
133
+ PossibleRemediationActions = Shapes::StructureShape.new(name: 'PossibleRemediationActions')
112
134
  PreviousAppsList = Shapes::MapShape.new(name: 'PreviousAppsList')
113
135
  PreviousListVersion = Shapes::StringShape.new(name: 'PreviousListVersion')
114
136
  PreviousProtocolsList = Shapes::MapShape.new(name: 'PreviousProtocolsList')
@@ -126,8 +148,10 @@ module Aws::FMS
126
148
  PutProtocolsListRequest = Shapes::StructureShape.new(name: 'PutProtocolsListRequest')
127
149
  PutProtocolsListResponse = Shapes::StructureShape.new(name: 'PutProtocolsListResponse')
128
150
  ReferenceRule = Shapes::StringShape.new(name: 'ReferenceRule')
151
+ RemediationAction = Shapes::StructureShape.new(name: 'RemediationAction')
129
152
  RemediationActionDescription = Shapes::StringShape.new(name: 'RemediationActionDescription')
130
153
  RemediationActionType = Shapes::StringShape.new(name: 'RemediationActionType')
154
+ RemediationActionWithOrder = Shapes::StructureShape.new(name: 'RemediationActionWithOrder')
131
155
  ResourceArn = Shapes::StringShape.new(name: 'ResourceArn')
132
156
  ResourceCount = Shapes::IntegerShape.new(name: 'ResourceCount')
133
157
  ResourceId = Shapes::StringShape.new(name: 'ResourceId')
@@ -142,6 +166,8 @@ module Aws::FMS
142
166
  ResourceTypeList = Shapes::ListShape.new(name: 'ResourceTypeList')
143
167
  ResourceViolation = Shapes::StructureShape.new(name: 'ResourceViolation')
144
168
  ResourceViolations = Shapes::ListShape.new(name: 'ResourceViolations')
169
+ Route = Shapes::StructureShape.new(name: 'Route')
170
+ Routes = Shapes::ListShape.new(name: 'Routes')
145
171
  SecurityGroupRemediationAction = Shapes::StructureShape.new(name: 'SecurityGroupRemediationAction')
146
172
  SecurityGroupRemediationActions = Shapes::ListShape.new(name: 'SecurityGroupRemediationActions')
147
173
  SecurityGroupRuleDescription = Shapes::StructureShape.new(name: 'SecurityGroupRuleDescription')
@@ -159,6 +185,7 @@ module Aws::FMS
159
185
  TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
160
186
  TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
161
187
  TagValue = Shapes::StringShape.new(name: 'TagValue')
188
+ TargetType = Shapes::StringShape.new(name: 'TargetType')
162
189
  TargetViolationReason = Shapes::StringShape.new(name: 'TargetViolationReason')
163
190
  TargetViolationReasons = Shapes::ListShape.new(name: 'TargetViolationReasons')
164
191
  TimeStamp = Shapes::TimestampShape.new(name: 'TimeStamp')
@@ -169,6 +196,10 @@ module Aws::FMS
169
196
  ViolationReason = Shapes::StringShape.new(name: 'ViolationReason')
170
197
  ViolationTarget = Shapes::StringShape.new(name: 'ViolationTarget')
171
198
 
199
+ ActionTarget.add_member(:resource_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "ResourceId"))
200
+ ActionTarget.add_member(:description, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "Description"))
201
+ ActionTarget.struct_class = Types::ActionTarget
202
+
172
203
  App.add_member(:app_name, Shapes::ShapeRef.new(shape: ResourceName, required: true, location_name: "AppName"))
173
204
  App.add_member(:protocol, Shapes::ShapeRef.new(shape: Protocol, required: true, location_name: "Protocol"))
174
205
  App.add_member(:port, Shapes::ShapeRef.new(shape: IPPortNumber, required: true, location_name: "Port"))
@@ -256,6 +287,50 @@ module Aws::FMS
256
287
  DnsRuleGroupPriorityConflictViolation.add_member(:unavailable_priorities, Shapes::ShapeRef.new(shape: DnsRuleGroupPriorities, location_name: "UnavailablePriorities"))
257
288
  DnsRuleGroupPriorityConflictViolation.struct_class = Types::DnsRuleGroupPriorityConflictViolation
258
289
 
290
+ EC2AssociateRouteTableAction.add_member(:description, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "Description"))
291
+ EC2AssociateRouteTableAction.add_member(:route_table_id, Shapes::ShapeRef.new(shape: ActionTarget, required: true, location_name: "RouteTableId"))
292
+ EC2AssociateRouteTableAction.add_member(:subnet_id, Shapes::ShapeRef.new(shape: ActionTarget, location_name: "SubnetId"))
293
+ EC2AssociateRouteTableAction.add_member(:gateway_id, Shapes::ShapeRef.new(shape: ActionTarget, location_name: "GatewayId"))
294
+ EC2AssociateRouteTableAction.struct_class = Types::EC2AssociateRouteTableAction
295
+
296
+ EC2CopyRouteTableAction.add_member(:description, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "Description"))
297
+ EC2CopyRouteTableAction.add_member(:vpc_id, Shapes::ShapeRef.new(shape: ActionTarget, required: true, location_name: "VpcId"))
298
+ EC2CopyRouteTableAction.add_member(:route_table_id, Shapes::ShapeRef.new(shape: ActionTarget, required: true, location_name: "RouteTableId"))
299
+ EC2CopyRouteTableAction.struct_class = Types::EC2CopyRouteTableAction
300
+
301
+ EC2CreateRouteAction.add_member(:description, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "Description"))
302
+ EC2CreateRouteAction.add_member(:destination_cidr_block, Shapes::ShapeRef.new(shape: CIDR, location_name: "DestinationCidrBlock"))
303
+ EC2CreateRouteAction.add_member(:destination_prefix_list_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "DestinationPrefixListId"))
304
+ EC2CreateRouteAction.add_member(:destination_ipv_6_cidr_block, Shapes::ShapeRef.new(shape: CIDR, location_name: "DestinationIpv6CidrBlock"))
305
+ EC2CreateRouteAction.add_member(:vpc_endpoint_id, Shapes::ShapeRef.new(shape: ActionTarget, location_name: "VpcEndpointId"))
306
+ EC2CreateRouteAction.add_member(:gateway_id, Shapes::ShapeRef.new(shape: ActionTarget, location_name: "GatewayId"))
307
+ EC2CreateRouteAction.add_member(:route_table_id, Shapes::ShapeRef.new(shape: ActionTarget, required: true, location_name: "RouteTableId"))
308
+ EC2CreateRouteAction.struct_class = Types::EC2CreateRouteAction
309
+
310
+ EC2CreateRouteTableAction.add_member(:description, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "Description"))
311
+ EC2CreateRouteTableAction.add_member(:vpc_id, Shapes::ShapeRef.new(shape: ActionTarget, required: true, location_name: "VpcId"))
312
+ EC2CreateRouteTableAction.struct_class = Types::EC2CreateRouteTableAction
313
+
314
+ EC2DeleteRouteAction.add_member(:description, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "Description"))
315
+ EC2DeleteRouteAction.add_member(:destination_cidr_block, Shapes::ShapeRef.new(shape: CIDR, location_name: "DestinationCidrBlock"))
316
+ EC2DeleteRouteAction.add_member(:destination_prefix_list_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "DestinationPrefixListId"))
317
+ EC2DeleteRouteAction.add_member(:destination_ipv_6_cidr_block, Shapes::ShapeRef.new(shape: CIDR, location_name: "DestinationIpv6CidrBlock"))
318
+ EC2DeleteRouteAction.add_member(:route_table_id, Shapes::ShapeRef.new(shape: ActionTarget, required: true, location_name: "RouteTableId"))
319
+ EC2DeleteRouteAction.struct_class = Types::EC2DeleteRouteAction
320
+
321
+ EC2ReplaceRouteAction.add_member(:description, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "Description"))
322
+ EC2ReplaceRouteAction.add_member(:destination_cidr_block, Shapes::ShapeRef.new(shape: CIDR, location_name: "DestinationCidrBlock"))
323
+ EC2ReplaceRouteAction.add_member(:destination_prefix_list_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "DestinationPrefixListId"))
324
+ EC2ReplaceRouteAction.add_member(:destination_ipv_6_cidr_block, Shapes::ShapeRef.new(shape: CIDR, location_name: "DestinationIpv6CidrBlock"))
325
+ EC2ReplaceRouteAction.add_member(:gateway_id, Shapes::ShapeRef.new(shape: ActionTarget, location_name: "GatewayId"))
326
+ EC2ReplaceRouteAction.add_member(:route_table_id, Shapes::ShapeRef.new(shape: ActionTarget, required: true, location_name: "RouteTableId"))
327
+ EC2ReplaceRouteAction.struct_class = Types::EC2ReplaceRouteAction
328
+
329
+ EC2ReplaceRouteTableAssociationAction.add_member(:description, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "Description"))
330
+ EC2ReplaceRouteTableAssociationAction.add_member(:association_id, Shapes::ShapeRef.new(shape: ActionTarget, required: true, location_name: "AssociationId"))
331
+ EC2ReplaceRouteTableAssociationAction.add_member(:route_table_id, Shapes::ShapeRef.new(shape: ActionTarget, required: true, location_name: "RouteTableId"))
332
+ EC2ReplaceRouteTableAssociationAction.struct_class = Types::EC2ReplaceRouteTableAssociationAction
333
+
259
334
  EvaluationResult.add_member(:compliance_status, Shapes::ShapeRef.new(shape: PolicyComplianceStatusType, location_name: "ComplianceStatus"))
260
335
  EvaluationResult.add_member(:violator_count, Shapes::ShapeRef.new(shape: ResourceCount, location_name: "ViolatorCount"))
261
336
  EvaluationResult.add_member(:evaluation_limit_exceeded, Shapes::ShapeRef.new(shape: Boolean, location_name: "EvaluationLimitExceeded"))
@@ -263,6 +338,16 @@ module Aws::FMS
263
338
 
264
339
  EvaluationResults.member = Shapes::ShapeRef.new(shape: EvaluationResult)
265
340
 
341
+ ExpectedRoute.add_member(:ip_v4_cidr, Shapes::ShapeRef.new(shape: CIDR, location_name: "IpV4Cidr"))
342
+ ExpectedRoute.add_member(:prefix_list_id, Shapes::ShapeRef.new(shape: CIDR, location_name: "PrefixListId"))
343
+ ExpectedRoute.add_member(:ip_v6_cidr, Shapes::ShapeRef.new(shape: CIDR, location_name: "IpV6Cidr"))
344
+ ExpectedRoute.add_member(:contributing_subnets, Shapes::ShapeRef.new(shape: ResourceIdList, location_name: "ContributingSubnets"))
345
+ ExpectedRoute.add_member(:allowed_targets, Shapes::ShapeRef.new(shape: LengthBoundedStringList, location_name: "AllowedTargets"))
346
+ ExpectedRoute.add_member(:route_table_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "RouteTableId"))
347
+ ExpectedRoute.struct_class = Types::ExpectedRoute
348
+
349
+ ExpectedRoutes.member = Shapes::ShapeRef.new(shape: ExpectedRoute)
350
+
266
351
  GetAdminAccountRequest.struct_class = Types::GetAdminAccountRequest
267
352
 
268
353
  GetAdminAccountResponse.add_member(:admin_account, Shapes::ShapeRef.new(shape: AWSAccountId, location_name: "AdminAccount"))
@@ -343,6 +428,8 @@ module Aws::FMS
343
428
  IssueInfoMap.key = Shapes::ShapeRef.new(shape: DependentServiceName)
344
429
  IssueInfoMap.value = Shapes::ShapeRef.new(shape: DetailedInfo)
345
430
 
431
+ LengthBoundedStringList.member = Shapes::ShapeRef.new(shape: LengthBoundedString)
432
+
346
433
  LimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
347
434
  LimitExceededException.struct_class = Types::LimitExceededException
348
435
 
@@ -399,6 +486,47 @@ module Aws::FMS
399
486
 
400
487
  NetworkFirewallActionList.member = Shapes::ShapeRef.new(shape: NetworkFirewallAction)
401
488
 
489
+ NetworkFirewallBlackHoleRouteDetectedViolation.add_member(:violation_target, Shapes::ShapeRef.new(shape: ViolationTarget, location_name: "ViolationTarget"))
490
+ NetworkFirewallBlackHoleRouteDetectedViolation.add_member(:route_table_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "RouteTableId"))
491
+ NetworkFirewallBlackHoleRouteDetectedViolation.add_member(:vpc_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "VpcId"))
492
+ NetworkFirewallBlackHoleRouteDetectedViolation.add_member(:violating_routes, Shapes::ShapeRef.new(shape: Routes, location_name: "ViolatingRoutes"))
493
+ NetworkFirewallBlackHoleRouteDetectedViolation.struct_class = Types::NetworkFirewallBlackHoleRouteDetectedViolation
494
+
495
+ NetworkFirewallInternetTrafficNotInspectedViolation.add_member(:subnet_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "SubnetId"))
496
+ NetworkFirewallInternetTrafficNotInspectedViolation.add_member(:subnet_availability_zone, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "SubnetAvailabilityZone"))
497
+ NetworkFirewallInternetTrafficNotInspectedViolation.add_member(:route_table_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "RouteTableId"))
498
+ NetworkFirewallInternetTrafficNotInspectedViolation.add_member(:violating_routes, Shapes::ShapeRef.new(shape: Routes, location_name: "ViolatingRoutes"))
499
+ NetworkFirewallInternetTrafficNotInspectedViolation.add_member(:is_route_table_used_in_different_az, Shapes::ShapeRef.new(shape: Boolean, location_name: "IsRouteTableUsedInDifferentAZ"))
500
+ NetworkFirewallInternetTrafficNotInspectedViolation.add_member(:current_firewall_subnet_route_table, Shapes::ShapeRef.new(shape: ResourceId, location_name: "CurrentFirewallSubnetRouteTable"))
501
+ NetworkFirewallInternetTrafficNotInspectedViolation.add_member(:expected_firewall_endpoint, Shapes::ShapeRef.new(shape: ResourceId, location_name: "ExpectedFirewallEndpoint"))
502
+ NetworkFirewallInternetTrafficNotInspectedViolation.add_member(:firewall_subnet_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "FirewallSubnetId"))
503
+ NetworkFirewallInternetTrafficNotInspectedViolation.add_member(:expected_firewall_subnet_routes, Shapes::ShapeRef.new(shape: ExpectedRoutes, location_name: "ExpectedFirewallSubnetRoutes"))
504
+ NetworkFirewallInternetTrafficNotInspectedViolation.add_member(:actual_firewall_subnet_routes, Shapes::ShapeRef.new(shape: Routes, location_name: "ActualFirewallSubnetRoutes"))
505
+ NetworkFirewallInternetTrafficNotInspectedViolation.add_member(:internet_gateway_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "InternetGatewayId"))
506
+ NetworkFirewallInternetTrafficNotInspectedViolation.add_member(:current_internet_gateway_route_table, Shapes::ShapeRef.new(shape: ResourceId, location_name: "CurrentInternetGatewayRouteTable"))
507
+ NetworkFirewallInternetTrafficNotInspectedViolation.add_member(:expected_internet_gateway_routes, Shapes::ShapeRef.new(shape: ExpectedRoutes, location_name: "ExpectedInternetGatewayRoutes"))
508
+ NetworkFirewallInternetTrafficNotInspectedViolation.add_member(:actual_internet_gateway_routes, Shapes::ShapeRef.new(shape: Routes, location_name: "ActualInternetGatewayRoutes"))
509
+ NetworkFirewallInternetTrafficNotInspectedViolation.add_member(:vpc_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "VpcId"))
510
+ NetworkFirewallInternetTrafficNotInspectedViolation.struct_class = Types::NetworkFirewallInternetTrafficNotInspectedViolation
511
+
512
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:affected_subnets, Shapes::ShapeRef.new(shape: ResourceIdList, location_name: "AffectedSubnets"))
513
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:route_table_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "RouteTableId"))
514
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:is_route_table_used_in_different_az, Shapes::ShapeRef.new(shape: Boolean, location_name: "IsRouteTableUsedInDifferentAZ"))
515
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:violating_route, Shapes::ShapeRef.new(shape: Route, location_name: "ViolatingRoute"))
516
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:current_firewall_subnet_route_table, Shapes::ShapeRef.new(shape: ResourceId, location_name: "CurrentFirewallSubnetRouteTable"))
517
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:expected_firewall_endpoint, Shapes::ShapeRef.new(shape: ResourceId, location_name: "ExpectedFirewallEndpoint"))
518
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:actual_firewall_endpoint, Shapes::ShapeRef.new(shape: ResourceId, location_name: "ActualFirewallEndpoint"))
519
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:expected_firewall_subnet_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "ExpectedFirewallSubnetId"))
520
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:actual_firewall_subnet_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "ActualFirewallSubnetId"))
521
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:expected_firewall_subnet_routes, Shapes::ShapeRef.new(shape: ExpectedRoutes, location_name: "ExpectedFirewallSubnetRoutes"))
522
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:actual_firewall_subnet_routes, Shapes::ShapeRef.new(shape: Routes, location_name: "ActualFirewallSubnetRoutes"))
523
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:internet_gateway_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "InternetGatewayId"))
524
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:current_internet_gateway_route_table, Shapes::ShapeRef.new(shape: ResourceId, location_name: "CurrentInternetGatewayRouteTable"))
525
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:expected_internet_gateway_routes, Shapes::ShapeRef.new(shape: ExpectedRoutes, location_name: "ExpectedInternetGatewayRoutes"))
526
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:actual_internet_gateway_routes, Shapes::ShapeRef.new(shape: Routes, location_name: "ActualInternetGatewayRoutes"))
527
+ NetworkFirewallInvalidRouteConfigurationViolation.add_member(:vpc_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "VpcId"))
528
+ NetworkFirewallInvalidRouteConfigurationViolation.struct_class = Types::NetworkFirewallInvalidRouteConfigurationViolation
529
+
402
530
  NetworkFirewallMissingExpectedRTViolation.add_member(:violation_target, Shapes::ShapeRef.new(shape: ViolationTarget, location_name: "ViolationTarget"))
403
531
  NetworkFirewallMissingExpectedRTViolation.add_member(:vpc, Shapes::ShapeRef.new(shape: ResourceId, location_name: "VPC"))
404
532
  NetworkFirewallMissingExpectedRTViolation.add_member(:availability_zone, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "AvailabilityZone"))
@@ -406,6 +534,11 @@ module Aws::FMS
406
534
  NetworkFirewallMissingExpectedRTViolation.add_member(:expected_route_table, Shapes::ShapeRef.new(shape: ResourceId, location_name: "ExpectedRouteTable"))
407
535
  NetworkFirewallMissingExpectedRTViolation.struct_class = Types::NetworkFirewallMissingExpectedRTViolation
408
536
 
537
+ NetworkFirewallMissingExpectedRoutesViolation.add_member(:violation_target, Shapes::ShapeRef.new(shape: ViolationTarget, location_name: "ViolationTarget"))
538
+ NetworkFirewallMissingExpectedRoutesViolation.add_member(:expected_routes, Shapes::ShapeRef.new(shape: ExpectedRoutes, location_name: "ExpectedRoutes"))
539
+ NetworkFirewallMissingExpectedRoutesViolation.add_member(:vpc_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "VpcId"))
540
+ NetworkFirewallMissingExpectedRoutesViolation.struct_class = Types::NetworkFirewallMissingExpectedRoutesViolation
541
+
409
542
  NetworkFirewallMissingFirewallViolation.add_member(:violation_target, Shapes::ShapeRef.new(shape: ViolationTarget, location_name: "ViolationTarget"))
410
543
  NetworkFirewallMissingFirewallViolation.add_member(:vpc, Shapes::ShapeRef.new(shape: ResourceId, location_name: "VPC"))
411
544
  NetworkFirewallMissingFirewallViolation.add_member(:availability_zone, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "AvailabilityZone"))
@@ -430,6 +563,21 @@ module Aws::FMS
430
563
  NetworkFirewallPolicyModifiedViolation.add_member(:expected_policy_description, Shapes::ShapeRef.new(shape: NetworkFirewallPolicyDescription, location_name: "ExpectedPolicyDescription"))
431
564
  NetworkFirewallPolicyModifiedViolation.struct_class = Types::NetworkFirewallPolicyModifiedViolation
432
565
 
566
+ NetworkFirewallUnexpectedFirewallRoutesViolation.add_member(:firewall_subnet_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "FirewallSubnetId"))
567
+ NetworkFirewallUnexpectedFirewallRoutesViolation.add_member(:violating_routes, Shapes::ShapeRef.new(shape: Routes, location_name: "ViolatingRoutes"))
568
+ NetworkFirewallUnexpectedFirewallRoutesViolation.add_member(:route_table_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "RouteTableId"))
569
+ NetworkFirewallUnexpectedFirewallRoutesViolation.add_member(:firewall_endpoint, Shapes::ShapeRef.new(shape: ResourceId, location_name: "FirewallEndpoint"))
570
+ NetworkFirewallUnexpectedFirewallRoutesViolation.add_member(:vpc_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "VpcId"))
571
+ NetworkFirewallUnexpectedFirewallRoutesViolation.struct_class = Types::NetworkFirewallUnexpectedFirewallRoutesViolation
572
+
573
+ NetworkFirewallUnexpectedGatewayRoutesViolation.add_member(:gateway_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "GatewayId"))
574
+ NetworkFirewallUnexpectedGatewayRoutesViolation.add_member(:violating_routes, Shapes::ShapeRef.new(shape: Routes, location_name: "ViolatingRoutes"))
575
+ NetworkFirewallUnexpectedGatewayRoutesViolation.add_member(:route_table_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "RouteTableId"))
576
+ NetworkFirewallUnexpectedGatewayRoutesViolation.add_member(:vpc_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "VpcId"))
577
+ NetworkFirewallUnexpectedGatewayRoutesViolation.struct_class = Types::NetworkFirewallUnexpectedGatewayRoutesViolation
578
+
579
+ OrderedRemediationActions.member = Shapes::ShapeRef.new(shape: RemediationActionWithOrder)
580
+
433
581
  PartialMatch.add_member(:reference, Shapes::ShapeRef.new(shape: ReferenceRule, location_name: "Reference"))
434
582
  PartialMatch.add_member(:target_violation_reasons, Shapes::ShapeRef.new(shape: TargetViolationReasons, location_name: "TargetViolationReasons"))
435
583
  PartialMatch.struct_class = Types::PartialMatch
@@ -479,6 +627,17 @@ module Aws::FMS
479
627
 
480
628
  PolicySummaryList.member = Shapes::ShapeRef.new(shape: PolicySummary)
481
629
 
630
+ PossibleRemediationAction.add_member(:description, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "Description"))
631
+ PossibleRemediationAction.add_member(:ordered_remediation_actions, Shapes::ShapeRef.new(shape: OrderedRemediationActions, required: true, location_name: "OrderedRemediationActions"))
632
+ PossibleRemediationAction.add_member(:is_default_action, Shapes::ShapeRef.new(shape: Boolean, location_name: "IsDefaultAction"))
633
+ PossibleRemediationAction.struct_class = Types::PossibleRemediationAction
634
+
635
+ PossibleRemediationActionList.member = Shapes::ShapeRef.new(shape: PossibleRemediationAction)
636
+
637
+ PossibleRemediationActions.add_member(:description, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "Description"))
638
+ PossibleRemediationActions.add_member(:actions, Shapes::ShapeRef.new(shape: PossibleRemediationActionList, location_name: "Actions"))
639
+ PossibleRemediationActions.struct_class = Types::PossibleRemediationActions
640
+
482
641
  PreviousAppsList.key = Shapes::ShapeRef.new(shape: PreviousListVersion)
483
642
  PreviousAppsList.value = Shapes::ShapeRef.new(shape: AppsList)
484
643
 
@@ -532,6 +691,20 @@ module Aws::FMS
532
691
  PutProtocolsListResponse.add_member(:protocols_list_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "ProtocolsListArn"))
533
692
  PutProtocolsListResponse.struct_class = Types::PutProtocolsListResponse
534
693
 
694
+ RemediationAction.add_member(:description, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "Description"))
695
+ RemediationAction.add_member(:ec2_create_route_action, Shapes::ShapeRef.new(shape: EC2CreateRouteAction, location_name: "EC2CreateRouteAction"))
696
+ RemediationAction.add_member(:ec2_replace_route_action, Shapes::ShapeRef.new(shape: EC2ReplaceRouteAction, location_name: "EC2ReplaceRouteAction"))
697
+ RemediationAction.add_member(:ec2_delete_route_action, Shapes::ShapeRef.new(shape: EC2DeleteRouteAction, location_name: "EC2DeleteRouteAction"))
698
+ RemediationAction.add_member(:ec2_copy_route_table_action, Shapes::ShapeRef.new(shape: EC2CopyRouteTableAction, location_name: "EC2CopyRouteTableAction"))
699
+ RemediationAction.add_member(:ec2_replace_route_table_association_action, Shapes::ShapeRef.new(shape: EC2ReplaceRouteTableAssociationAction, location_name: "EC2ReplaceRouteTableAssociationAction"))
700
+ RemediationAction.add_member(:ec2_associate_route_table_action, Shapes::ShapeRef.new(shape: EC2AssociateRouteTableAction, location_name: "EC2AssociateRouteTableAction"))
701
+ RemediationAction.add_member(:ec2_create_route_table_action, Shapes::ShapeRef.new(shape: EC2CreateRouteTableAction, location_name: "EC2CreateRouteTableAction"))
702
+ RemediationAction.struct_class = Types::RemediationAction
703
+
704
+ RemediationActionWithOrder.add_member(:remediation_action, Shapes::ShapeRef.new(shape: RemediationAction, location_name: "RemediationAction"))
705
+ RemediationActionWithOrder.add_member(:order, Shapes::ShapeRef.new(shape: BasicInteger, location_name: "Order"))
706
+ RemediationActionWithOrder.struct_class = Types::RemediationActionWithOrder
707
+
535
708
  ResourceIdList.member = Shapes::ShapeRef.new(shape: ResourceId)
536
709
 
537
710
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
@@ -552,13 +725,28 @@ module Aws::FMS
552
725
  ResourceViolation.add_member(:network_firewall_missing_subnet_violation, Shapes::ShapeRef.new(shape: NetworkFirewallMissingSubnetViolation, location_name: "NetworkFirewallMissingSubnetViolation"))
553
726
  ResourceViolation.add_member(:network_firewall_missing_expected_rt_violation, Shapes::ShapeRef.new(shape: NetworkFirewallMissingExpectedRTViolation, location_name: "NetworkFirewallMissingExpectedRTViolation"))
554
727
  ResourceViolation.add_member(:network_firewall_policy_modified_violation, Shapes::ShapeRef.new(shape: NetworkFirewallPolicyModifiedViolation, location_name: "NetworkFirewallPolicyModifiedViolation"))
728
+ ResourceViolation.add_member(:network_firewall_internet_traffic_not_inspected_violation, Shapes::ShapeRef.new(shape: NetworkFirewallInternetTrafficNotInspectedViolation, location_name: "NetworkFirewallInternetTrafficNotInspectedViolation"))
729
+ ResourceViolation.add_member(:network_firewall_invalid_route_configuration_violation, Shapes::ShapeRef.new(shape: NetworkFirewallInvalidRouteConfigurationViolation, location_name: "NetworkFirewallInvalidRouteConfigurationViolation"))
730
+ ResourceViolation.add_member(:network_firewall_black_hole_route_detected_violation, Shapes::ShapeRef.new(shape: NetworkFirewallBlackHoleRouteDetectedViolation, location_name: "NetworkFirewallBlackHoleRouteDetectedViolation"))
731
+ ResourceViolation.add_member(:network_firewall_unexpected_firewall_routes_violation, Shapes::ShapeRef.new(shape: NetworkFirewallUnexpectedFirewallRoutesViolation, location_name: "NetworkFirewallUnexpectedFirewallRoutesViolation"))
732
+ ResourceViolation.add_member(:network_firewall_unexpected_gateway_routes_violation, Shapes::ShapeRef.new(shape: NetworkFirewallUnexpectedGatewayRoutesViolation, location_name: "NetworkFirewallUnexpectedGatewayRoutesViolation"))
733
+ ResourceViolation.add_member(:network_firewall_missing_expected_routes_violation, Shapes::ShapeRef.new(shape: NetworkFirewallMissingExpectedRoutesViolation, location_name: "NetworkFirewallMissingExpectedRoutesViolation"))
555
734
  ResourceViolation.add_member(:dns_rule_group_priority_conflict_violation, Shapes::ShapeRef.new(shape: DnsRuleGroupPriorityConflictViolation, location_name: "DnsRuleGroupPriorityConflictViolation"))
556
735
  ResourceViolation.add_member(:dns_duplicate_rule_group_violation, Shapes::ShapeRef.new(shape: DnsDuplicateRuleGroupViolation, location_name: "DnsDuplicateRuleGroupViolation"))
557
736
  ResourceViolation.add_member(:dns_rule_group_limit_exceeded_violation, Shapes::ShapeRef.new(shape: DnsRuleGroupLimitExceededViolation, location_name: "DnsRuleGroupLimitExceededViolation"))
737
+ ResourceViolation.add_member(:possible_remediation_actions, Shapes::ShapeRef.new(shape: PossibleRemediationActions, location_name: "PossibleRemediationActions"))
558
738
  ResourceViolation.struct_class = Types::ResourceViolation
559
739
 
560
740
  ResourceViolations.member = Shapes::ShapeRef.new(shape: ResourceViolation)
561
741
 
742
+ Route.add_member(:destination_type, Shapes::ShapeRef.new(shape: DestinationType, location_name: "DestinationType"))
743
+ Route.add_member(:target_type, Shapes::ShapeRef.new(shape: TargetType, location_name: "TargetType"))
744
+ Route.add_member(:destination, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "Destination"))
745
+ Route.add_member(:target, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "Target"))
746
+ Route.struct_class = Types::Route
747
+
748
+ Routes.member = Shapes::ShapeRef.new(shape: Route)
749
+
562
750
  SecurityGroupRemediationAction.add_member(:remediation_action_type, Shapes::ShapeRef.new(shape: RemediationActionType, location_name: "RemediationActionType"))
563
751
  SecurityGroupRemediationAction.add_member(:description, Shapes::ShapeRef.new(shape: RemediationActionDescription, location_name: "Description"))
564
752
  SecurityGroupRemediationAction.add_member(:remediation_result, Shapes::ShapeRef.new(shape: SecurityGroupRuleDescription, location_name: "RemediationResult"))
@@ -652,6 +840,7 @@ module Aws::FMS
652
840
  o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
653
841
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
654
842
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
843
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
655
844
  end)
656
845
 
657
846
  api.add_operation(:delete_apps_list, Seahorse::Model::Operation.new.tap do |o|
@@ -811,6 +1000,12 @@ module Aws::FMS
811
1000
  o.errors << Shapes::ShapeRef.new(shape: InvalidOperationException)
812
1001
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
813
1002
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
1003
+ o[:pager] = Aws::Pager.new(
1004
+ limit_key: "max_results",
1005
+ tokens: {
1006
+ "next_token" => "next_token"
1007
+ }
1008
+ )
814
1009
  end)
815
1010
 
816
1011
  api.add_operation(:list_compliance_status, Seahorse::Model::Operation.new.tap do |o|
@@ -872,6 +1067,12 @@ module Aws::FMS
872
1067
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
873
1068
  o.errors << Shapes::ShapeRef.new(shape: InvalidOperationException)
874
1069
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
1070
+ o[:pager] = Aws::Pager.new(
1071
+ limit_key: "max_results",
1072
+ tokens: {
1073
+ "next_token" => "next_token"
1074
+ }
1075
+ )
875
1076
  end)
876
1077
 
877
1078
  api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
@@ -10,7 +10,26 @@
10
10
  module Aws::FMS
11
11
  module Types
12
12
 
13
- # An individual AWS Firewall Manager application.
13
+ # Describes a remediation action target.
14
+ #
15
+ # @!attribute [rw] resource_id
16
+ # The ID of the remediation target.
17
+ # @return [String]
18
+ #
19
+ # @!attribute [rw] description
20
+ # A description of the remediation action target.
21
+ # @return [String]
22
+ #
23
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ActionTarget AWS API Documentation
24
+ #
25
+ class ActionTarget < Struct.new(
26
+ :resource_id,
27
+ :description)
28
+ SENSITIVE = []
29
+ include Aws::Structure
30
+ end
31
+
32
+ # An individual Firewall Manager application.
14
33
  #
15
34
  # @note When making an API call, you may pass App
16
35
  # data as a hash:
@@ -49,7 +68,7 @@ module Aws::FMS
49
68
  include Aws::Structure
50
69
  end
51
70
 
52
- # An AWS Firewall Manager applications list.
71
+ # An Firewall Manager applications list.
53
72
  #
54
73
  # @note When making an API call, you may pass AppsListData
55
74
  # data as a hash:
@@ -79,11 +98,11 @@ module Aws::FMS
79
98
  # }
80
99
  #
81
100
  # @!attribute [rw] list_id
82
- # The ID of the AWS Firewall Manager applications list.
101
+ # The ID of the Firewall Manager applications list.
83
102
  # @return [String]
84
103
  #
85
104
  # @!attribute [rw] list_name
86
- # The name of the AWS Firewall Manager applications list.
105
+ # The name of the Firewall Manager applications list.
87
106
  # @return [String]
88
107
  #
89
108
  # @!attribute [rw] list_update_token
@@ -94,18 +113,16 @@ module Aws::FMS
94
113
  # @return [String]
95
114
  #
96
115
  # @!attribute [rw] create_time
97
- # The time that the AWS Firewall Manager applications list was
98
- # created.
116
+ # The time that the Firewall Manager applications list was created.
99
117
  # @return [Time]
100
118
  #
101
119
  # @!attribute [rw] last_update_time
102
- # The time that the AWS Firewall Manager applications list was last
120
+ # The time that the Firewall Manager applications list was last
103
121
  # updated.
104
122
  # @return [Time]
105
123
  #
106
124
  # @!attribute [rw] apps_list
107
- # An array of applications in the AWS Firewall Manager applications
108
- # list.
125
+ # An array of applications in the Firewall Manager applications list.
109
126
  # @return [Array<Types::App>]
110
127
  #
111
128
  # @!attribute [rw] previous_apps_list
@@ -127,7 +144,7 @@ module Aws::FMS
127
144
  include Aws::Structure
128
145
  end
129
146
 
130
- # Details of the AWS Firewall Manager applications list.
147
+ # Details of the Firewall Manager applications list.
131
148
  #
132
149
  # @!attribute [rw] list_arn
133
150
  # The Amazon Resource Name (ARN) of the applications list.
@@ -142,8 +159,7 @@ module Aws::FMS
142
159
  # @return [String]
143
160
  #
144
161
  # @!attribute [rw] apps_list
145
- # An array of `App` objects in the AWS Firewall Manager applications
146
- # list.
162
+ # An array of `App` objects in the Firewall Manager applications list.
147
163
  # @return [Array<Types::App>]
148
164
  #
149
165
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/AppsListDataSummary AWS API Documentation
@@ -165,11 +181,11 @@ module Aws::FMS
165
181
  # }
166
182
  #
167
183
  # @!attribute [rw] admin_account
168
- # The AWS account ID to associate with AWS Firewall Manager as the AWS
169
- # Firewall Manager administrator account. This can be an AWS
170
- # Organizations master account or a member account. For more
171
- # information about AWS Organizations and master accounts, see
172
- # [Managing the AWS Accounts in Your Organization][1].
184
+ # The Amazon Web Services account ID to associate with Firewall
185
+ # Manager as the Firewall Manager administrator account. This must be
186
+ # an Organizations member account. For more information about
187
+ # Organizations, see [Managing the Amazon Web Services Accounts in
188
+ # Your Organization][1].
173
189
  #
174
190
  #
175
191
  #
@@ -184,14 +200,15 @@ module Aws::FMS
184
200
  include Aws::Structure
185
201
  end
186
202
 
187
- # Violations for an EC2 instance resource.
203
+ # Violation detail for an EC2 instance resource.
188
204
  #
189
205
  # @!attribute [rw] violation_target
190
206
  # The resource ID of the EC2 instance.
191
207
  # @return [String]
192
208
  #
193
209
  # @!attribute [rw] aws_ec2_network_interface_violations
194
- # Violations for network interfaces associated with the EC2 instance.
210
+ # Violation detail for network interfaces associated with the EC2
211
+ # instance.
195
212
  # @return [Array<Types::AwsEc2NetworkInterfaceViolation>]
196
213
  #
197
214
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/AwsEc2InstanceViolation AWS API Documentation
@@ -203,7 +220,8 @@ module Aws::FMS
203
220
  include Aws::Structure
204
221
  end
205
222
 
206
- # Violations for network interfaces associated with an EC2 instance.
223
+ # Violation detail for network interfaces associated with an EC2
224
+ # instance.
207
225
  #
208
226
  # @!attribute [rw] violation_target
209
227
  # The resource ID of the network interface.
@@ -211,7 +229,7 @@ module Aws::FMS
211
229
  #
212
230
  # @!attribute [rw] violating_security_groups
213
231
  # List of security groups that violate the rules specified in the
214
- # master security group of the AWS Firewall Manager policy.
232
+ # primary security group of the Firewall Manager policy.
215
233
  # @return [Array<String>]
216
234
  #
217
235
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/AwsEc2NetworkInterfaceViolation AWS API Documentation
@@ -223,8 +241,8 @@ module Aws::FMS
223
241
  include Aws::Structure
224
242
  end
225
243
 
226
- # Details of the rule violation in a security group when compared to the
227
- # master security group of the AWS Firewall Manager policy.
244
+ # Violation detail for the rule violation in a security group when
245
+ # compared to the primary security group of the Firewall Manager policy.
228
246
  #
229
247
  # @!attribute [rw] violation_target
230
248
  # The security group rule that is being evaluated.
@@ -235,7 +253,7 @@ module Aws::FMS
235
253
  # @return [String]
236
254
  #
237
255
  # @!attribute [rw] partial_matches
238
- # List of rules specified in the security group of the AWS Firewall
256
+ # List of rules specified in the security group of the Firewall
239
257
  # Manager policy that partially match the `ViolationTarget` rule.
240
258
  # @return [Array<Types::PartialMatch>]
241
259
  #
@@ -265,8 +283,8 @@ module Aws::FMS
265
283
  # @return [String]
266
284
  #
267
285
  # @!attribute [rw] resource_type
268
- # The resource type. This is in the format shown in the [AWS Resource
269
- # Types Reference][1]. For example:
286
+ # The resource type. This is in the format shown in the [Amazon Web
287
+ # Services Resource Types Reference][1]. For example:
270
288
  # `AWS::ElasticLoadBalancingV2::LoadBalancer`,
271
289
  # `AWS::CloudFront::Distribution`, or
272
290
  # `AWS::NetworkFirewall::FirewallPolicy`.
@@ -330,10 +348,10 @@ module Aws::FMS
330
348
  # If `True`, the request performs cleanup according to the policy
331
349
  # type.
332
350
  #
333
- # For AWS WAF and Shield Advanced policies, the cleanup does the
351
+ # For WAF and Shield Advanced policies, the cleanup does the
334
352
  # following:
335
353
  #
336
- # * Deletes rule groups created by AWS Firewall Manager
354
+ # * Deletes rule groups created by Firewall Manager
337
355
  #
338
356
  # * Removes web ACLs from in-scope resources
339
357
  #
@@ -399,7 +417,7 @@ module Aws::FMS
399
417
  # again.
400
418
  #
401
419
  # @!attribute [rw] violation_target
402
- # The ID of the VPC.
420
+ # Information about the VPC ID.
403
421
  # @return [String]
404
422
  #
405
423
  # @!attribute [rw] violation_target_description
@@ -422,7 +440,7 @@ module Aws::FMS
422
440
  # due to the limit.
423
441
  #
424
442
  # @!attribute [rw] violation_target
425
- # The ID of the VPC.
443
+ # Information about the VPC ID.
426
444
  # @return [String]
427
445
  #
428
446
  # @!attribute [rw] violation_target_description
@@ -448,7 +466,7 @@ module Aws::FMS
448
466
  # the same priority as a rule group that's already associated.
449
467
  #
450
468
  # @!attribute [rw] violation_target
451
- # The ID of the VPC.
469
+ # Information about the VPC ID.
452
470
  # @return [String]
453
471
  #
454
472
  # @!attribute [rw] violation_target_description
@@ -484,19 +502,254 @@ module Aws::FMS
484
502
  include Aws::Structure
485
503
  end
486
504
 
505
+ # The action of associating an EC2 resource, such as a subnet or
506
+ # internet gateway, with a route table.
507
+ #
508
+ # @!attribute [rw] description
509
+ # A description of the EC2 route table that is associated with the
510
+ # remediation action.
511
+ # @return [String]
512
+ #
513
+ # @!attribute [rw] route_table_id
514
+ # The ID of the EC2 route table that is associated with the
515
+ # remediation action.
516
+ # @return [Types::ActionTarget]
517
+ #
518
+ # @!attribute [rw] subnet_id
519
+ # The ID of the subnet for the EC2 route table that is associated with
520
+ # the remediation action.
521
+ # @return [Types::ActionTarget]
522
+ #
523
+ # @!attribute [rw] gateway_id
524
+ # The ID of the gateway to be used with the EC2 route table that is
525
+ # associated with the remediation action.
526
+ # @return [Types::ActionTarget]
527
+ #
528
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/EC2AssociateRouteTableAction AWS API Documentation
529
+ #
530
+ class EC2AssociateRouteTableAction < Struct.new(
531
+ :description,
532
+ :route_table_id,
533
+ :subnet_id,
534
+ :gateway_id)
535
+ SENSITIVE = []
536
+ include Aws::Structure
537
+ end
538
+
539
+ # An action that copies the EC2 route table for use in remediation.
540
+ #
541
+ # @!attribute [rw] description
542
+ # A description of the copied EC2 route table that is associated with
543
+ # the remediation action.
544
+ # @return [String]
545
+ #
546
+ # @!attribute [rw] vpc_id
547
+ # The VPC ID of the copied EC2 route table that is associated with the
548
+ # remediation action.
549
+ # @return [Types::ActionTarget]
550
+ #
551
+ # @!attribute [rw] route_table_id
552
+ # The ID of the copied EC2 route table that is associated with the
553
+ # remediation action.
554
+ # @return [Types::ActionTarget]
555
+ #
556
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/EC2CopyRouteTableAction AWS API Documentation
557
+ #
558
+ class EC2CopyRouteTableAction < Struct.new(
559
+ :description,
560
+ :vpc_id,
561
+ :route_table_id)
562
+ SENSITIVE = []
563
+ include Aws::Structure
564
+ end
565
+
566
+ # Information about the CreateRoute action in Amazon EC2.
567
+ #
568
+ # @!attribute [rw] description
569
+ # A description of CreateRoute action in Amazon EC2.
570
+ # @return [String]
571
+ #
572
+ # @!attribute [rw] destination_cidr_block
573
+ # Information about the IPv4 CIDR address block used for the
574
+ # destination match.
575
+ # @return [String]
576
+ #
577
+ # @!attribute [rw] destination_prefix_list_id
578
+ # Information about the ID of a prefix list used for the destination
579
+ # match.
580
+ # @return [String]
581
+ #
582
+ # @!attribute [rw] destination_ipv_6_cidr_block
583
+ # Information about the IPv6 CIDR block destination.
584
+ # @return [String]
585
+ #
586
+ # @!attribute [rw] vpc_endpoint_id
587
+ # Information about the ID of a VPC endpoint. Supported for Gateway
588
+ # Load Balancer endpoints only.
589
+ # @return [Types::ActionTarget]
590
+ #
591
+ # @!attribute [rw] gateway_id
592
+ # Information about the ID of an internet gateway or virtual private
593
+ # gateway attached to your VPC.
594
+ # @return [Types::ActionTarget]
595
+ #
596
+ # @!attribute [rw] route_table_id
597
+ # Information about the ID of the route table for the route.
598
+ # @return [Types::ActionTarget]
599
+ #
600
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/EC2CreateRouteAction AWS API Documentation
601
+ #
602
+ class EC2CreateRouteAction < Struct.new(
603
+ :description,
604
+ :destination_cidr_block,
605
+ :destination_prefix_list_id,
606
+ :destination_ipv_6_cidr_block,
607
+ :vpc_endpoint_id,
608
+ :gateway_id,
609
+ :route_table_id)
610
+ SENSITIVE = []
611
+ include Aws::Structure
612
+ end
613
+
614
+ # Information about the CreateRouteTable action in Amazon EC2.
615
+ #
616
+ # @!attribute [rw] description
617
+ # A description of the CreateRouteTable action.
618
+ # @return [String]
619
+ #
620
+ # @!attribute [rw] vpc_id
621
+ # Information about the ID of a VPC.
622
+ # @return [Types::ActionTarget]
623
+ #
624
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/EC2CreateRouteTableAction AWS API Documentation
625
+ #
626
+ class EC2CreateRouteTableAction < Struct.new(
627
+ :description,
628
+ :vpc_id)
629
+ SENSITIVE = []
630
+ include Aws::Structure
631
+ end
632
+
633
+ # Information about the DeleteRoute action in Amazon EC2.
634
+ #
635
+ # @!attribute [rw] description
636
+ # A description of the DeleteRoute action.
637
+ # @return [String]
638
+ #
639
+ # @!attribute [rw] destination_cidr_block
640
+ # Information about the IPv4 CIDR range for the route. The value you
641
+ # specify must match the CIDR for the route exactly.
642
+ # @return [String]
643
+ #
644
+ # @!attribute [rw] destination_prefix_list_id
645
+ # Information about the ID of the prefix list for the route.
646
+ # @return [String]
647
+ #
648
+ # @!attribute [rw] destination_ipv_6_cidr_block
649
+ # Information about the IPv6 CIDR range for the route. The value you
650
+ # specify must match the CIDR for the route exactly.
651
+ # @return [String]
652
+ #
653
+ # @!attribute [rw] route_table_id
654
+ # Information about the ID of the route table.
655
+ # @return [Types::ActionTarget]
656
+ #
657
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/EC2DeleteRouteAction AWS API Documentation
658
+ #
659
+ class EC2DeleteRouteAction < Struct.new(
660
+ :description,
661
+ :destination_cidr_block,
662
+ :destination_prefix_list_id,
663
+ :destination_ipv_6_cidr_block,
664
+ :route_table_id)
665
+ SENSITIVE = []
666
+ include Aws::Structure
667
+ end
668
+
669
+ # Information about the ReplaceRoute action in Amazon EC2.
670
+ #
671
+ # @!attribute [rw] description
672
+ # A description of the ReplaceRoute action in Amazon EC2.
673
+ # @return [String]
674
+ #
675
+ # @!attribute [rw] destination_cidr_block
676
+ # Information about the IPv4 CIDR address block used for the
677
+ # destination match. The value that you provide must match the CIDR of
678
+ # an existing route in the table.
679
+ # @return [String]
680
+ #
681
+ # @!attribute [rw] destination_prefix_list_id
682
+ # Information about the ID of the prefix list for the route.
683
+ # @return [String]
684
+ #
685
+ # @!attribute [rw] destination_ipv_6_cidr_block
686
+ # Information about the IPv6 CIDR address block used for the
687
+ # destination match. The value that you provide must match the CIDR of
688
+ # an existing route in the table.
689
+ # @return [String]
690
+ #
691
+ # @!attribute [rw] gateway_id
692
+ # Information about the ID of an internet gateway or virtual private
693
+ # gateway.
694
+ # @return [Types::ActionTarget]
695
+ #
696
+ # @!attribute [rw] route_table_id
697
+ # Information about the ID of the route table.
698
+ # @return [Types::ActionTarget]
699
+ #
700
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/EC2ReplaceRouteAction AWS API Documentation
701
+ #
702
+ class EC2ReplaceRouteAction < Struct.new(
703
+ :description,
704
+ :destination_cidr_block,
705
+ :destination_prefix_list_id,
706
+ :destination_ipv_6_cidr_block,
707
+ :gateway_id,
708
+ :route_table_id)
709
+ SENSITIVE = []
710
+ include Aws::Structure
711
+ end
712
+
713
+ # Information about the ReplaceRouteTableAssociation action in Amazon
714
+ # EC2.
715
+ #
716
+ # @!attribute [rw] description
717
+ # A description of the ReplaceRouteTableAssociation action in Amazon
718
+ # EC2.
719
+ # @return [String]
720
+ #
721
+ # @!attribute [rw] association_id
722
+ # Information about the association ID.
723
+ # @return [Types::ActionTarget]
724
+ #
725
+ # @!attribute [rw] route_table_id
726
+ # Information about the ID of the new route table to associate with
727
+ # the subnet.
728
+ # @return [Types::ActionTarget]
729
+ #
730
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/EC2ReplaceRouteTableAssociationAction AWS API Documentation
731
+ #
732
+ class EC2ReplaceRouteTableAssociationAction < Struct.new(
733
+ :description,
734
+ :association_id,
735
+ :route_table_id)
736
+ SENSITIVE = []
737
+ include Aws::Structure
738
+ end
739
+
487
740
  # Describes the compliance status for the account. An account is
488
741
  # considered noncompliant if it includes resources that are not
489
742
  # protected by the specified policy or that don't comply with the
490
743
  # policy.
491
744
  #
492
745
  # @!attribute [rw] compliance_status
493
- # Describes an AWS account's compliance with the AWS Firewall Manager
494
- # policy.
746
+ # Describes an Amazon Web Services account's compliance with the
747
+ # Firewall Manager policy.
495
748
  # @return [String]
496
749
  #
497
750
  # @!attribute [rw] violator_count
498
751
  # The number of resources that are noncompliant with the specified
499
- # policy. For AWS WAF and Shield Advanced policies, a resource is
752
+ # policy. For WAF and Shield Advanced policies, a resource is
500
753
  # considered noncompliant if it is not associated with the policy. For
501
754
  # security group policies, a resource is considered noncompliant if it
502
755
  # doesn't comply with the rules of the policy and remediation is
@@ -504,8 +757,8 @@ module Aws::FMS
504
757
  # @return [Integer]
505
758
  #
506
759
  # @!attribute [rw] evaluation_limit_exceeded
507
- # Indicates that over 100 resources are noncompliant with the AWS
508
- # Firewall Manager policy.
760
+ # Indicates that over 100 resources are noncompliant with the Firewall
761
+ # Manager policy.
509
762
  # @return [Boolean]
510
763
  #
511
764
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/EvaluationResult AWS API Documentation
@@ -518,6 +771,45 @@ module Aws::FMS
518
771
  include Aws::Structure
519
772
  end
520
773
 
774
+ # Information about the expected route in the route table.
775
+ #
776
+ # @!attribute [rw] ip_v4_cidr
777
+ # Information about the IPv4 CIDR block.
778
+ # @return [String]
779
+ #
780
+ # @!attribute [rw] prefix_list_id
781
+ # Information about the ID of the prefix list for the route.
782
+ # @return [String]
783
+ #
784
+ # @!attribute [rw] ip_v6_cidr
785
+ # Information about the IPv6 CIDR block.
786
+ # @return [String]
787
+ #
788
+ # @!attribute [rw] contributing_subnets
789
+ # Information about the contributing subnets.
790
+ # @return [Array<String>]
791
+ #
792
+ # @!attribute [rw] allowed_targets
793
+ # Information about the allowed targets.
794
+ # @return [Array<String>]
795
+ #
796
+ # @!attribute [rw] route_table_id
797
+ # Information about the route table ID.
798
+ # @return [String]
799
+ #
800
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ExpectedRoute AWS API Documentation
801
+ #
802
+ class ExpectedRoute < Struct.new(
803
+ :ip_v4_cidr,
804
+ :prefix_list_id,
805
+ :ip_v6_cidr,
806
+ :contributing_subnets,
807
+ :allowed_targets,
808
+ :route_table_id)
809
+ SENSITIVE = []
810
+ include Aws::Structure
811
+ end
812
+
521
813
  # @api private
522
814
  #
523
815
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetAdminAccountRequest AWS API Documentation
@@ -525,13 +817,13 @@ module Aws::FMS
525
817
  class GetAdminAccountRequest < Aws::EmptyStructure; end
526
818
 
527
819
  # @!attribute [rw] admin_account
528
- # The AWS account that is set as the AWS Firewall Manager
820
+ # The Amazon Web Services account that is set as the Firewall Manager
529
821
  # administrator.
530
822
  # @return [String]
531
823
  #
532
824
  # @!attribute [rw] role_status
533
- # The status of the AWS account that you set as the AWS Firewall
534
- # Manager administrator.
825
+ # The status of the Amazon Web Services account that you set as the
826
+ # Firewall Manager administrator.
535
827
  # @return [String]
536
828
  #
537
829
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetAdminAccountResponse AWS API Documentation
@@ -552,13 +844,13 @@ module Aws::FMS
552
844
  # }
553
845
  #
554
846
  # @!attribute [rw] list_id
555
- # The ID of the AWS Firewall Manager applications list that you want
556
- # the details for.
847
+ # The ID of the Firewall Manager applications list that you want the
848
+ # details for.
557
849
  # @return [String]
558
850
  #
559
851
  # @!attribute [rw] default_list
560
852
  # Specifies whether the list to retrieve is a default list owned by
561
- # AWS Firewall Manager.
853
+ # Firewall Manager.
562
854
  # @return [Boolean]
563
855
  #
564
856
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetAppsListRequest AWS API Documentation
@@ -571,8 +863,7 @@ module Aws::FMS
571
863
  end
572
864
 
573
865
  # @!attribute [rw] apps_list
574
- # Information about the specified AWS Firewall Manager applications
575
- # list.
866
+ # Information about the specified Firewall Manager applications list.
576
867
  # @return [Types::AppsListData]
577
868
  #
578
869
  # @!attribute [rw] apps_list_arn
@@ -602,8 +893,8 @@ module Aws::FMS
602
893
  # @return [String]
603
894
  #
604
895
  # @!attribute [rw] member_account
605
- # The AWS account that owns the resources that you want to get the
606
- # details for.
896
+ # The Amazon Web Services account that owns the resources that you
897
+ # want to get the details for.
607
898
  # @return [String]
608
899
  #
609
900
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetComplianceDetailRequest AWS API Documentation
@@ -635,12 +926,12 @@ module Aws::FMS
635
926
  class GetNotificationChannelRequest < Aws::EmptyStructure; end
636
927
 
637
928
  # @!attribute [rw] sns_topic_arn
638
- # The SNS topic that records AWS Firewall Manager activity.
929
+ # The SNS topic that records Firewall Manager activity.
639
930
  # @return [String]
640
931
  #
641
932
  # @!attribute [rw] sns_role_name
642
- # The IAM role that is used by AWS Firewall Manager to record activity
643
- # to SNS.
933
+ # The IAM role that is used by Firewall Manager to record activity to
934
+ # SNS.
644
935
  # @return [String]
645
936
  #
646
937
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetNotificationChannelResponse AWS API Documentation
@@ -660,8 +951,7 @@ module Aws::FMS
660
951
  # }
661
952
  #
662
953
  # @!attribute [rw] policy_id
663
- # The ID of the AWS Firewall Manager policy that you want the details
664
- # for.
954
+ # The ID of the Firewall Manager policy that you want the details for.
665
955
  # @return [String]
666
956
  #
667
957
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetPolicyRequest AWS API Documentation
@@ -673,7 +963,7 @@ module Aws::FMS
673
963
  end
674
964
 
675
965
  # @!attribute [rw] policy
676
- # Information about the specified AWS Firewall Manager policy.
966
+ # Information about the specified Firewall Manager policy.
677
967
  # @return [Types::Policy]
678
968
  #
679
969
  # @!attribute [rw] policy_arn
@@ -707,37 +997,37 @@ module Aws::FMS
707
997
  # @return [String]
708
998
  #
709
999
  # @!attribute [rw] member_account_id
710
- # The AWS account that is in scope of the policy that you want to get
711
- # the details for.
1000
+ # The Amazon Web Services account that is in scope of the policy that
1001
+ # you want to get the details for.
712
1002
  # @return [String]
713
1003
  #
714
1004
  # @!attribute [rw] start_time
715
1005
  # The start of the time period to query for the attacks. This is a
716
1006
  # `timestamp` type. The request syntax listing indicates a `number`
717
- # type because the default used by AWS Firewall Manager is Unix time
718
- # in seconds. However, any valid `timestamp` format is allowed.
1007
+ # type because the default used by Firewall Manager is Unix time in
1008
+ # seconds. However, any valid `timestamp` format is allowed.
719
1009
  # @return [Time]
720
1010
  #
721
1011
  # @!attribute [rw] end_time
722
1012
  # The end of the time period to query for the attacks. This is a
723
1013
  # `timestamp` type. The request syntax listing indicates a `number`
724
- # type because the default used by AWS Firewall Manager is Unix time
725
- # in seconds. However, any valid `timestamp` format is allowed.
1014
+ # type because the default used by Firewall Manager is Unix time in
1015
+ # seconds. However, any valid `timestamp` format is allowed.
726
1016
  # @return [Time]
727
1017
  #
728
1018
  # @!attribute [rw] next_token
729
1019
  # If you specify a value for `MaxResults` and you have more objects
730
- # than the number that you specify for `MaxResults`, AWS Firewall
731
- # Manager returns a `NextToken` value in the response, which you can
732
- # use to retrieve another group of objects. For the second and
733
- # subsequent `GetProtectionStatus` requests, specify the value of
734
- # `NextToken` from the previous response to get information about
735
- # another batch of objects.
1020
+ # than the number that you specify for `MaxResults`, Firewall Manager
1021
+ # returns a `NextToken` value in the response, which you can use to
1022
+ # retrieve another group of objects. For the second and subsequent
1023
+ # `GetProtectionStatus` requests, specify the value of `NextToken`
1024
+ # from the previous response to get information about another batch of
1025
+ # objects.
736
1026
  # @return [String]
737
1027
  #
738
1028
  # @!attribute [rw] max_results
739
- # Specifies the number of objects that you want AWS Firewall Manager
740
- # to return for this request. If you have more objects than the number
1029
+ # Specifies the number of objects that you want Firewall Manager to
1030
+ # return for this request. If you have more objects than the number
741
1031
  # that you specify for `MaxResults`, the response includes a
742
1032
  # `NextToken` value that you can use to get another batch of objects.
743
1033
  # @return [Integer]
@@ -756,7 +1046,8 @@ module Aws::FMS
756
1046
  end
757
1047
 
758
1048
  # @!attribute [rw] admin_account_id
759
- # The ID of the AWS Firewall administrator account for this policy.
1049
+ # The ID of the Firewall Manager administrator account for this
1050
+ # policy.
760
1051
  # @return [String]
761
1052
  #
762
1053
  # @!attribute [rw] service_type
@@ -787,10 +1078,10 @@ module Aws::FMS
787
1078
  # request, and specify the `NextToken` value from the response in the
788
1079
  # `NextToken` value in the next request.
789
1080
  #
790
- # AWS SDKs provide auto-pagination that identify `NextToken` in a
791
- # response and make subsequent request calls automatically on your
792
- # behalf. However, this feature is not supported by
793
- # `GetProtectionStatus`. You must submit subsequent requests with
1081
+ # Amazon Web Services SDKs provide auto-pagination that identify
1082
+ # `NextToken` in a response and make subsequent request calls
1083
+ # automatically on your behalf. However, this feature is not supported
1084
+ # by `GetProtectionStatus`. You must submit subsequent requests with
794
1085
  # `NextToken` using your own processes.
795
1086
  # @return [String]
796
1087
  #
@@ -814,13 +1105,13 @@ module Aws::FMS
814
1105
  # }
815
1106
  #
816
1107
  # @!attribute [rw] list_id
817
- # The ID of the AWS Firewall Manager protocols list that you want the
1108
+ # The ID of the Firewall Manager protocols list that you want the
818
1109
  # details for.
819
1110
  # @return [String]
820
1111
  #
821
1112
  # @!attribute [rw] default_list
822
1113
  # Specifies whether the list to retrieve is a default list owned by
823
- # AWS Firewall Manager.
1114
+ # Firewall Manager.
824
1115
  # @return [Boolean]
825
1116
  #
826
1117
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetProtocolsListRequest AWS API Documentation
@@ -833,7 +1124,7 @@ module Aws::FMS
833
1124
  end
834
1125
 
835
1126
  # @!attribute [rw] protocols_list
836
- # Information about the specified AWS Firewall Manager protocols list.
1127
+ # Information about the specified Firewall Manager protocols list.
837
1128
  # @return [Types::ProtocolsListData]
838
1129
  #
839
1130
  # @!attribute [rw] protocols_list_arn
@@ -860,13 +1151,12 @@ module Aws::FMS
860
1151
  # }
861
1152
  #
862
1153
  # @!attribute [rw] policy_id
863
- # The ID of the AWS Firewall Manager policy that you want the details
864
- # for. This currently only supports security group content audit
865
- # policies.
1154
+ # The ID of the Firewall Manager policy that you want the details for.
1155
+ # This currently only supports security group content audit policies.
866
1156
  # @return [String]
867
1157
  #
868
1158
  # @!attribute [rw] member_account
869
- # The AWS account ID that you want the details for.
1159
+ # The Amazon Web Services account ID that you want the details for.
870
1160
  # @return [String]
871
1161
  #
872
1162
  # @!attribute [rw] resource_id
@@ -874,8 +1164,8 @@ module Aws::FMS
874
1164
  # @return [String]
875
1165
  #
876
1166
  # @!attribute [rw] resource_type
877
- # The resource type. This is in the format shown in the [AWS Resource
878
- # Types Reference][1]. Supported resource types are:
1167
+ # The resource type. This is in the format shown in the [Amazon Web
1168
+ # Services Resource Types Reference][1]. Supported resource types are:
879
1169
  # `AWS::EC2::Instance`, `AWS::EC2::NetworkInterface`,
880
1170
  # `AWS::EC2::SecurityGroup`, `AWS::NetworkFirewall::FirewallPolicy`,
881
1171
  # and `AWS::EC2::Subnet`.
@@ -938,9 +1228,9 @@ module Aws::FMS
938
1228
  # The operation failed because there was nothing to do or the operation
939
1229
  # wasn't possible. For example, you might have submitted an
940
1230
  # `AssociateAdminAccount` request for an account ID that was already set
941
- # as the AWS Firewall Manager administrator. Or you might have tried to
1231
+ # as the Firewall Manager administrator. Or you might have tried to
942
1232
  # access a Region that's disabled by default, and that you need to
943
- # enable for the Firewall Manager administrator account and for AWS
1233
+ # enable for the Firewall Manager administrator account and for
944
1234
  # Organizations before you can access it.
945
1235
  #
946
1236
  # @!attribute [rw] message
@@ -968,9 +1258,9 @@ module Aws::FMS
968
1258
  end
969
1259
 
970
1260
  # The operation exceeds a resource limit, for example, the maximum
971
- # number of `policy` objects that you can create for an AWS account. For
972
- # more information, see [Firewall Manager Limits][1] in the *AWS WAF
973
- # Developer Guide*.
1261
+ # number of `policy` objects that you can create for an Amazon Web
1262
+ # Services account. For more information, see [Firewall Manager
1263
+ # Limits][1] in the *WAF Developer Guide*.
974
1264
  #
975
1265
  #
976
1266
  #
@@ -998,25 +1288,25 @@ module Aws::FMS
998
1288
  #
999
1289
  # @!attribute [rw] default_lists
1000
1290
  # Specifies whether the lists to retrieve are default lists owned by
1001
- # AWS Firewall Manager.
1291
+ # Firewall Manager.
1002
1292
  # @return [Boolean]
1003
1293
  #
1004
1294
  # @!attribute [rw] next_token
1005
1295
  # If you specify a value for `MaxResults` in your list request, and
1006
- # you have more objects than the maximum, AWS Firewall Manager returns
1296
+ # you have more objects than the maximum, Firewall Manager returns
1007
1297
  # this token in the response. For all but the first request, you
1008
1298
  # provide the token returned by the prior request in the request
1009
1299
  # parameters, to retrieve the next batch of objects.
1010
1300
  # @return [String]
1011
1301
  #
1012
1302
  # @!attribute [rw] max_results
1013
- # The maximum number of objects that you want AWS Firewall Manager to
1303
+ # The maximum number of objects that you want Firewall Manager to
1014
1304
  # return for this request. If more objects are available, in the
1015
- # response, AWS Firewall Manager provides a `NextToken` value that you
1016
- # can use in a subsequent call to get the next batch of objects.
1305
+ # response, Firewall Manager provides a `NextToken` value that you can
1306
+ # use in a subsequent call to get the next batch of objects.
1017
1307
  #
1018
- # If you don't specify this, AWS Firewall Manager returns all
1019
- # available objects.
1308
+ # If you don't specify this, Firewall Manager returns all available
1309
+ # objects.
1020
1310
  # @return [Integer]
1021
1311
  #
1022
1312
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ListAppsListsRequest AWS API Documentation
@@ -1035,7 +1325,7 @@ module Aws::FMS
1035
1325
  #
1036
1326
  # @!attribute [rw] next_token
1037
1327
  # If you specify a value for `MaxResults` in your list request, and
1038
- # you have more objects than the maximum, AWS Firewall Manager returns
1328
+ # you have more objects than the maximum, Firewall Manager returns
1039
1329
  # this token in the response. You can use this token in subsequent
1040
1330
  # requests to retrieve the next batch of objects.
1041
1331
  # @return [String]
@@ -1059,15 +1349,14 @@ module Aws::FMS
1059
1349
  # }
1060
1350
  #
1061
1351
  # @!attribute [rw] policy_id
1062
- # The ID of the AWS Firewall Manager policy that you want the details
1063
- # for.
1352
+ # The ID of the Firewall Manager policy that you want the details for.
1064
1353
  # @return [String]
1065
1354
  #
1066
1355
  # @!attribute [rw] next_token
1067
1356
  # If you specify a value for `MaxResults` and you have more
1068
1357
  # `PolicyComplianceStatus` objects than the number that you specify
1069
- # for `MaxResults`, AWS Firewall Manager returns a `NextToken` value
1070
- # in the response that allows you to list another group of
1358
+ # for `MaxResults`, Firewall Manager returns a `NextToken` value in
1359
+ # the response that allows you to list another group of
1071
1360
  # `PolicyComplianceStatus` objects. For the second and subsequent
1072
1361
  # `ListComplianceStatus` requests, specify the value of `NextToken`
1073
1362
  # from the previous response to get information about another batch of
@@ -1076,11 +1365,10 @@ module Aws::FMS
1076
1365
  #
1077
1366
  # @!attribute [rw] max_results
1078
1367
  # Specifies the number of `PolicyComplianceStatus` objects that you
1079
- # want AWS Firewall Manager to return for this request. If you have
1080
- # more `PolicyComplianceStatus` objects than the number that you
1081
- # specify for `MaxResults`, the response includes a `NextToken` value
1082
- # that you can use to get another batch of `PolicyComplianceStatus`
1083
- # objects.
1368
+ # want Firewall Manager to return for this request. If you have more
1369
+ # `PolicyComplianceStatus` objects than the number that you specify
1370
+ # for `MaxResults`, the response includes a `NextToken` value that you
1371
+ # can use to get another batch of `PolicyComplianceStatus` objects.
1084
1372
  # @return [Integer]
1085
1373
  #
1086
1374
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ListComplianceStatusRequest AWS API Documentation
@@ -1125,7 +1413,7 @@ module Aws::FMS
1125
1413
  #
1126
1414
  # @!attribute [rw] next_token
1127
1415
  # If you specify a value for `MaxResults` and you have more account
1128
- # IDs than the number that you specify for `MaxResults`, AWS Firewall
1416
+ # IDs than the number that you specify for `MaxResults`, Firewall
1129
1417
  # Manager returns a `NextToken` value in the response that allows you
1130
1418
  # to list another group of IDs. For the second and subsequent
1131
1419
  # `ListMemberAccountsRequest` requests, specify the value of
@@ -1134,11 +1422,11 @@ module Aws::FMS
1134
1422
  # @return [String]
1135
1423
  #
1136
1424
  # @!attribute [rw] max_results
1137
- # Specifies the number of member account IDs that you want AWS
1138
- # Firewall Manager to return for this request. If you have more IDs
1139
- # than the number that you specify for `MaxResults`, the response
1140
- # includes a `NextToken` value that you can use to get another batch
1141
- # of member account IDs.
1425
+ # Specifies the number of member account IDs that you want Firewall
1426
+ # Manager to return for this request. If you have more IDs than the
1427
+ # number that you specify for `MaxResults`, the response includes a
1428
+ # `NextToken` value that you can use to get another batch of member
1429
+ # account IDs.
1142
1430
  # @return [Integer]
1143
1431
  #
1144
1432
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ListMemberAccountsRequest AWS API Documentation
@@ -1182,16 +1470,15 @@ module Aws::FMS
1182
1470
  # @!attribute [rw] next_token
1183
1471
  # If you specify a value for `MaxResults` and you have more
1184
1472
  # `PolicySummary` objects than the number that you specify for
1185
- # `MaxResults`, AWS Firewall Manager returns a `NextToken` value in
1186
- # the response that allows you to list another group of
1187
- # `PolicySummary` objects. For the second and subsequent
1188
- # `ListPolicies` requests, specify the value of `NextToken` from the
1189
- # previous response to get information about another batch of
1190
- # `PolicySummary` objects.
1473
+ # `MaxResults`, Firewall Manager returns a `NextToken` value in the
1474
+ # response that allows you to list another group of `PolicySummary`
1475
+ # objects. For the second and subsequent `ListPolicies` requests,
1476
+ # specify the value of `NextToken` from the previous response to get
1477
+ # information about another batch of `PolicySummary` objects.
1191
1478
  # @return [String]
1192
1479
  #
1193
1480
  # @!attribute [rw] max_results
1194
- # Specifies the number of `PolicySummary` objects that you want AWS
1481
+ # Specifies the number of `PolicySummary` objects that you want
1195
1482
  # Firewall Manager to return for this request. If you have more
1196
1483
  # `PolicySummary` objects than the number that you specify for
1197
1484
  # `MaxResults`, the response includes a `NextToken` value that you can
@@ -1239,25 +1526,25 @@ module Aws::FMS
1239
1526
  #
1240
1527
  # @!attribute [rw] default_lists
1241
1528
  # Specifies whether the lists to retrieve are default lists owned by
1242
- # AWS Firewall Manager.
1529
+ # Firewall Manager.
1243
1530
  # @return [Boolean]
1244
1531
  #
1245
1532
  # @!attribute [rw] next_token
1246
1533
  # If you specify a value for `MaxResults` in your list request, and
1247
- # you have more objects than the maximum, AWS Firewall Manager returns
1534
+ # you have more objects than the maximum, Firewall Manager returns
1248
1535
  # this token in the response. For all but the first request, you
1249
1536
  # provide the token returned by the prior request in the request
1250
1537
  # parameters, to retrieve the next batch of objects.
1251
1538
  # @return [String]
1252
1539
  #
1253
1540
  # @!attribute [rw] max_results
1254
- # The maximum number of objects that you want AWS Firewall Manager to
1541
+ # The maximum number of objects that you want Firewall Manager to
1255
1542
  # return for this request. If more objects are available, in the
1256
- # response, AWS Firewall Manager provides a `NextToken` value that you
1257
- # can use in a subsequent call to get the next batch of objects.
1543
+ # response, Firewall Manager provides a `NextToken` value that you can
1544
+ # use in a subsequent call to get the next batch of objects.
1258
1545
  #
1259
- # If you don't specify this, AWS Firewall Manager returns all
1260
- # available objects.
1546
+ # If you don't specify this, Firewall Manager returns all available
1547
+ # objects.
1261
1548
  # @return [Integer]
1262
1549
  #
1263
1550
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ListProtocolsListsRequest AWS API Documentation
@@ -1276,7 +1563,7 @@ module Aws::FMS
1276
1563
  #
1277
1564
  # @!attribute [rw] next_token
1278
1565
  # If you specify a value for `MaxResults` in your list request, and
1279
- # you have more objects than the maximum, AWS Firewall Manager returns
1566
+ # you have more objects than the maximum, Firewall Manager returns
1280
1567
  # this token in the response. You can use this token in subsequent
1281
1568
  # requests to retrieve the next batch of objects.
1282
1569
  # @return [String]
@@ -1299,8 +1586,8 @@ module Aws::FMS
1299
1586
  #
1300
1587
  # @!attribute [rw] resource_arn
1301
1588
  # The Amazon Resource Name (ARN) of the resource to return tags for.
1302
- # The AWS Firewall Manager resources that support tagging are
1303
- # policies, applications lists, and protocols lists.
1589
+ # The Firewall Manager resources that support tagging are policies,
1590
+ # applications lists, and protocols lists.
1304
1591
  # @return [String]
1305
1592
  #
1306
1593
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ListTagsForResourceRequest AWS API Documentation
@@ -1323,12 +1610,220 @@ module Aws::FMS
1323
1610
  include Aws::Structure
1324
1611
  end
1325
1612
 
1326
- # Violation details for AWS Network Firewall for a subnet that's not
1613
+ # Violation detail for an internet gateway route with an inactive state
1614
+ # in the customer subnet route table or Network Firewall subnet route
1615
+ # table.
1616
+ #
1617
+ # @!attribute [rw] violation_target
1618
+ # The subnet that has an inactive state.
1619
+ # @return [String]
1620
+ #
1621
+ # @!attribute [rw] route_table_id
1622
+ # Information about the route table ID.
1623
+ # @return [String]
1624
+ #
1625
+ # @!attribute [rw] vpc_id
1626
+ # Information about the VPC ID.
1627
+ # @return [String]
1628
+ #
1629
+ # @!attribute [rw] violating_routes
1630
+ # Information about the route or routes that are in violation.
1631
+ # @return [Array<Types::Route>]
1632
+ #
1633
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/NetworkFirewallBlackHoleRouteDetectedViolation AWS API Documentation
1634
+ #
1635
+ class NetworkFirewallBlackHoleRouteDetectedViolation < Struct.new(
1636
+ :violation_target,
1637
+ :route_table_id,
1638
+ :vpc_id,
1639
+ :violating_routes)
1640
+ SENSITIVE = []
1641
+ include Aws::Structure
1642
+ end
1643
+
1644
+ # Violation detail for the subnet for which internet traffic that
1645
+ # hasn't been inspected.
1646
+ #
1647
+ # @!attribute [rw] subnet_id
1648
+ # The subnet ID.
1649
+ # @return [String]
1650
+ #
1651
+ # @!attribute [rw] subnet_availability_zone
1652
+ # The subnet Availability Zone.
1653
+ # @return [String]
1654
+ #
1655
+ # @!attribute [rw] route_table_id
1656
+ # Information about the route table ID.
1657
+ # @return [String]
1658
+ #
1659
+ # @!attribute [rw] violating_routes
1660
+ # The route or routes that are in violation.
1661
+ # @return [Array<Types::Route>]
1662
+ #
1663
+ # @!attribute [rw] is_route_table_used_in_different_az
1664
+ # Information about whether the route table is used in another
1665
+ # Availability Zone.
1666
+ # @return [Boolean]
1667
+ #
1668
+ # @!attribute [rw] current_firewall_subnet_route_table
1669
+ # Information about the subnet route table for the current firewall.
1670
+ # @return [String]
1671
+ #
1672
+ # @!attribute [rw] expected_firewall_endpoint
1673
+ # The expected endpoint for the current firewall.
1674
+ # @return [String]
1675
+ #
1676
+ # @!attribute [rw] firewall_subnet_id
1677
+ # The firewall subnet ID.
1678
+ # @return [String]
1679
+ #
1680
+ # @!attribute [rw] expected_firewall_subnet_routes
1681
+ # The firewall subnet routes that are expected.
1682
+ # @return [Array<Types::ExpectedRoute>]
1683
+ #
1684
+ # @!attribute [rw] actual_firewall_subnet_routes
1685
+ # The actual firewall subnet routes.
1686
+ # @return [Array<Types::Route>]
1687
+ #
1688
+ # @!attribute [rw] internet_gateway_id
1689
+ # The internet gateway ID.
1690
+ # @return [String]
1691
+ #
1692
+ # @!attribute [rw] current_internet_gateway_route_table
1693
+ # The current route table for the internet gateway.
1694
+ # @return [String]
1695
+ #
1696
+ # @!attribute [rw] expected_internet_gateway_routes
1697
+ # The internet gateway routes that are expected.
1698
+ # @return [Array<Types::ExpectedRoute>]
1699
+ #
1700
+ # @!attribute [rw] actual_internet_gateway_routes
1701
+ # The actual internet gateway routes.
1702
+ # @return [Array<Types::Route>]
1703
+ #
1704
+ # @!attribute [rw] vpc_id
1705
+ # Information about the VPC ID.
1706
+ # @return [String]
1707
+ #
1708
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/NetworkFirewallInternetTrafficNotInspectedViolation AWS API Documentation
1709
+ #
1710
+ class NetworkFirewallInternetTrafficNotInspectedViolation < Struct.new(
1711
+ :subnet_id,
1712
+ :subnet_availability_zone,
1713
+ :route_table_id,
1714
+ :violating_routes,
1715
+ :is_route_table_used_in_different_az,
1716
+ :current_firewall_subnet_route_table,
1717
+ :expected_firewall_endpoint,
1718
+ :firewall_subnet_id,
1719
+ :expected_firewall_subnet_routes,
1720
+ :actual_firewall_subnet_routes,
1721
+ :internet_gateway_id,
1722
+ :current_internet_gateway_route_table,
1723
+ :expected_internet_gateway_routes,
1724
+ :actual_internet_gateway_routes,
1725
+ :vpc_id)
1726
+ SENSITIVE = []
1727
+ include Aws::Structure
1728
+ end
1729
+
1730
+ # Violation detail for the improperly configured subnet route. It's
1731
+ # possible there is a missing route table route, or a configuration that
1732
+ # causes traffic to cross an Availability Zone boundary.
1733
+ #
1734
+ # @!attribute [rw] affected_subnets
1735
+ # The subnets that are affected.
1736
+ # @return [Array<String>]
1737
+ #
1738
+ # @!attribute [rw] route_table_id
1739
+ # The route table ID.
1740
+ # @return [String]
1741
+ #
1742
+ # @!attribute [rw] is_route_table_used_in_different_az
1743
+ # Information about whether the route table is used in another
1744
+ # Availability Zone.
1745
+ # @return [Boolean]
1746
+ #
1747
+ # @!attribute [rw] violating_route
1748
+ # The route that's in violation.
1749
+ # @return [Types::Route]
1750
+ #
1751
+ # @!attribute [rw] current_firewall_subnet_route_table
1752
+ # The subnet route table for the current firewall.
1753
+ # @return [String]
1754
+ #
1755
+ # @!attribute [rw] expected_firewall_endpoint
1756
+ # The firewall endpoint that's expected.
1757
+ # @return [String]
1758
+ #
1759
+ # @!attribute [rw] actual_firewall_endpoint
1760
+ # The actual firewall endpoint.
1761
+ # @return [String]
1762
+ #
1763
+ # @!attribute [rw] expected_firewall_subnet_id
1764
+ # The expected subnet ID for the firewall.
1765
+ # @return [String]
1766
+ #
1767
+ # @!attribute [rw] actual_firewall_subnet_id
1768
+ # The actual subnet ID for the firewall.
1769
+ # @return [String]
1770
+ #
1771
+ # @!attribute [rw] expected_firewall_subnet_routes
1772
+ # The firewall subnet routes that are expected.
1773
+ # @return [Array<Types::ExpectedRoute>]
1774
+ #
1775
+ # @!attribute [rw] actual_firewall_subnet_routes
1776
+ # The actual firewall subnet routes that are expected.
1777
+ # @return [Array<Types::Route>]
1778
+ #
1779
+ # @!attribute [rw] internet_gateway_id
1780
+ # The internet gateway ID.
1781
+ # @return [String]
1782
+ #
1783
+ # @!attribute [rw] current_internet_gateway_route_table
1784
+ # The route table for the current internet gateway.
1785
+ # @return [String]
1786
+ #
1787
+ # @!attribute [rw] expected_internet_gateway_routes
1788
+ # The expected routes for the internet gateway.
1789
+ # @return [Array<Types::ExpectedRoute>]
1790
+ #
1791
+ # @!attribute [rw] actual_internet_gateway_routes
1792
+ # The actual internet gateway routes.
1793
+ # @return [Array<Types::Route>]
1794
+ #
1795
+ # @!attribute [rw] vpc_id
1796
+ # Information about the VPC ID.
1797
+ # @return [String]
1798
+ #
1799
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/NetworkFirewallInvalidRouteConfigurationViolation AWS API Documentation
1800
+ #
1801
+ class NetworkFirewallInvalidRouteConfigurationViolation < Struct.new(
1802
+ :affected_subnets,
1803
+ :route_table_id,
1804
+ :is_route_table_used_in_different_az,
1805
+ :violating_route,
1806
+ :current_firewall_subnet_route_table,
1807
+ :expected_firewall_endpoint,
1808
+ :actual_firewall_endpoint,
1809
+ :expected_firewall_subnet_id,
1810
+ :actual_firewall_subnet_id,
1811
+ :expected_firewall_subnet_routes,
1812
+ :actual_firewall_subnet_routes,
1813
+ :internet_gateway_id,
1814
+ :current_internet_gateway_route_table,
1815
+ :expected_internet_gateway_routes,
1816
+ :actual_internet_gateway_routes,
1817
+ :vpc_id)
1818
+ SENSITIVE = []
1819
+ include Aws::Structure
1820
+ end
1821
+
1822
+ # Violation detail for Network Firewall for a subnet that's not
1327
1823
  # associated to the expected Firewall Manager managed route table.
1328
1824
  #
1329
1825
  # @!attribute [rw] violation_target
1330
- # The ID of the AWS Network Firewall or VPC resource that's in
1331
- # violation.
1826
+ # The ID of the Network Firewall or VPC resource that's in violation.
1332
1827
  # @return [String]
1333
1828
  #
1334
1829
  # @!attribute [rw] vpc
@@ -1361,12 +1856,35 @@ module Aws::FMS
1361
1856
  include Aws::Structure
1362
1857
  end
1363
1858
 
1364
- # Violation details for AWS Network Firewall for a subnet that doesn't
1365
- # have a Firewall Manager managed firewall in its VPC.
1859
+ # Violation detail for an expected route missing in Network Firewall.
1860
+ #
1861
+ # @!attribute [rw] violation_target
1862
+ # The target of the violation.
1863
+ # @return [String]
1864
+ #
1865
+ # @!attribute [rw] expected_routes
1866
+ # The expected routes.
1867
+ # @return [Array<Types::ExpectedRoute>]
1868
+ #
1869
+ # @!attribute [rw] vpc_id
1870
+ # Information about the VPC ID.
1871
+ # @return [String]
1872
+ #
1873
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/NetworkFirewallMissingExpectedRoutesViolation AWS API Documentation
1874
+ #
1875
+ class NetworkFirewallMissingExpectedRoutesViolation < Struct.new(
1876
+ :violation_target,
1877
+ :expected_routes,
1878
+ :vpc_id)
1879
+ SENSITIVE = []
1880
+ include Aws::Structure
1881
+ end
1882
+
1883
+ # Violation detail for Network Firewall for a subnet that doesn't have
1884
+ # a Firewall Manager managed firewall in its VPC.
1366
1885
  #
1367
1886
  # @!attribute [rw] violation_target
1368
- # The ID of the AWS Network Firewall or VPC resource that's in
1369
- # violation.
1887
+ # The ID of the Network Firewall or VPC resource that's in violation.
1370
1888
  # @return [String]
1371
1889
  #
1372
1890
  # @!attribute [rw] vpc
@@ -1392,12 +1910,11 @@ module Aws::FMS
1392
1910
  include Aws::Structure
1393
1911
  end
1394
1912
 
1395
- # Violation details for AWS Network Firewall for an Availability Zone
1396
- # that's missing the expected Firewall Manager managed subnet.
1913
+ # Violation detail for Network Firewall for an Availability Zone that's
1914
+ # missing the expected Firewall Manager managed subnet.
1397
1915
  #
1398
1916
  # @!attribute [rw] violation_target
1399
- # The ID of the AWS Network Firewall or VPC resource that's in
1400
- # violation.
1917
+ # The ID of the Network Firewall or VPC resource that's in violation.
1401
1918
  # @return [String]
1402
1919
  #
1403
1920
  # @!attribute [rw] vpc
@@ -1423,7 +1940,7 @@ module Aws::FMS
1423
1940
  include Aws::Structure
1424
1941
  end
1425
1942
 
1426
- # The definition of the AWS Network Firewall firewall policy.
1943
+ # The definition of the Network Firewall firewall policy.
1427
1944
  #
1428
1945
  # @!attribute [rw] stateless_rule_groups
1429
1946
  # The stateless rule groups that are used in the Network Firewall
@@ -1462,13 +1979,12 @@ module Aws::FMS
1462
1979
  include Aws::Structure
1463
1980
  end
1464
1981
 
1465
- # Violation details for AWS Network Firewall for a firewall policy that
1466
- # has a different NetworkFirewallPolicyDescription than is required by
1467
- # the Firewall Manager policy.
1982
+ # Violation detail for Network Firewall for a firewall policy that has a
1983
+ # different NetworkFirewallPolicyDescription than is required by the
1984
+ # Firewall Manager policy.
1468
1985
  #
1469
1986
  # @!attribute [rw] violation_target
1470
- # The ID of the AWS Network Firewall or VPC resource that's in
1471
- # violation.
1987
+ # The ID of the Network Firewall or VPC resource that's in violation.
1472
1988
  # @return [String]
1473
1989
  #
1474
1990
  # @!attribute [rw] current_policy_description
@@ -1490,12 +2006,77 @@ module Aws::FMS
1490
2006
  include Aws::Structure
1491
2007
  end
1492
2008
 
2009
+ # Violation detail for an unexpected route that's present in a route
2010
+ # table.
2011
+ #
2012
+ # @!attribute [rw] firewall_subnet_id
2013
+ # The subnet ID for the firewall.
2014
+ # @return [String]
2015
+ #
2016
+ # @!attribute [rw] violating_routes
2017
+ # The routes that are in violation.
2018
+ # @return [Array<Types::Route>]
2019
+ #
2020
+ # @!attribute [rw] route_table_id
2021
+ # The ID of the route table.
2022
+ # @return [String]
2023
+ #
2024
+ # @!attribute [rw] firewall_endpoint
2025
+ # The endpoint of the firewall.
2026
+ # @return [String]
2027
+ #
2028
+ # @!attribute [rw] vpc_id
2029
+ # Information about the VPC ID.
2030
+ # @return [String]
2031
+ #
2032
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/NetworkFirewallUnexpectedFirewallRoutesViolation AWS API Documentation
2033
+ #
2034
+ class NetworkFirewallUnexpectedFirewallRoutesViolation < Struct.new(
2035
+ :firewall_subnet_id,
2036
+ :violating_routes,
2037
+ :route_table_id,
2038
+ :firewall_endpoint,
2039
+ :vpc_id)
2040
+ SENSITIVE = []
2041
+ include Aws::Structure
2042
+ end
2043
+
2044
+ # Violation detail for an unexpected gateway route that’s present in a
2045
+ # route table.
2046
+ #
2047
+ # @!attribute [rw] gateway_id
2048
+ # Information about the gateway ID.
2049
+ # @return [String]
2050
+ #
2051
+ # @!attribute [rw] violating_routes
2052
+ # The routes that are in violation.
2053
+ # @return [Array<Types::Route>]
2054
+ #
2055
+ # @!attribute [rw] route_table_id
2056
+ # Information about the route table.
2057
+ # @return [String]
2058
+ #
2059
+ # @!attribute [rw] vpc_id
2060
+ # Information about the VPC ID.
2061
+ # @return [String]
2062
+ #
2063
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/NetworkFirewallUnexpectedGatewayRoutesViolation AWS API Documentation
2064
+ #
2065
+ class NetworkFirewallUnexpectedGatewayRoutesViolation < Struct.new(
2066
+ :gateway_id,
2067
+ :violating_routes,
2068
+ :route_table_id,
2069
+ :vpc_id)
2070
+ SENSITIVE = []
2071
+ include Aws::Structure
2072
+ end
2073
+
1493
2074
  # The reference rule that partially matches the `ViolationTarget` rule
1494
2075
  # and violation reason.
1495
2076
  #
1496
2077
  # @!attribute [rw] reference
1497
- # The reference rule from the master security group of the AWS
1498
- # Firewall Manager policy.
2078
+ # The reference rule from the primary security group of the Firewall
2079
+ # Manager policy.
1499
2080
  # @return [String]
1500
2081
  #
1501
2082
  # @!attribute [rw] target_violation_reasons
@@ -1511,7 +2092,7 @@ module Aws::FMS
1511
2092
  include Aws::Structure
1512
2093
  end
1513
2094
 
1514
- # An AWS Firewall Manager policy.
2095
+ # An Firewall Manager policy.
1515
2096
  #
1516
2097
  # @note When making an API call, you may pass Policy
1517
2098
  # data as a hash:
@@ -1543,11 +2124,11 @@ module Aws::FMS
1543
2124
  # }
1544
2125
  #
1545
2126
  # @!attribute [rw] policy_id
1546
- # The ID of the AWS Firewall Manager policy.
2127
+ # The ID of the Firewall Manager policy.
1547
2128
  # @return [String]
1548
2129
  #
1549
2130
  # @!attribute [rw] policy_name
1550
- # The name of the AWS Firewall Manager policy.
2131
+ # The name of the Firewall Manager policy.
1551
2132
  # @return [String]
1552
2133
  #
1553
2134
  # @!attribute [rw] policy_update_token
@@ -1565,8 +2146,12 @@ module Aws::FMS
1565
2146
  #
1566
2147
  # @!attribute [rw] resource_type
1567
2148
  # The type of resource protected by or in scope of the policy. This is
1568
- # in the format shown in the [AWS Resource Types Reference][1]. For
1569
- # AWS WAF and Shield Advanced, examples include
2149
+ # in the format shown in the [Amazon Web Services Resource Types
2150
+ # Reference][1]. To apply this policy to multiple resource types,
2151
+ # specify a resource type of `ResourceTypeList` and then specify the
2152
+ # resource types in a `ResourceTypeList`.
2153
+ #
2154
+ # For WAF and Shield Advanced, example resource types include
1570
2155
  # `AWS::ElasticLoadBalancingV2::LoadBalancer` and
1571
2156
  # `AWS::CloudFront::Distribution`. For a security group common policy,
1572
2157
  # valid values are `AWS::EC2::NetworkInterface` and
@@ -1574,8 +2159,8 @@ module Aws::FMS
1574
2159
  # valid values are `AWS::EC2::SecurityGroup`,
1575
2160
  # `AWS::EC2::NetworkInterface`, and `AWS::EC2::Instance`. For a
1576
2161
  # security group usage audit policy, the value is
1577
- # `AWS::EC2::SecurityGroup`. For an AWS Network Firewall policy, the
1578
- # value is `AWS::EC2::VPC`.
2162
+ # `AWS::EC2::SecurityGroup`. For an Network Firewall policy or DNS
2163
+ # Firewall policy, the value is `AWS::EC2::VPC`.
1579
2164
  #
1580
2165
  #
1581
2166
  #
@@ -1583,7 +2168,9 @@ module Aws::FMS
1583
2168
  # @return [String]
1584
2169
  #
1585
2170
  # @!attribute [rw] resource_type_list
1586
- # An array of `ResourceType`.
2171
+ # An array of `ResourceType` objects. Use this only to specify
2172
+ # multiple resource types. To specify a single resource type, use
2173
+ # `ResourceType`.
1587
2174
  # @return [Array<String>]
1588
2175
  #
1589
2176
  # @!attribute [rw] resource_tags
@@ -1603,18 +2190,18 @@ module Aws::FMS
1603
2190
  # @return [Boolean]
1604
2191
  #
1605
2192
  # @!attribute [rw] include_map
1606
- # Specifies the AWS account IDs and AWS Organizations organizational
1607
- # units (OUs) to include in the policy. Specifying an OU is the
1608
- # equivalent of specifying all accounts in the OU and in any of its
1609
- # child OUs, including any child OUs and accounts that are added at a
1610
- # later time.
2193
+ # Specifies the Amazon Web Services account IDs and Organizations
2194
+ # organizational units (OUs) to include in the policy. Specifying an
2195
+ # OU is the equivalent of specifying all accounts in the OU and in any
2196
+ # of its child OUs, including any child OUs and accounts that are
2197
+ # added at a later time.
1611
2198
  #
1612
2199
  # You can specify inclusions or exclusions, but not both. If you
1613
- # specify an `IncludeMap`, AWS Firewall Manager applies the policy to
1614
- # all accounts specified by the `IncludeMap`, and does not evaluate
1615
- # any `ExcludeMap` specifications. If you do not specify an
1616
- # `IncludeMap`, then Firewall Manager applies the policy to all
1617
- # accounts except for those specified by the `ExcludeMap`.
2200
+ # specify an `IncludeMap`, Firewall Manager applies the policy to all
2201
+ # accounts specified by the `IncludeMap`, and does not evaluate any
2202
+ # `ExcludeMap` specifications. If you do not specify an `IncludeMap`,
2203
+ # then Firewall Manager applies the policy to all accounts except for
2204
+ # those specified by the `ExcludeMap`.
1618
2205
  #
1619
2206
  # You can specify account IDs, OUs, or a combination:
1620
2207
  #
@@ -1633,18 +2220,18 @@ module Aws::FMS
1633
2220
  # @return [Hash<String,Array<String>>]
1634
2221
  #
1635
2222
  # @!attribute [rw] exclude_map
1636
- # Specifies the AWS account IDs and AWS Organizations organizational
1637
- # units (OUs) to exclude from the policy. Specifying an OU is the
1638
- # equivalent of specifying all accounts in the OU and in any of its
1639
- # child OUs, including any child OUs and accounts that are added at a
1640
- # later time.
2223
+ # Specifies the Amazon Web Services account IDs and Organizations
2224
+ # organizational units (OUs) to exclude from the policy. Specifying an
2225
+ # OU is the equivalent of specifying all accounts in the OU and in any
2226
+ # of its child OUs, including any child OUs and accounts that are
2227
+ # added at a later time.
1641
2228
  #
1642
2229
  # You can specify inclusions or exclusions, but not both. If you
1643
- # specify an `IncludeMap`, AWS Firewall Manager applies the policy to
1644
- # all accounts specified by the `IncludeMap`, and does not evaluate
1645
- # any `ExcludeMap` specifications. If you do not specify an
1646
- # `IncludeMap`, then Firewall Manager applies the policy to all
1647
- # accounts except for those specified by the `ExcludeMap`.
2230
+ # specify an `IncludeMap`, Firewall Manager applies the policy to all
2231
+ # accounts specified by the `IncludeMap`, and does not evaluate any
2232
+ # `ExcludeMap` specifications. If you do not specify an `IncludeMap`,
2233
+ # then Firewall Manager applies the policy to all accounts except for
2234
+ # those specified by the `ExcludeMap`.
1648
2235
  #
1649
2236
  # You can specify account IDs, OUs, or a combination:
1650
2237
  #
@@ -1681,31 +2268,32 @@ module Aws::FMS
1681
2268
  end
1682
2269
 
1683
2270
  # Describes the noncompliant resources in a member account for a
1684
- # specific AWS Firewall Manager policy. A maximum of 100 entries are
2271
+ # specific Firewall Manager policy. A maximum of 100 entries are
1685
2272
  # displayed. If more than 100 resources are noncompliant,
1686
2273
  # `EvaluationLimitExceeded` is set to `True`.
1687
2274
  #
1688
2275
  # @!attribute [rw] policy_owner
1689
- # The AWS account that created the AWS Firewall Manager policy.
2276
+ # The Amazon Web Services account that created the Firewall Manager
2277
+ # policy.
1690
2278
  # @return [String]
1691
2279
  #
1692
2280
  # @!attribute [rw] policy_id
1693
- # The ID of the AWS Firewall Manager policy.
2281
+ # The ID of the Firewall Manager policy.
1694
2282
  # @return [String]
1695
2283
  #
1696
2284
  # @!attribute [rw] member_account
1697
- # The AWS account ID.
2285
+ # The Amazon Web Services account ID.
1698
2286
  # @return [String]
1699
2287
  #
1700
2288
  # @!attribute [rw] violators
1701
- # An array of resources that aren't protected by the AWS WAF or
1702
- # Shield Advanced policy or that aren't in compliance with the
1703
- # security group policy.
2289
+ # An array of resources that aren't protected by the WAF or Shield
2290
+ # Advanced policy or that aren't in compliance with the security
2291
+ # group policy.
1704
2292
  # @return [Array<Types::ComplianceViolator>]
1705
2293
  #
1706
2294
  # @!attribute [rw] evaluation_limit_exceeded
1707
- # Indicates if over 100 resources are noncompliant with the AWS
1708
- # Firewall Manager policy.
2295
+ # Indicates if over 100 resources are noncompliant with the Firewall
2296
+ # Manager policy.
1709
2297
  # @return [Boolean]
1710
2298
  #
1711
2299
  # @!attribute [rw] expired_at
@@ -1714,10 +2302,9 @@ module Aws::FMS
1714
2302
  # @return [Time]
1715
2303
  #
1716
2304
  # @!attribute [rw] issue_info_map
1717
- # Details about problems with dependent services, such as AWS WAF or
1718
- # AWS Config, that are causing a resource to be noncompliant. The
1719
- # details include the name of the dependent service and the error
1720
- # message received that indicates the problem with the service.
2305
+ # Details about problems with dependent services, such as WAF or
2306
+ # Config, and the error message received that indicates the problem
2307
+ # with the service.
1721
2308
  # @return [Hash<String,String>]
1722
2309
  #
1723
2310
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/PolicyComplianceDetail AWS API Documentation
@@ -1736,20 +2323,20 @@ module Aws::FMS
1736
2323
 
1737
2324
  # Indicates whether the account is compliant with the specified policy.
1738
2325
  # An account is considered noncompliant if it includes resources that
1739
- # are not protected by the policy, for AWS WAF and Shield Advanced
1740
- # policies, or that are noncompliant with the policy, for security group
1741
- # policies.
2326
+ # are not protected by the policy, for WAF and Shield Advanced policies,
2327
+ # or that are noncompliant with the policy, for security group policies.
1742
2328
  #
1743
2329
  # @!attribute [rw] policy_owner
1744
- # The AWS account that created the AWS Firewall Manager policy.
2330
+ # The Amazon Web Services account that created the Firewall Manager
2331
+ # policy.
1745
2332
  # @return [String]
1746
2333
  #
1747
2334
  # @!attribute [rw] policy_id
1748
- # The ID of the AWS Firewall Manager policy.
2335
+ # The ID of the Firewall Manager policy.
1749
2336
  # @return [String]
1750
2337
  #
1751
2338
  # @!attribute [rw] policy_name
1752
- # The name of the AWS Firewall Manager policy.
2339
+ # The name of the Firewall Manager policy.
1753
2340
  # @return [String]
1754
2341
  #
1755
2342
  # @!attribute [rw] member_account
@@ -1765,10 +2352,9 @@ module Aws::FMS
1765
2352
  # @return [Time]
1766
2353
  #
1767
2354
  # @!attribute [rw] issue_info_map
1768
- # Details about problems with dependent services, such as AWS WAF or
1769
- # AWS Config, that are causing a resource to be noncompliant. The
1770
- # details include the name of the dependent service and the error
1771
- # message received that indicates the problem with the service.
2355
+ # Details about problems with dependent services, such as WAF or
2356
+ # Config, and the error message received that indicates the problem
2357
+ # with the service.
1772
2358
  # @return [Hash<String,String>]
1773
2359
  #
1774
2360
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/PolicyComplianceStatus AWS API Documentation
@@ -1785,7 +2371,7 @@ module Aws::FMS
1785
2371
  include Aws::Structure
1786
2372
  end
1787
2373
 
1788
- # Details of the AWS Firewall Manager policy.
2374
+ # Details of the Firewall Manager policy.
1789
2375
  #
1790
2376
  # @!attribute [rw] policy_arn
1791
2377
  # The Amazon Resource Name (ARN) of the specified policy.
@@ -1801,8 +2387,8 @@ module Aws::FMS
1801
2387
  #
1802
2388
  # @!attribute [rw] resource_type
1803
2389
  # The type of resource protected by or in scope of the policy. This is
1804
- # in the format shown in the [AWS Resource Types Reference][1]. For
1805
- # AWS WAF and Shield Advanced, examples include
2390
+ # in the format shown in the [Amazon Web Services Resource Types
2391
+ # Reference][1]. For WAF and Shield Advanced, examples include
1806
2392
  # `AWS::ElasticLoadBalancingV2::LoadBalancer` and
1807
2393
  # `AWS::CloudFront::Distribution`. For a security group common policy,
1808
2394
  # valid values are `AWS::EC2::NetworkInterface` and
@@ -1810,8 +2396,8 @@ module Aws::FMS
1810
2396
  # valid values are `AWS::EC2::SecurityGroup`,
1811
2397
  # `AWS::EC2::NetworkInterface`, and `AWS::EC2::Instance`. For a
1812
2398
  # security group usage audit policy, the value is
1813
- # `AWS::EC2::SecurityGroup`. For an AWS Network Firewall policy, the
1814
- # value is `AWS::EC2::VPC`.
2399
+ # `AWS::EC2::SecurityGroup`. For an Network Firewall policy or DNS
2400
+ # Firewall policy, the value is `AWS::EC2::VPC`.
1815
2401
  #
1816
2402
  #
1817
2403
  #
@@ -1820,8 +2406,8 @@ module Aws::FMS
1820
2406
  #
1821
2407
  # @!attribute [rw] security_service_type
1822
2408
  # The service that the policy is using to protect the resources. This
1823
- # specifies the type of policy that is created, either an AWS WAF
1824
- # policy, a Shield Advanced policy, or a security group policy.
2409
+ # specifies the type of policy that is created, either an WAF policy,
2410
+ # a Shield Advanced policy, or a security group policy.
1825
2411
  # @return [String]
1826
2412
  #
1827
2413
  # @!attribute [rw] remediation_enabled
@@ -1842,7 +2428,51 @@ module Aws::FMS
1842
2428
  include Aws::Structure
1843
2429
  end
1844
2430
 
1845
- # An AWS Firewall Manager protocols list.
2431
+ # A list of remediation actions.
2432
+ #
2433
+ # @!attribute [rw] description
2434
+ # A description of the list of remediation actions.
2435
+ # @return [String]
2436
+ #
2437
+ # @!attribute [rw] ordered_remediation_actions
2438
+ # The ordered list of remediation actions.
2439
+ # @return [Array<Types::RemediationActionWithOrder>]
2440
+ #
2441
+ # @!attribute [rw] is_default_action
2442
+ # Information about whether an action is taken by default.
2443
+ # @return [Boolean]
2444
+ #
2445
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/PossibleRemediationAction AWS API Documentation
2446
+ #
2447
+ class PossibleRemediationAction < Struct.new(
2448
+ :description,
2449
+ :ordered_remediation_actions,
2450
+ :is_default_action)
2451
+ SENSITIVE = []
2452
+ include Aws::Structure
2453
+ end
2454
+
2455
+ # A list of possible remediation action lists. Each individual possible
2456
+ # remediation action is a list of individual remediation actions.
2457
+ #
2458
+ # @!attribute [rw] description
2459
+ # A description of the possible remediation actions list.
2460
+ # @return [String]
2461
+ #
2462
+ # @!attribute [rw] actions
2463
+ # Information about the actions.
2464
+ # @return [Array<Types::PossibleRemediationAction>]
2465
+ #
2466
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/PossibleRemediationActions AWS API Documentation
2467
+ #
2468
+ class PossibleRemediationActions < Struct.new(
2469
+ :description,
2470
+ :actions)
2471
+ SENSITIVE = []
2472
+ include Aws::Structure
2473
+ end
2474
+
2475
+ # An Firewall Manager protocols list.
1846
2476
  #
1847
2477
  # @note When making an API call, you may pass ProtocolsListData
1848
2478
  # data as a hash:
@@ -1860,11 +2490,11 @@ module Aws::FMS
1860
2490
  # }
1861
2491
  #
1862
2492
  # @!attribute [rw] list_id
1863
- # The ID of the AWS Firewall Manager protocols list.
2493
+ # The ID of the Firewall Manager protocols list.
1864
2494
  # @return [String]
1865
2495
  #
1866
2496
  # @!attribute [rw] list_name
1867
- # The name of the AWS Firewall Manager protocols list.
2497
+ # The name of the Firewall Manager protocols list.
1868
2498
  # @return [String]
1869
2499
  #
1870
2500
  # @!attribute [rw] list_update_token
@@ -1875,16 +2505,15 @@ module Aws::FMS
1875
2505
  # @return [String]
1876
2506
  #
1877
2507
  # @!attribute [rw] create_time
1878
- # The time that the AWS Firewall Manager protocols list was created.
2508
+ # The time that the Firewall Manager protocols list was created.
1879
2509
  # @return [Time]
1880
2510
  #
1881
2511
  # @!attribute [rw] last_update_time
1882
- # The time that the AWS Firewall Manager protocols list was last
1883
- # updated.
2512
+ # The time that the Firewall Manager protocols list was last updated.
1884
2513
  # @return [Time]
1885
2514
  #
1886
2515
  # @!attribute [rw] protocols_list
1887
- # An array of protocols in the AWS Firewall Manager protocols list.
2516
+ # An array of protocols in the Firewall Manager protocols list.
1888
2517
  # @return [Array<String>]
1889
2518
  #
1890
2519
  # @!attribute [rw] previous_protocols_list
@@ -1906,7 +2535,7 @@ module Aws::FMS
1906
2535
  include Aws::Structure
1907
2536
  end
1908
2537
 
1909
- # Details of the AWS Firewall Manager protocols list.
2538
+ # Details of the Firewall Manager protocols list.
1910
2539
  #
1911
2540
  # @!attribute [rw] list_arn
1912
2541
  # The Amazon Resource Name (ARN) of the specified protocols list.
@@ -1921,7 +2550,7 @@ module Aws::FMS
1921
2550
  # @return [String]
1922
2551
  #
1923
2552
  # @!attribute [rw] protocols_list
1924
- # An array of protocols in the AWS Firewall Manager protocols list.
2553
+ # An array of protocols in the Firewall Manager protocols list.
1925
2554
  # @return [Array<String>]
1926
2555
  #
1927
2556
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ProtocolsListDataSummary AWS API Documentation
@@ -1971,8 +2600,7 @@ module Aws::FMS
1971
2600
  # }
1972
2601
  #
1973
2602
  # @!attribute [rw] apps_list
1974
- # The details of the AWS Firewall Manager applications list to be
1975
- # created.
2603
+ # The details of the Firewall Manager applications list to be created.
1976
2604
  # @return [Types::AppsListData]
1977
2605
  #
1978
2606
  # @!attribute [rw] tag_list
@@ -1989,7 +2617,7 @@ module Aws::FMS
1989
2617
  end
1990
2618
 
1991
2619
  # @!attribute [rw] apps_list
1992
- # The details of the AWS Firewall Manager applications list.
2620
+ # The details of the Firewall Manager applications list.
1993
2621
  # @return [Types::AppsListData]
1994
2622
  #
1995
2623
  # @!attribute [rw] apps_list_arn
@@ -2015,12 +2643,12 @@ module Aws::FMS
2015
2643
  #
2016
2644
  # @!attribute [rw] sns_topic_arn
2017
2645
  # The Amazon Resource Name (ARN) of the SNS topic that collects
2018
- # notifications from AWS Firewall Manager.
2646
+ # notifications from Firewall Manager.
2019
2647
  # @return [String]
2020
2648
  #
2021
2649
  # @!attribute [rw] sns_role_name
2022
2650
  # The Amazon Resource Name (ARN) of the IAM role that allows Amazon
2023
- # SNS to record AWS Firewall Manager activity.
2651
+ # SNS to record Firewall Manager activity.
2024
2652
  # @return [String]
2025
2653
  #
2026
2654
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/PutNotificationChannelRequest AWS API Documentation
@@ -2070,11 +2698,11 @@ module Aws::FMS
2070
2698
  # }
2071
2699
  #
2072
2700
  # @!attribute [rw] policy
2073
- # The details of the AWS Firewall Manager policy to be created.
2701
+ # The details of the Firewall Manager policy to be created.
2074
2702
  # @return [Types::Policy]
2075
2703
  #
2076
2704
  # @!attribute [rw] tag_list
2077
- # The tags to add to the AWS resource.
2705
+ # The tags to add to the Amazon Web Services resource.
2078
2706
  # @return [Array<Types::Tag>]
2079
2707
  #
2080
2708
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/PutPolicyRequest AWS API Documentation
@@ -2087,7 +2715,7 @@ module Aws::FMS
2087
2715
  end
2088
2716
 
2089
2717
  # @!attribute [rw] policy
2090
- # The details of the AWS Firewall Manager policy.
2718
+ # The details of the Firewall Manager policy.
2091
2719
  # @return [Types::Policy]
2092
2720
  #
2093
2721
  # @!attribute [rw] policy_arn
@@ -2127,8 +2755,7 @@ module Aws::FMS
2127
2755
  # }
2128
2756
  #
2129
2757
  # @!attribute [rw] protocols_list
2130
- # The details of the AWS Firewall Manager protocols list to be
2131
- # created.
2758
+ # The details of the Firewall Manager protocols list to be created.
2132
2759
  # @return [Types::ProtocolsListData]
2133
2760
  #
2134
2761
  # @!attribute [rw] tag_list
@@ -2145,7 +2772,7 @@ module Aws::FMS
2145
2772
  end
2146
2773
 
2147
2774
  # @!attribute [rw] protocols_list
2148
- # The details of the AWS Firewall Manager protocols list.
2775
+ # The details of the Firewall Manager protocols list.
2149
2776
  # @return [Types::ProtocolsListData]
2150
2777
  #
2151
2778
  # @!attribute [rw] protocols_list_arn
@@ -2161,6 +2788,77 @@ module Aws::FMS
2161
2788
  include Aws::Structure
2162
2789
  end
2163
2790
 
2791
+ # Information about an individual action you can take to remediate a
2792
+ # violation.
2793
+ #
2794
+ # @!attribute [rw] description
2795
+ # A description of a remediation action.
2796
+ # @return [String]
2797
+ #
2798
+ # @!attribute [rw] ec2_create_route_action
2799
+ # Information about the CreateRoute action in the Amazon EC2 API.
2800
+ # @return [Types::EC2CreateRouteAction]
2801
+ #
2802
+ # @!attribute [rw] ec2_replace_route_action
2803
+ # Information about the ReplaceRoute action in the Amazon EC2 API.
2804
+ # @return [Types::EC2ReplaceRouteAction]
2805
+ #
2806
+ # @!attribute [rw] ec2_delete_route_action
2807
+ # Information about the DeleteRoute action in the Amazon EC2 API.
2808
+ # @return [Types::EC2DeleteRouteAction]
2809
+ #
2810
+ # @!attribute [rw] ec2_copy_route_table_action
2811
+ # Information about the CopyRouteTable action in the Amazon EC2 API.
2812
+ # @return [Types::EC2CopyRouteTableAction]
2813
+ #
2814
+ # @!attribute [rw] ec2_replace_route_table_association_action
2815
+ # Information about the ReplaceRouteTableAssociation action in the
2816
+ # Amazon EC2 API.
2817
+ # @return [Types::EC2ReplaceRouteTableAssociationAction]
2818
+ #
2819
+ # @!attribute [rw] ec2_associate_route_table_action
2820
+ # Information about the AssociateRouteTable action in the Amazon EC2
2821
+ # API.
2822
+ # @return [Types::EC2AssociateRouteTableAction]
2823
+ #
2824
+ # @!attribute [rw] ec2_create_route_table_action
2825
+ # Information about the CreateRouteTable action in the Amazon EC2 API.
2826
+ # @return [Types::EC2CreateRouteTableAction]
2827
+ #
2828
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/RemediationAction AWS API Documentation
2829
+ #
2830
+ class RemediationAction < Struct.new(
2831
+ :description,
2832
+ :ec2_create_route_action,
2833
+ :ec2_replace_route_action,
2834
+ :ec2_delete_route_action,
2835
+ :ec2_copy_route_table_action,
2836
+ :ec2_replace_route_table_association_action,
2837
+ :ec2_associate_route_table_action,
2838
+ :ec2_create_route_table_action)
2839
+ SENSITIVE = []
2840
+ include Aws::Structure
2841
+ end
2842
+
2843
+ # An ordered list of actions you can take to remediate a violation.
2844
+ #
2845
+ # @!attribute [rw] remediation_action
2846
+ # Information about an action you can take to remediate a violation.
2847
+ # @return [Types::RemediationAction]
2848
+ #
2849
+ # @!attribute [rw] order
2850
+ # The order of the remediation actions in the list.
2851
+ # @return [Integer]
2852
+ #
2853
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/RemediationActionWithOrder AWS API Documentation
2854
+ #
2855
+ class RemediationActionWithOrder < Struct.new(
2856
+ :remediation_action,
2857
+ :order)
2858
+ SENSITIVE = []
2859
+ include Aws::Structure
2860
+ end
2861
+
2164
2862
  # The specified resource was not found.
2165
2863
  #
2166
2864
  # @!attribute [rw] message
@@ -2174,9 +2872,9 @@ module Aws::FMS
2174
2872
  include Aws::Structure
2175
2873
  end
2176
2874
 
2177
- # The resource tags that AWS Firewall Manager uses to determine if a
2178
- # particular resource should be included or excluded from the AWS
2179
- # Firewall Manager policy. Tags enable you to categorize your AWS
2875
+ # The resource tags that Firewall Manager uses to determine if a
2876
+ # particular resource should be included or excluded from the Firewall
2877
+ # Manager policy. Tags enable you to categorize your Amazon Web Services
2180
2878
  # resources in different ways, for example, by purpose, owner, or
2181
2879
  # environment. Each tag consists of a key and an optional value.
2182
2880
  # Firewall Manager combines the tags with "AND" so that, if you add
@@ -2216,15 +2914,15 @@ module Aws::FMS
2216
2914
  # Violation detail based on resource type.
2217
2915
  #
2218
2916
  # @!attribute [rw] aws_vpc_security_group_violation
2219
- # Violation details for security groups.
2917
+ # Violation detail for security groups.
2220
2918
  # @return [Types::AwsVPCSecurityGroupViolation]
2221
2919
  #
2222
2920
  # @!attribute [rw] aws_ec2_network_interface_violation
2223
- # Violation details for network interface.
2921
+ # Violation detail for a network interface.
2224
2922
  # @return [Types::AwsEc2NetworkInterfaceViolation]
2225
2923
  #
2226
2924
  # @!attribute [rw] aws_ec2_instance_violation
2227
- # Violation details for an EC2 instance.
2925
+ # Violation detail for an EC2 instance.
2228
2926
  # @return [Types::AwsEc2InstanceViolation]
2229
2927
  #
2230
2928
  # @!attribute [rw] network_firewall_missing_firewall_violation
@@ -2252,6 +2950,33 @@ module Aws::FMS
2252
2950
  # stateless rule group, or changed a policy default action.
2253
2951
  # @return [Types::NetworkFirewallPolicyModifiedViolation]
2254
2952
  #
2953
+ # @!attribute [rw] network_firewall_internet_traffic_not_inspected_violation
2954
+ # Violation detail for the subnet for which internet traffic hasn't
2955
+ # been inspected.
2956
+ # @return [Types::NetworkFirewallInternetTrafficNotInspectedViolation]
2957
+ #
2958
+ # @!attribute [rw] network_firewall_invalid_route_configuration_violation
2959
+ # The route configuration is invalid.
2960
+ # @return [Types::NetworkFirewallInvalidRouteConfigurationViolation]
2961
+ #
2962
+ # @!attribute [rw] network_firewall_black_hole_route_detected_violation
2963
+ # Violation detail for an internet gateway route with an inactive
2964
+ # state in the customer subnet route table or Network Firewall subnet
2965
+ # route table.
2966
+ # @return [Types::NetworkFirewallBlackHoleRouteDetectedViolation]
2967
+ #
2968
+ # @!attribute [rw] network_firewall_unexpected_firewall_routes_violation
2969
+ # There's an unexpected firewall route.
2970
+ # @return [Types::NetworkFirewallUnexpectedFirewallRoutesViolation]
2971
+ #
2972
+ # @!attribute [rw] network_firewall_unexpected_gateway_routes_violation
2973
+ # There's an unexpected gateway route.
2974
+ # @return [Types::NetworkFirewallUnexpectedGatewayRoutesViolation]
2975
+ #
2976
+ # @!attribute [rw] network_firewall_missing_expected_routes_violation
2977
+ # Expected routes are missing from Network Firewall.
2978
+ # @return [Types::NetworkFirewallMissingExpectedRoutesViolation]
2979
+ #
2255
2980
  # @!attribute [rw] dns_rule_group_priority_conflict_violation
2256
2981
  # Violation detail for a DNS Firewall policy that indicates that a
2257
2982
  # rule group that Firewall Manager tried to associate with a VPC has
@@ -2265,12 +2990,18 @@ module Aws::FMS
2265
2990
  # @return [Types::DnsDuplicateRuleGroupViolation]
2266
2991
  #
2267
2992
  # @!attribute [rw] dns_rule_group_limit_exceeded_violation
2268
- # Violation details for a DNS Firewall policy that indicates that the
2993
+ # Violation detail for a DNS Firewall policy that indicates that the
2269
2994
  # VPC reached the limit for associated DNS Firewall rule groups.
2270
2995
  # Firewall Manager tried to associate another rule group with the VPC
2271
2996
  # and failed.
2272
2997
  # @return [Types::DnsRuleGroupLimitExceededViolation]
2273
2998
  #
2999
+ # @!attribute [rw] possible_remediation_actions
3000
+ # A list of possible remediation action lists. Each individual
3001
+ # possible remediation action is a list of individual remediation
3002
+ # actions.
3003
+ # @return [Types::PossibleRemediationActions]
3004
+ #
2274
3005
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ResourceViolation AWS API Documentation
2275
3006
  #
2276
3007
  class ResourceViolation < Struct.new(
@@ -2281,9 +3012,45 @@ module Aws::FMS
2281
3012
  :network_firewall_missing_subnet_violation,
2282
3013
  :network_firewall_missing_expected_rt_violation,
2283
3014
  :network_firewall_policy_modified_violation,
3015
+ :network_firewall_internet_traffic_not_inspected_violation,
3016
+ :network_firewall_invalid_route_configuration_violation,
3017
+ :network_firewall_black_hole_route_detected_violation,
3018
+ :network_firewall_unexpected_firewall_routes_violation,
3019
+ :network_firewall_unexpected_gateway_routes_violation,
3020
+ :network_firewall_missing_expected_routes_violation,
2284
3021
  :dns_rule_group_priority_conflict_violation,
2285
3022
  :dns_duplicate_rule_group_violation,
2286
- :dns_rule_group_limit_exceeded_violation)
3023
+ :dns_rule_group_limit_exceeded_violation,
3024
+ :possible_remediation_actions)
3025
+ SENSITIVE = []
3026
+ include Aws::Structure
3027
+ end
3028
+
3029
+ # Describes a route in a route table.
3030
+ #
3031
+ # @!attribute [rw] destination_type
3032
+ # The type of destination for the route.
3033
+ # @return [String]
3034
+ #
3035
+ # @!attribute [rw] target_type
3036
+ # The type of target for the route.
3037
+ # @return [String]
3038
+ #
3039
+ # @!attribute [rw] destination
3040
+ # The destination of the route.
3041
+ # @return [String]
3042
+ #
3043
+ # @!attribute [rw] target
3044
+ # The route's target.
3045
+ # @return [String]
3046
+ #
3047
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/Route AWS API Documentation
3048
+ #
3049
+ class Route < Struct.new(
3050
+ :destination_type,
3051
+ :target_type,
3052
+ :destination,
3053
+ :target)
2287
3054
  SENSITIVE = []
2288
3055
  include Aws::Structure
2289
3056
  end
@@ -2373,12 +3140,12 @@ module Aws::FMS
2373
3140
  #
2374
3141
  # @!attribute [rw] type
2375
3142
  # The service that the policy is using to protect the resources. This
2376
- # specifies the type of policy that is created, either an AWS WAF
2377
- # policy, a Shield Advanced policy, or a security group policy. For
2378
- # security group policies, Firewall Manager supports one security
2379
- # group for each common policy and for each content audit policy. This
2380
- # is an adjustable limit that you can increase by contacting AWS
2381
- # Support.
3143
+ # specifies the type of policy that is created, either an WAF policy,
3144
+ # a Shield Advanced policy, or a security group policy. For security
3145
+ # group policies, Firewall Manager supports one security group for
3146
+ # each common policy and for each content audit policy. This is an
3147
+ # adjustable limit that you can increase by contacting Amazon Web
3148
+ # Services Support.
2382
3149
  # @return [String]
2383
3150
  #
2384
3151
  # @!attribute [rw] managed_service_data
@@ -2386,6 +3153,10 @@ module Aws::FMS
2386
3153
  # JSON format. For service type `SHIELD_ADVANCED`, this is an empty
2387
3154
  # string.
2388
3155
  #
3156
+ # * Example: `DNS_FIREWALL`
3157
+ #
3158
+ # `"\{"type":"DNS_FIREWALL","preProcessRuleGroups":[\{"ruleGroupId":"rslvr-frg-1","priority":10\}],"postProcessRuleGroups":[\{"ruleGroupId":"rslvr-frg-2","priority":9911\}]\}"`
3159
+ #
2389
3160
  # * Example: `NETWORK_FIREWALL`
2390
3161
  #
2391
3162
  # `"\{"type":"NETWORK_FIREWALL","networkFirewallStatelessRuleGroupReferences":[\{"resourceARN":"arn:aws:network-firewall:us-west-1:1234567891011:stateless-rulegroup/rulegroup2","priority":10\}],"networkFirewallStatelessDefaultActions":["aws:pass","custom1"],"networkFirewallStatelessFragmentDefaultActions":["custom2","aws:pass"],"networkFirewallStatelessCustomActions":[\{"actionName":"custom1","actionDefinition":\{"publishMetricAction":\{"dimensions":[\{"value":"dimension1"\}]\}\}\},\{"actionName":"custom2","actionDefinition":\{"publishMetricAction":\{"dimensions":[\{"value":"dimension2"\}]\}\}\}],"networkFirewallStatefulRuleGroupReferences":[\{"resourceARN":"arn:aws:network-firewall:us-west-1:1234567891011:stateful-rulegroup/rulegroup1"\}],"networkFirewallOrchestrationConfig":\{"singleFirewallEndpointPerVPC":true,"allowedIPV4CidrList":["10.24.34.0/28"]\}
@@ -2413,6 +3184,13 @@ module Aws::FMS
2413
3184
  # "applyToAllEC2InstanceENIs":false,"securityGroups":[\{"id":"
2414
3185
  # sg-000e55995d61a06bd"\}]\}"`
2415
3186
  #
3187
+ # * Example: Shared VPCs. Apply the preceding policy to resources in
3188
+ # shared VPCs as well as to those in VPCs that the account owns
3189
+ #
3190
+ # `"\{"type":"SECURITY_GROUPS_COMMON","revertManualSecurityGroupChanges":false,"exclusiveResourceSecurityGroupManagement":false,
3191
+ # "applyToAllEC2InstanceENIs":false,"includeSharedVPC":true,"securityGroups":[\{"id":"
3192
+ # sg-000e55995d61a06bd"\}]\}"`
3193
+ #
2416
3194
  # * Example: `SECURITY_GROUPS_CONTENT_AUDIT`
2417
3195
  #
2418
3196
  # `"\{"type":"SECURITY_GROUPS_CONTENT_AUDIT","securityGroups":[\{"id":"sg-000e55995d61a06bd"\}],"securityGroupAction":\{"type":"ALLOW"\}\}"`
@@ -2438,7 +3216,7 @@ module Aws::FMS
2438
3216
  include Aws::Structure
2439
3217
  end
2440
3218
 
2441
- # AWS Network Firewall stateful rule group, used in a
3219
+ # Network Firewall stateful rule group, used in a
2442
3220
  # NetworkFirewallPolicyDescription.
2443
3221
  #
2444
3222
  # @!attribute [rw] rule_group_name
@@ -2458,7 +3236,7 @@ module Aws::FMS
2458
3236
  include Aws::Structure
2459
3237
  end
2460
3238
 
2461
- # AWS Network Firewall stateless rule group, used in a
3239
+ # Network Firewall stateless rule group, used in a
2462
3240
  # NetworkFirewallPolicyDescription.
2463
3241
  #
2464
3242
  # @!attribute [rw] rule_group_name
@@ -2470,7 +3248,7 @@ module Aws::FMS
2470
3248
  # @return [String]
2471
3249
  #
2472
3250
  # @!attribute [rw] priority
2473
- # The priority of the rule group. AWS Network Firewall evaluates the
3251
+ # The priority of the rule group. Network Firewall evaluates the
2474
3252
  # stateless rule groups in a firewall policy starting from the lowest
2475
3253
  # priority setting.
2476
3254
  # @return [Integer]
@@ -2485,12 +3263,12 @@ module Aws::FMS
2485
3263
  include Aws::Structure
2486
3264
  end
2487
3265
 
2488
- # A collection of key:value pairs associated with an AWS resource. The
2489
- # key:value pair can be anything you define. Typically, the tag key
2490
- # represents a category (such as "environment") and the tag value
2491
- # represents a specific value within that category (such as "test,"
2492
- # "development," or "production"). You can add up to 50 tags to each
2493
- # AWS resource.
3266
+ # A collection of key:value pairs associated with an Amazon Web Services
3267
+ # resource. The key:value pair can be anything you define. Typically,
3268
+ # the tag key represents a category (such as "environment") and the
3269
+ # tag value represents a specific value within that category (such as
3270
+ # "test," "development," or "production"). You can add up to 50
3271
+ # tags to each Amazon Web Services resource.
2494
3272
  #
2495
3273
  # @note When making an API call, you may pass Tag
2496
3274
  # data as a hash:
@@ -2536,8 +3314,8 @@ module Aws::FMS
2536
3314
  #
2537
3315
  # @!attribute [rw] resource_arn
2538
3316
  # The Amazon Resource Name (ARN) of the resource to return tags for.
2539
- # The AWS Firewall Manager resources that support tagging are
2540
- # policies, applications lists, and protocols lists.
3317
+ # The Firewall Manager resources that support tagging are policies,
3318
+ # applications lists, and protocols lists.
2541
3319
  # @return [String]
2542
3320
  #
2543
3321
  # @!attribute [rw] tag_list
@@ -2567,8 +3345,8 @@ module Aws::FMS
2567
3345
  #
2568
3346
  # @!attribute [rw] resource_arn
2569
3347
  # The Amazon Resource Name (ARN) of the resource to return tags for.
2570
- # The AWS Firewall Manager resources that support tagging are
2571
- # policies, applications lists, and protocols lists.
3348
+ # The Firewall Manager resources that support tagging are policies,
3349
+ # applications lists, and protocols lists.
2572
3350
  # @return [String]
2573
3351
  #
2574
3352
  # @!attribute [rw] tag_keys
@@ -2588,16 +3366,17 @@ module Aws::FMS
2588
3366
  #
2589
3367
  class UntagResourceResponse < Aws::EmptyStructure; end
2590
3368
 
2591
- # Violations for a resource based on the specified AWS Firewall Manager
2592
- # policy and AWS account.
3369
+ # Violations for a resource based on the specified Firewall Manager
3370
+ # policy and Amazon Web Services account.
2593
3371
  #
2594
3372
  # @!attribute [rw] policy_id
2595
- # The ID of the AWS Firewall Manager policy that the violation details
3373
+ # The ID of the Firewall Manager policy that the violation details
2596
3374
  # were requested for.
2597
3375
  # @return [String]
2598
3376
  #
2599
3377
  # @!attribute [rw] member_account
2600
- # The AWS account that the violation details were requested for.
3378
+ # The Amazon Web Services account that the violation details were
3379
+ # requested for.
2601
3380
  # @return [String]
2602
3381
  #
2603
3382
  # @!attribute [rw] resource_id