aws-sdk-fms 1.45.0 → 1.48.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e950287cab784b4458a946d831d09c56b84d281f5ca0b5138018147954b8cea7
4
- data.tar.gz: f5182a7e205bca73f3d205c7cb9cb4699db2aab04c515aeaa50e73c3252eec9d
3
+ metadata.gz: fe1856b2e7db71ec8c271606d37bf76353ca984e90989e79ff8b135c213ec108
4
+ data.tar.gz: 276edd6276e83d327b817785a38be6a3fde6899604fbd7530ed5ea99038092e0
5
5
  SHA512:
6
- metadata.gz: eda78cbfb7faa85d0b541949d43b4f0e70283b62798f7c87b17ecf76743e5f13482483c0f54b9d0c818b37dbd5ca04396d9ea562abcb69d09ab7698b80741a6c
7
- data.tar.gz: d20790ddfee9a7b1c3008a4d15839016e757ff59ef441e87458467708116272f0774c1cf567fe89991426a84b5c3766781d69fe72324c8dab6c73971452cbc5f
6
+ metadata.gz: e9781f9af09f7b87593143da3daae257adc24f9cdb28824f09faa3b0e110ae87fb7965897a7663848e7e841e6e51542078b0bc50d80923d9f89d185fefa5d7de
7
+ data.tar.gz: 2ef93a5e9c63b64ea4c8051deb6a1548a1dac2995468feb6e63349e556800cfd0c2ef0a4312033e4b5d8db36700a8739215d940188c032f09d61bf76fcb0afdd
data/CHANGELOG.md CHANGED
@@ -1,6 +1,21 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.48.0 (2022-02-24)
5
+ ------------------
6
+
7
+ * Feature - AWS Firewall Manager now supports the configuration of AWS Network Firewall policies with either centralized or distributed deployment models. This release also adds support for custom endpoint configuration, where you can choose which Availability Zones to create firewall endpoints in.
8
+
9
+ 1.47.0 (2022-02-03)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
14
+ 1.46.0 (2022-01-12)
15
+ ------------------
16
+
17
+ * Feature - Shield Advanced policies for Amazon CloudFront resources now support automatic application layer DDoS mitigation. The max length for SecurityServicePolicyData ManagedServiceData is now 8192 characters, instead of 4096.
18
+
4
19
  1.45.0 (2021-12-21)
5
20
  ------------------
6
21
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.45.0
1
+ 1.48.0
@@ -27,7 +27,9 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
30
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
31
33
  require 'aws-sdk-core/plugins/signature_v4.rb'
32
34
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
33
35
 
@@ -74,7 +76,9 @@ module Aws::FMS
74
76
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
75
77
  add_plugin(Aws::Plugins::TransferEncoding)
76
78
  add_plugin(Aws::Plugins::HttpChecksum)
79
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
77
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
+ add_plugin(Aws::Plugins::RecursionDetection)
78
82
  add_plugin(Aws::Plugins::SignatureV4)
79
83
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
80
84
 
@@ -644,8 +648,10 @@ module Aws::FMS
644
648
  # resp.policy_compliance_detail.member_account #=> String
645
649
  # resp.policy_compliance_detail.violators #=> Array
646
650
  # resp.policy_compliance_detail.violators[0].resource_id #=> String
647
- # resp.policy_compliance_detail.violators[0].violation_reason #=> String, one of "WEB_ACL_MISSING_RULE_GROUP", "RESOURCE_MISSING_WEB_ACL", "RESOURCE_INCORRECT_WEB_ACL", "RESOURCE_MISSING_SHIELD_PROTECTION", "RESOURCE_MISSING_WEB_ACL_OR_SHIELD_PROTECTION", "RESOURCE_MISSING_SECURITY_GROUP", "RESOURCE_VIOLATES_AUDIT_SECURITY_GROUP", "SECURITY_GROUP_UNUSED", "SECURITY_GROUP_REDUNDANT", "FMS_CREATED_SECURITY_GROUP_EDITED", "MISSING_FIREWALL", "MISSING_FIREWALL_SUBNET_IN_AZ", "MISSING_EXPECTED_ROUTE_TABLE", "NETWORK_FIREWALL_POLICY_MODIFIED", "INTERNET_GATEWAY_MISSING_EXPECTED_ROUTE", "FIREWALL_SUBNET_MISSING_EXPECTED_ROUTE", "UNEXPECTED_FIREWALL_ROUTES", "UNEXPECTED_TARGET_GATEWAY_ROUTES", "TRAFFIC_INSPECTION_CROSSES_AZ_BOUNDARY", "INVALID_ROUTE_CONFIGURATION", "MISSING_TARGET_GATEWAY", "INTERNET_TRAFFIC_NOT_INSPECTED", "BLACK_HOLE_ROUTE_DETECTED", "BLACK_HOLE_ROUTE_DETECTED_IN_FIREWALL_SUBNET", "RESOURCE_MISSING_DNS_FIREWALL"
651
+ # resp.policy_compliance_detail.violators[0].violation_reason #=> String, one of "WEB_ACL_MISSING_RULE_GROUP", "RESOURCE_MISSING_WEB_ACL", "RESOURCE_INCORRECT_WEB_ACL", "RESOURCE_MISSING_SHIELD_PROTECTION", "RESOURCE_MISSING_WEB_ACL_OR_SHIELD_PROTECTION", "RESOURCE_MISSING_SECURITY_GROUP", "RESOURCE_VIOLATES_AUDIT_SECURITY_GROUP", "SECURITY_GROUP_UNUSED", "SECURITY_GROUP_REDUNDANT", "FMS_CREATED_SECURITY_GROUP_EDITED", "MISSING_FIREWALL", "MISSING_FIREWALL_SUBNET_IN_AZ", "MISSING_EXPECTED_ROUTE_TABLE", "NETWORK_FIREWALL_POLICY_MODIFIED", "INTERNET_GATEWAY_MISSING_EXPECTED_ROUTE", "FIREWALL_SUBNET_MISSING_EXPECTED_ROUTE", "UNEXPECTED_FIREWALL_ROUTES", "UNEXPECTED_TARGET_GATEWAY_ROUTES", "TRAFFIC_INSPECTION_CROSSES_AZ_BOUNDARY", "INVALID_ROUTE_CONFIGURATION", "MISSING_TARGET_GATEWAY", "INTERNET_TRAFFIC_NOT_INSPECTED", "BLACK_HOLE_ROUTE_DETECTED", "BLACK_HOLE_ROUTE_DETECTED_IN_FIREWALL_SUBNET", "RESOURCE_MISSING_DNS_FIREWALL", "FIREWALL_SUBNET_IS_OUT_OF_SCOPE", "ROUTE_HAS_OUT_OF_SCOPE_ENDPOINT"
648
652
  # resp.policy_compliance_detail.violators[0].resource_type #=> String
653
+ # resp.policy_compliance_detail.violators[0].metadata #=> Hash
654
+ # resp.policy_compliance_detail.violators[0].metadata["LengthBoundedString"] #=> String
649
655
  # resp.policy_compliance_detail.evaluation_limit_exceeded #=> Boolean
650
656
  # resp.policy_compliance_detail.expired_at #=> Time
651
657
  # resp.policy_compliance_detail.issue_info_map #=> Hash
@@ -705,6 +711,7 @@ module Aws::FMS
705
711
  # resp.policy.policy_update_token #=> String
706
712
  # resp.policy.security_service_policy_data.type #=> String, one of "WAF", "WAFV2", "SHIELD_ADVANCED", "SECURITY_GROUPS_COMMON", "SECURITY_GROUPS_CONTENT_AUDIT", "SECURITY_GROUPS_USAGE_AUDIT", "NETWORK_FIREWALL", "DNS_FIREWALL"
707
713
  # resp.policy.security_service_policy_data.managed_service_data #=> String
714
+ # resp.policy.security_service_policy_data.policy_option.network_firewall_policy.firewall_deployment_model #=> String, one of "CENTRALIZED"
708
715
  # resp.policy.resource_type #=> String
709
716
  # resp.policy.resource_type_list #=> Array
710
717
  # resp.policy.resource_type_list[0] #=> String
@@ -1140,8 +1147,39 @@ module Aws::FMS
1140
1147
  # resp.violation_detail.resource_violations[0].possible_remediation_actions.actions[0].ordered_remediation_actions[0].remediation_action.ec2_create_route_table_action.description #=> String
1141
1148
  # resp.violation_detail.resource_violations[0].possible_remediation_actions.actions[0].ordered_remediation_actions[0].remediation_action.ec2_create_route_table_action.vpc_id.resource_id #=> String
1142
1149
  # resp.violation_detail.resource_violations[0].possible_remediation_actions.actions[0].ordered_remediation_actions[0].remediation_action.ec2_create_route_table_action.vpc_id.description #=> String
1150
+ # resp.violation_detail.resource_violations[0].possible_remediation_actions.actions[0].ordered_remediation_actions[0].remediation_action.fms_policy_update_firewall_creation_config_action.description #=> String
1151
+ # resp.violation_detail.resource_violations[0].possible_remediation_actions.actions[0].ordered_remediation_actions[0].remediation_action.fms_policy_update_firewall_creation_config_action.firewall_creation_config #=> String
1143
1152
  # resp.violation_detail.resource_violations[0].possible_remediation_actions.actions[0].ordered_remediation_actions[0].order #=> Integer
1144
1153
  # resp.violation_detail.resource_violations[0].possible_remediation_actions.actions[0].is_default_action #=> Boolean
1154
+ # resp.violation_detail.resource_violations[0].firewall_subnet_is_out_of_scope_violation.firewall_subnet_id #=> String
1155
+ # resp.violation_detail.resource_violations[0].firewall_subnet_is_out_of_scope_violation.vpc_id #=> String
1156
+ # resp.violation_detail.resource_violations[0].firewall_subnet_is_out_of_scope_violation.subnet_availability_zone #=> String
1157
+ # resp.violation_detail.resource_violations[0].firewall_subnet_is_out_of_scope_violation.subnet_availability_zone_id #=> String
1158
+ # resp.violation_detail.resource_violations[0].firewall_subnet_is_out_of_scope_violation.vpc_endpoint_id #=> String
1159
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.subnet_id #=> String
1160
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.vpc_id #=> String
1161
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.route_table_id #=> String
1162
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.violating_routes #=> Array
1163
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.violating_routes[0].destination_type #=> String, one of "IPV4", "IPV6", "PREFIX_LIST"
1164
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.violating_routes[0].target_type #=> String, one of "GATEWAY", "CARRIER_GATEWAY", "INSTANCE", "LOCAL_GATEWAY", "NAT_GATEWAY", "NETWORK_INTERFACE", "VPC_ENDPOINT", "VPC_PEERING_CONNECTION", "EGRESS_ONLY_INTERNET_GATEWAY", "TRANSIT_GATEWAY"
1165
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.violating_routes[0].destination #=> String
1166
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.violating_routes[0].target #=> String
1167
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.subnet_availability_zone #=> String
1168
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.subnet_availability_zone_id #=> String
1169
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.current_firewall_subnet_route_table #=> String
1170
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.firewall_subnet_id #=> String
1171
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.firewall_subnet_routes #=> Array
1172
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.firewall_subnet_routes[0].destination_type #=> String, one of "IPV4", "IPV6", "PREFIX_LIST"
1173
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.firewall_subnet_routes[0].target_type #=> String, one of "GATEWAY", "CARRIER_GATEWAY", "INSTANCE", "LOCAL_GATEWAY", "NAT_GATEWAY", "NETWORK_INTERFACE", "VPC_ENDPOINT", "VPC_PEERING_CONNECTION", "EGRESS_ONLY_INTERNET_GATEWAY", "TRANSIT_GATEWAY"
1174
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.firewall_subnet_routes[0].destination #=> String
1175
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.firewall_subnet_routes[0].target #=> String
1176
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.internet_gateway_id #=> String
1177
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.current_internet_gateway_route_table #=> String
1178
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.internet_gateway_routes #=> Array
1179
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.internet_gateway_routes[0].destination_type #=> String, one of "IPV4", "IPV6", "PREFIX_LIST"
1180
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.internet_gateway_routes[0].target_type #=> String, one of "GATEWAY", "CARRIER_GATEWAY", "INSTANCE", "LOCAL_GATEWAY", "NAT_GATEWAY", "NETWORK_INTERFACE", "VPC_ENDPOINT", "VPC_PEERING_CONNECTION", "EGRESS_ONLY_INTERNET_GATEWAY", "TRANSIT_GATEWAY"
1181
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.internet_gateway_routes[0].destination #=> String
1182
+ # resp.violation_detail.resource_violations[0].route_has_out_of_scope_endpoint_violation.internet_gateway_routes[0].target #=> String
1145
1183
  # resp.violation_detail.resource_tags #=> Array
1146
1184
  # resp.violation_detail.resource_tags[0].key #=> String
1147
1185
  # resp.violation_detail.resource_tags[0].value #=> String
@@ -1603,7 +1641,7 @@ module Aws::FMS
1603
1641
  # * An Network Firewall policy, which provides firewall rules to filter
1604
1642
  # network traffic in specified Amazon VPCs.
1605
1643
  #
1606
- # * A DNS Firewall policy, which provides Route 53 Resolver DNS Firewall
1644
+ # * A DNS Firewall policy, which provides Route 53 Resolver DNS Firewall
1607
1645
  # rules to filter DNS queries for specified VPCs.
1608
1646
  #
1609
1647
  # Each policy is specific to one of the types. If you want to enforce
@@ -1639,6 +1677,11 @@ module Aws::FMS
1639
1677
  # security_service_policy_data: { # required
1640
1678
  # type: "WAF", # required, accepts WAF, WAFV2, SHIELD_ADVANCED, SECURITY_GROUPS_COMMON, SECURITY_GROUPS_CONTENT_AUDIT, SECURITY_GROUPS_USAGE_AUDIT, NETWORK_FIREWALL, DNS_FIREWALL
1641
1679
  # managed_service_data: "ManagedServiceData",
1680
+ # policy_option: {
1681
+ # network_firewall_policy: {
1682
+ # firewall_deployment_model: "CENTRALIZED", # accepts CENTRALIZED
1683
+ # },
1684
+ # },
1642
1685
  # },
1643
1686
  # resource_type: "ResourceType", # required
1644
1687
  # resource_type_list: ["ResourceType"],
@@ -1673,6 +1716,7 @@ module Aws::FMS
1673
1716
  # resp.policy.policy_update_token #=> String
1674
1717
  # resp.policy.security_service_policy_data.type #=> String, one of "WAF", "WAFV2", "SHIELD_ADVANCED", "SECURITY_GROUPS_COMMON", "SECURITY_GROUPS_CONTENT_AUDIT", "SECURITY_GROUPS_USAGE_AUDIT", "NETWORK_FIREWALL", "DNS_FIREWALL"
1675
1718
  # resp.policy.security_service_policy_data.managed_service_data #=> String
1719
+ # resp.policy.security_service_policy_data.policy_option.network_firewall_policy.firewall_deployment_model #=> String, one of "CENTRALIZED"
1676
1720
  # resp.policy.resource_type #=> String
1677
1721
  # resp.policy.resource_type_list #=> Array
1678
1722
  # resp.policy.resource_type_list[0] #=> String
@@ -1831,7 +1875,7 @@ module Aws::FMS
1831
1875
  params: params,
1832
1876
  config: config)
1833
1877
  context[:gem_name] = 'aws-sdk-fms'
1834
- context[:gem_version] = '1.45.0'
1878
+ context[:gem_version] = '1.48.0'
1835
1879
  Seahorse::Client::Request.new(handlers, context)
1836
1880
  end
1837
1881
 
@@ -30,6 +30,7 @@ module Aws::FMS
30
30
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
31
31
  CIDR = Shapes::StringShape.new(name: 'CIDR')
32
32
  ComplianceViolator = Shapes::StructureShape.new(name: 'ComplianceViolator')
33
+ ComplianceViolatorMetadata = Shapes::MapShape.new(name: 'ComplianceViolatorMetadata')
33
34
  ComplianceViolators = Shapes::ListShape.new(name: 'ComplianceViolators')
34
35
  CustomerPolicyScopeId = Shapes::StringShape.new(name: 'CustomerPolicyScopeId')
35
36
  CustomerPolicyScopeIdList = Shapes::ListShape.new(name: 'CustomerPolicyScopeIdList')
@@ -60,6 +61,9 @@ module Aws::FMS
60
61
  EvaluationResults = Shapes::ListShape.new(name: 'EvaluationResults')
61
62
  ExpectedRoute = Shapes::StructureShape.new(name: 'ExpectedRoute')
62
63
  ExpectedRoutes = Shapes::ListShape.new(name: 'ExpectedRoutes')
64
+ FMSPolicyUpdateFirewallCreationConfigAction = Shapes::StructureShape.new(name: 'FMSPolicyUpdateFirewallCreationConfigAction')
65
+ FirewallDeploymentModel = Shapes::StringShape.new(name: 'FirewallDeploymentModel')
66
+ FirewallSubnetIsOutOfScopeViolation = Shapes::StructureShape.new(name: 'FirewallSubnetIsOutOfScopeViolation')
63
67
  GetAdminAccountRequest = Shapes::StructureShape.new(name: 'GetAdminAccountRequest')
64
68
  GetAdminAccountResponse = Shapes::StructureShape.new(name: 'GetAdminAccountResponse')
65
69
  GetAppsListRequest = Shapes::StructureShape.new(name: 'GetAppsListRequest')
@@ -109,6 +113,7 @@ module Aws::FMS
109
113
  NetworkFirewallMissingExpectedRoutesViolation = Shapes::StructureShape.new(name: 'NetworkFirewallMissingExpectedRoutesViolation')
110
114
  NetworkFirewallMissingFirewallViolation = Shapes::StructureShape.new(name: 'NetworkFirewallMissingFirewallViolation')
111
115
  NetworkFirewallMissingSubnetViolation = Shapes::StructureShape.new(name: 'NetworkFirewallMissingSubnetViolation')
116
+ NetworkFirewallPolicy = Shapes::StructureShape.new(name: 'NetworkFirewallPolicy')
112
117
  NetworkFirewallPolicyDescription = Shapes::StructureShape.new(name: 'NetworkFirewallPolicyDescription')
113
118
  NetworkFirewallPolicyModifiedViolation = Shapes::StructureShape.new(name: 'NetworkFirewallPolicyModifiedViolation')
114
119
  NetworkFirewallResourceName = Shapes::StringShape.new(name: 'NetworkFirewallResourceName')
@@ -125,6 +130,7 @@ module Aws::FMS
125
130
  PolicyComplianceStatusList = Shapes::ListShape.new(name: 'PolicyComplianceStatusList')
126
131
  PolicyComplianceStatusType = Shapes::StringShape.new(name: 'PolicyComplianceStatusType')
127
132
  PolicyId = Shapes::StringShape.new(name: 'PolicyId')
133
+ PolicyOption = Shapes::StructureShape.new(name: 'PolicyOption')
128
134
  PolicySummary = Shapes::StructureShape.new(name: 'PolicySummary')
129
135
  PolicySummaryList = Shapes::ListShape.new(name: 'PolicySummaryList')
130
136
  PolicyUpdateToken = Shapes::StringShape.new(name: 'PolicyUpdateToken')
@@ -167,6 +173,7 @@ module Aws::FMS
167
173
  ResourceViolation = Shapes::StructureShape.new(name: 'ResourceViolation')
168
174
  ResourceViolations = Shapes::ListShape.new(name: 'ResourceViolations')
169
175
  Route = Shapes::StructureShape.new(name: 'Route')
176
+ RouteHasOutOfScopeEndpointViolation = Shapes::StructureShape.new(name: 'RouteHasOutOfScopeEndpointViolation')
170
177
  Routes = Shapes::ListShape.new(name: 'Routes')
171
178
  SecurityGroupRemediationAction = Shapes::StructureShape.new(name: 'SecurityGroupRemediationAction')
172
179
  SecurityGroupRemediationActions = Shapes::ListShape.new(name: 'SecurityGroupRemediationActions')
@@ -246,8 +253,12 @@ module Aws::FMS
246
253
  ComplianceViolator.add_member(:resource_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "ResourceId"))
247
254
  ComplianceViolator.add_member(:violation_reason, Shapes::ShapeRef.new(shape: ViolationReason, location_name: "ViolationReason"))
248
255
  ComplianceViolator.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, location_name: "ResourceType"))
256
+ ComplianceViolator.add_member(:metadata, Shapes::ShapeRef.new(shape: ComplianceViolatorMetadata, location_name: "Metadata"))
249
257
  ComplianceViolator.struct_class = Types::ComplianceViolator
250
258
 
259
+ ComplianceViolatorMetadata.key = Shapes::ShapeRef.new(shape: LengthBoundedString)
260
+ ComplianceViolatorMetadata.value = Shapes::ShapeRef.new(shape: LengthBoundedString)
261
+
251
262
  ComplianceViolators.member = Shapes::ShapeRef.new(shape: ComplianceViolator)
252
263
 
253
264
  CustomerPolicyScopeIdList.member = Shapes::ShapeRef.new(shape: CustomerPolicyScopeId)
@@ -348,6 +359,17 @@ module Aws::FMS
348
359
 
349
360
  ExpectedRoutes.member = Shapes::ShapeRef.new(shape: ExpectedRoute)
350
361
 
362
+ FMSPolicyUpdateFirewallCreationConfigAction.add_member(:description, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "Description"))
363
+ FMSPolicyUpdateFirewallCreationConfigAction.add_member(:firewall_creation_config, Shapes::ShapeRef.new(shape: ManagedServiceData, location_name: "FirewallCreationConfig"))
364
+ FMSPolicyUpdateFirewallCreationConfigAction.struct_class = Types::FMSPolicyUpdateFirewallCreationConfigAction
365
+
366
+ FirewallSubnetIsOutOfScopeViolation.add_member(:firewall_subnet_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "FirewallSubnetId"))
367
+ FirewallSubnetIsOutOfScopeViolation.add_member(:vpc_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "VpcId"))
368
+ FirewallSubnetIsOutOfScopeViolation.add_member(:subnet_availability_zone, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "SubnetAvailabilityZone"))
369
+ FirewallSubnetIsOutOfScopeViolation.add_member(:subnet_availability_zone_id, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "SubnetAvailabilityZoneId"))
370
+ FirewallSubnetIsOutOfScopeViolation.add_member(:vpc_endpoint_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "VpcEndpointId"))
371
+ FirewallSubnetIsOutOfScopeViolation.struct_class = Types::FirewallSubnetIsOutOfScopeViolation
372
+
351
373
  GetAdminAccountRequest.struct_class = Types::GetAdminAccountRequest
352
374
 
353
375
  GetAdminAccountResponse.add_member(:admin_account, Shapes::ShapeRef.new(shape: AWSAccountId, location_name: "AdminAccount"))
@@ -551,6 +573,9 @@ module Aws::FMS
551
573
  NetworkFirewallMissingSubnetViolation.add_member(:target_violation_reason, Shapes::ShapeRef.new(shape: TargetViolationReason, location_name: "TargetViolationReason"))
552
574
  NetworkFirewallMissingSubnetViolation.struct_class = Types::NetworkFirewallMissingSubnetViolation
553
575
 
576
+ NetworkFirewallPolicy.add_member(:firewall_deployment_model, Shapes::ShapeRef.new(shape: FirewallDeploymentModel, location_name: "FirewallDeploymentModel"))
577
+ NetworkFirewallPolicy.struct_class = Types::NetworkFirewallPolicy
578
+
554
579
  NetworkFirewallPolicyDescription.add_member(:stateless_rule_groups, Shapes::ShapeRef.new(shape: StatelessRuleGroupList, location_name: "StatelessRuleGroups"))
555
580
  NetworkFirewallPolicyDescription.add_member(:stateless_default_actions, Shapes::ShapeRef.new(shape: NetworkFirewallActionList, location_name: "StatelessDefaultActions"))
556
581
  NetworkFirewallPolicyDescription.add_member(:stateless_fragment_default_actions, Shapes::ShapeRef.new(shape: NetworkFirewallActionList, location_name: "StatelessFragmentDefaultActions"))
@@ -618,6 +643,9 @@ module Aws::FMS
618
643
 
619
644
  PolicyComplianceStatusList.member = Shapes::ShapeRef.new(shape: PolicyComplianceStatus)
620
645
 
646
+ PolicyOption.add_member(:network_firewall_policy, Shapes::ShapeRef.new(shape: NetworkFirewallPolicy, location_name: "NetworkFirewallPolicy"))
647
+ PolicyOption.struct_class = Types::PolicyOption
648
+
621
649
  PolicySummary.add_member(:policy_arn, Shapes::ShapeRef.new(shape: ResourceArn, location_name: "PolicyArn"))
622
650
  PolicySummary.add_member(:policy_id, Shapes::ShapeRef.new(shape: PolicyId, location_name: "PolicyId"))
623
651
  PolicySummary.add_member(:policy_name, Shapes::ShapeRef.new(shape: ResourceName, location_name: "PolicyName"))
@@ -701,6 +729,7 @@ module Aws::FMS
701
729
  RemediationAction.add_member(:ec2_replace_route_table_association_action, Shapes::ShapeRef.new(shape: EC2ReplaceRouteTableAssociationAction, location_name: "EC2ReplaceRouteTableAssociationAction"))
702
730
  RemediationAction.add_member(:ec2_associate_route_table_action, Shapes::ShapeRef.new(shape: EC2AssociateRouteTableAction, location_name: "EC2AssociateRouteTableAction"))
703
731
  RemediationAction.add_member(:ec2_create_route_table_action, Shapes::ShapeRef.new(shape: EC2CreateRouteTableAction, location_name: "EC2CreateRouteTableAction"))
732
+ RemediationAction.add_member(:fms_policy_update_firewall_creation_config_action, Shapes::ShapeRef.new(shape: FMSPolicyUpdateFirewallCreationConfigAction, location_name: "FMSPolicyUpdateFirewallCreationConfigAction"))
704
733
  RemediationAction.struct_class = Types::RemediationAction
705
734
 
706
735
  RemediationActionWithOrder.add_member(:remediation_action, Shapes::ShapeRef.new(shape: RemediationAction, location_name: "RemediationAction"))
@@ -737,6 +766,8 @@ module Aws::FMS
737
766
  ResourceViolation.add_member(:dns_duplicate_rule_group_violation, Shapes::ShapeRef.new(shape: DnsDuplicateRuleGroupViolation, location_name: "DnsDuplicateRuleGroupViolation"))
738
767
  ResourceViolation.add_member(:dns_rule_group_limit_exceeded_violation, Shapes::ShapeRef.new(shape: DnsRuleGroupLimitExceededViolation, location_name: "DnsRuleGroupLimitExceededViolation"))
739
768
  ResourceViolation.add_member(:possible_remediation_actions, Shapes::ShapeRef.new(shape: PossibleRemediationActions, location_name: "PossibleRemediationActions"))
769
+ ResourceViolation.add_member(:firewall_subnet_is_out_of_scope_violation, Shapes::ShapeRef.new(shape: FirewallSubnetIsOutOfScopeViolation, location_name: "FirewallSubnetIsOutOfScopeViolation"))
770
+ ResourceViolation.add_member(:route_has_out_of_scope_endpoint_violation, Shapes::ShapeRef.new(shape: RouteHasOutOfScopeEndpointViolation, location_name: "RouteHasOutOfScopeEndpointViolation"))
740
771
  ResourceViolation.struct_class = Types::ResourceViolation
741
772
 
742
773
  ResourceViolations.member = Shapes::ShapeRef.new(shape: ResourceViolation)
@@ -747,6 +778,20 @@ module Aws::FMS
747
778
  Route.add_member(:target, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "Target"))
748
779
  Route.struct_class = Types::Route
749
780
 
781
+ RouteHasOutOfScopeEndpointViolation.add_member(:subnet_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "SubnetId"))
782
+ RouteHasOutOfScopeEndpointViolation.add_member(:vpc_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "VpcId"))
783
+ RouteHasOutOfScopeEndpointViolation.add_member(:route_table_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "RouteTableId"))
784
+ RouteHasOutOfScopeEndpointViolation.add_member(:violating_routes, Shapes::ShapeRef.new(shape: Routes, location_name: "ViolatingRoutes"))
785
+ RouteHasOutOfScopeEndpointViolation.add_member(:subnet_availability_zone, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "SubnetAvailabilityZone"))
786
+ RouteHasOutOfScopeEndpointViolation.add_member(:subnet_availability_zone_id, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "SubnetAvailabilityZoneId"))
787
+ RouteHasOutOfScopeEndpointViolation.add_member(:current_firewall_subnet_route_table, Shapes::ShapeRef.new(shape: ResourceId, location_name: "CurrentFirewallSubnetRouteTable"))
788
+ RouteHasOutOfScopeEndpointViolation.add_member(:firewall_subnet_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "FirewallSubnetId"))
789
+ RouteHasOutOfScopeEndpointViolation.add_member(:firewall_subnet_routes, Shapes::ShapeRef.new(shape: Routes, location_name: "FirewallSubnetRoutes"))
790
+ RouteHasOutOfScopeEndpointViolation.add_member(:internet_gateway_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "InternetGatewayId"))
791
+ RouteHasOutOfScopeEndpointViolation.add_member(:current_internet_gateway_route_table, Shapes::ShapeRef.new(shape: ResourceId, location_name: "CurrentInternetGatewayRouteTable"))
792
+ RouteHasOutOfScopeEndpointViolation.add_member(:internet_gateway_routes, Shapes::ShapeRef.new(shape: Routes, location_name: "InternetGatewayRoutes"))
793
+ RouteHasOutOfScopeEndpointViolation.struct_class = Types::RouteHasOutOfScopeEndpointViolation
794
+
750
795
  Routes.member = Shapes::ShapeRef.new(shape: Route)
751
796
 
752
797
  SecurityGroupRemediationAction.add_member(:remediation_action_type, Shapes::ShapeRef.new(shape: RemediationActionType, location_name: "RemediationActionType"))
@@ -767,6 +812,7 @@ module Aws::FMS
767
812
 
768
813
  SecurityServicePolicyData.add_member(:type, Shapes::ShapeRef.new(shape: SecurityServiceType, required: true, location_name: "Type"))
769
814
  SecurityServicePolicyData.add_member(:managed_service_data, Shapes::ShapeRef.new(shape: ManagedServiceData, location_name: "ManagedServiceData"))
815
+ SecurityServicePolicyData.add_member(:policy_option, Shapes::ShapeRef.new(shape: PolicyOption, location_name: "PolicyOption"))
770
816
  SecurityServicePolicyData.struct_class = Types::SecurityServicePolicyData
771
817
 
772
818
  StatefulRuleGroup.add_member(:rule_group_name, Shapes::ShapeRef.new(shape: NetworkFirewallResourceName, location_name: "RuleGroupName"))
@@ -294,12 +294,18 @@ module Aws::FMS
294
294
  # [1]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html
295
295
  # @return [String]
296
296
  #
297
+ # @!attribute [rw] metadata
298
+ # Metadata about the resource that doesn't comply with the policy
299
+ # scope.
300
+ # @return [Hash<String,String>]
301
+ #
297
302
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ComplianceViolator AWS API Documentation
298
303
  #
299
304
  class ComplianceViolator < Struct.new(
300
305
  :resource_id,
301
306
  :violation_reason,
302
- :resource_type)
307
+ :resource_type,
308
+ :metadata)
303
309
  SENSITIVE = []
304
310
  include Aws::Structure
305
311
  end
@@ -810,6 +816,73 @@ module Aws::FMS
810
816
  include Aws::Structure
811
817
  end
812
818
 
819
+ # Contains information about the actions that you can take to remediate
820
+ # scope violations caused by your policy's `FirewallCreationConfig`.
821
+ # `FirewallCreationConfig` is an optional configuration that you can use
822
+ # to choose which Availability Zones Firewall Manager creates Network
823
+ # Firewall endpoints in.
824
+ #
825
+ # @!attribute [rw] description
826
+ # Describes the remedial action.
827
+ # @return [String]
828
+ #
829
+ # @!attribute [rw] firewall_creation_config
830
+ # A `FirewallCreationConfig` that you can copy into your current
831
+ # policy's [SecurityServiceData][1] in order to remedy scope
832
+ # violations.
833
+ #
834
+ #
835
+ #
836
+ # [1]: https://docs.aws.amazon.com/fms/2018-01-01/APIReference/API_SecurityServicePolicyData.html
837
+ # @return [String]
838
+ #
839
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/FMSPolicyUpdateFirewallCreationConfigAction AWS API Documentation
840
+ #
841
+ class FMSPolicyUpdateFirewallCreationConfigAction < Struct.new(
842
+ :description,
843
+ :firewall_creation_config)
844
+ SENSITIVE = []
845
+ include Aws::Structure
846
+ end
847
+
848
+ # Contains details about the firewall subnet that violates the policy
849
+ # scope.
850
+ #
851
+ # @!attribute [rw] firewall_subnet_id
852
+ # The ID of the firewall subnet that violates the policy scope.
853
+ # @return [String]
854
+ #
855
+ # @!attribute [rw] vpc_id
856
+ # The VPC ID of the firewall subnet that violates the policy scope.
857
+ # @return [String]
858
+ #
859
+ # @!attribute [rw] subnet_availability_zone
860
+ # The Availability Zone of the firewall subnet that violates the
861
+ # policy scope.
862
+ # @return [String]
863
+ #
864
+ # @!attribute [rw] subnet_availability_zone_id
865
+ # The Availability Zone ID of the firewall subnet that violates the
866
+ # policy scope.
867
+ # @return [String]
868
+ #
869
+ # @!attribute [rw] vpc_endpoint_id
870
+ # The VPC endpoint ID of the firewall subnet that violates the policy
871
+ # scope.
872
+ # @return [String]
873
+ #
874
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/FirewallSubnetIsOutOfScopeViolation AWS API Documentation
875
+ #
876
+ class FirewallSubnetIsOutOfScopeViolation < Struct.new(
877
+ :firewall_subnet_id,
878
+ :vpc_id,
879
+ :subnet_availability_zone,
880
+ :subnet_availability_zone_id,
881
+ :vpc_endpoint_id)
882
+ SENSITIVE = []
883
+ include Aws::Structure
884
+ end
885
+
813
886
  # @api private
814
887
  #
815
888
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/GetAdminAccountRequest AWS API Documentation
@@ -1940,6 +2013,39 @@ module Aws::FMS
1940
2013
  include Aws::Structure
1941
2014
  end
1942
2015
 
2016
+ # Configures the firewall policy deployment model of Network Firewall.
2017
+ # For information about Network Firewall deployment models, see [Network
2018
+ # Firewall example architectures with routing][1] in the *Network
2019
+ # Firewall Developer Guide*.
2020
+ #
2021
+ #
2022
+ #
2023
+ # [1]: https://docs.aws.amazon.com/network-firewall/latest/developerguide/architectures.html
2024
+ #
2025
+ # @note When making an API call, you may pass NetworkFirewallPolicy
2026
+ # data as a hash:
2027
+ #
2028
+ # {
2029
+ # firewall_deployment_model: "CENTRALIZED", # accepts CENTRALIZED
2030
+ # }
2031
+ #
2032
+ # @!attribute [rw] firewall_deployment_model
2033
+ # Defines the deployment model to use for the firewall policy. To use
2034
+ # a distributed model, set [PolicyOption][1] to `NULL`.
2035
+ #
2036
+ #
2037
+ #
2038
+ # [1]: https://docs.aws.amazon.com/fms/2018-01-01/APIReference/API_PolicyOption.html
2039
+ # @return [String]
2040
+ #
2041
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/NetworkFirewallPolicy AWS API Documentation
2042
+ #
2043
+ class NetworkFirewallPolicy < Struct.new(
2044
+ :firewall_deployment_model)
2045
+ SENSITIVE = []
2046
+ include Aws::Structure
2047
+ end
2048
+
1943
2049
  # The definition of the Network Firewall firewall policy.
1944
2050
  #
1945
2051
  # @!attribute [rw] stateless_rule_groups
@@ -2104,6 +2210,11 @@ module Aws::FMS
2104
2210
  # security_service_policy_data: { # required
2105
2211
  # type: "WAF", # required, accepts WAF, WAFV2, SHIELD_ADVANCED, SECURITY_GROUPS_COMMON, SECURITY_GROUPS_CONTENT_AUDIT, SECURITY_GROUPS_USAGE_AUDIT, NETWORK_FIREWALL, DNS_FIREWALL
2106
2212
  # managed_service_data: "ManagedServiceData",
2213
+ # policy_option: {
2214
+ # network_firewall_policy: {
2215
+ # firewall_deployment_model: "CENTRALIZED", # accepts CENTRALIZED
2216
+ # },
2217
+ # },
2107
2218
  # },
2108
2219
  # resource_type: "ResourceType", # required
2109
2220
  # resource_type_list: ["ResourceType"],
@@ -2152,8 +2263,9 @@ module Aws::FMS
2152
2263
  # specify a resource type of `ResourceTypeList` and then specify the
2153
2264
  # resource types in a `ResourceTypeList`.
2154
2265
  #
2155
- # For WAF and Shield Advanced, example resource types include
2156
- # `AWS::ElasticLoadBalancingV2::LoadBalancer` and
2266
+ # For WAF and Shield Advanced, resource types include
2267
+ # `AWS::ElasticLoadBalancingV2::LoadBalancer`,
2268
+ # `AWS::ElasticLoadBalancing::LoadBalancer`, `AWS::EC2::EIP`, and
2157
2269
  # `AWS::CloudFront::Distribution`. For a security group common policy,
2158
2270
  # valid values are `AWS::EC2::NetworkInterface` and
2159
2271
  # `AWS::EC2::Instance`. For a security group content audit policy,
@@ -2183,6 +2295,9 @@ module Aws::FMS
2183
2295
  # `ResourceTag` array are not in scope of the policy. If set to
2184
2296
  # `False`, and the `ResourceTag` array is not null, only resources
2185
2297
  # with the specified tags are in scope of the policy.
2298
+ #
2299
+ # This option isn't available for the centralized deployment model
2300
+ # when creating policies to configure Network Firewall.
2186
2301
  # @return [Boolean]
2187
2302
  #
2188
2303
  # @!attribute [rw] remediation_enabled
@@ -2191,10 +2306,16 @@ module Aws::FMS
2191
2306
  # @return [Boolean]
2192
2307
  #
2193
2308
  # @!attribute [rw] delete_unused_fm_managed_resources
2194
- # Indicates whether Firewall Manager should delete Firewall Manager
2195
- # managed resources, such as web ACLs and security groups, when they
2196
- # are not in use by the Firewall Manager policy. By default, Firewall
2197
- # Manager doesn't delete unused Firewall Manager managed resources.
2309
+ # Indicates whether Firewall Manager should automatically remove
2310
+ # protections from resources that leave the policy scope and clean up
2311
+ # resources that Firewall Manager is managing for accounts when those
2312
+ # accounts leave policy scope. For example, Firewall Manager will
2313
+ # disassociate a Firewall Manager managed web ACL from a protected
2314
+ # customer resource when the customer resource leaves policy scope.
2315
+ #
2316
+ # By default, Firewall Manager doesn't remove protections or delete
2317
+ # Firewall Manager managed resources.
2318
+ #
2198
2319
  # This option is not available for Shield Advanced or WAF Classic
2199
2320
  # policies.
2200
2321
  # @return [Boolean]
@@ -2227,6 +2348,9 @@ module Aws::FMS
2227
2348
  # a comma. For example, the following is a valid map: `\{“ACCOUNT” :
2228
2349
  # [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”,
2229
2350
  # “ouid112”]\}`.
2351
+ #
2352
+ # This option isn't available for the centralized deployment model
2353
+ # when creating policies to configure Network Firewall.
2230
2354
  # @return [Hash<String,Array<String>>]
2231
2355
  #
2232
2356
  # @!attribute [rw] exclude_map
@@ -2257,6 +2381,9 @@ module Aws::FMS
2257
2381
  # a comma. For example, the following is a valid map: `\{“ACCOUNT” :
2258
2382
  # [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”,
2259
2383
  # “ouid112”]\}`.
2384
+ #
2385
+ # This option isn't available for the centralized deployment model
2386
+ # when creating policies to configure Network Firewall.
2260
2387
  # @return [Hash<String,Array<String>>]
2261
2388
  #
2262
2389
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/Policy AWS API Documentation
@@ -2382,6 +2509,30 @@ module Aws::FMS
2382
2509
  include Aws::Structure
2383
2510
  end
2384
2511
 
2512
+ # Contains the Network Firewall firewall policy options to configure a
2513
+ # centralized deployment model.
2514
+ #
2515
+ # @note When making an API call, you may pass PolicyOption
2516
+ # data as a hash:
2517
+ #
2518
+ # {
2519
+ # network_firewall_policy: {
2520
+ # firewall_deployment_model: "CENTRALIZED", # accepts CENTRALIZED
2521
+ # },
2522
+ # }
2523
+ #
2524
+ # @!attribute [rw] network_firewall_policy
2525
+ # Defines the deployment model to use for the firewall policy.
2526
+ # @return [Types::NetworkFirewallPolicy]
2527
+ #
2528
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/PolicyOption AWS API Documentation
2529
+ #
2530
+ class PolicyOption < Struct.new(
2531
+ :network_firewall_policy)
2532
+ SENSITIVE = []
2533
+ include Aws::Structure
2534
+ end
2535
+
2385
2536
  # Details of the Firewall Manager policy.
2386
2537
  #
2387
2538
  # @!attribute [rw] policy_arn
@@ -2427,10 +2578,16 @@ module Aws::FMS
2427
2578
  # @return [Boolean]
2428
2579
  #
2429
2580
  # @!attribute [rw] delete_unused_fm_managed_resources
2430
- # Indicates whether Firewall Manager should delete Firewall Manager
2431
- # managed resources, such as web ACLs and security groups, when they
2432
- # are not in use by the Firewall Manager policy. By default, Firewall
2433
- # Manager doesn't delete unused Firewall Manager managed resources.
2581
+ # Indicates whether Firewall Manager should automatically remove
2582
+ # protections from resources that leave the policy scope and clean up
2583
+ # resources that Firewall Manager is managing for accounts when those
2584
+ # accounts leave policy scope. For example, Firewall Manager will
2585
+ # disassociate a Firewall Manager managed web ACL from a protected
2586
+ # customer resource when the customer resource leaves policy scope.
2587
+ #
2588
+ # By default, Firewall Manager doesn't remove protections or delete
2589
+ # Firewall Manager managed resources.
2590
+ #
2434
2591
  # This option is not available for Shield Advanced or WAF Classic
2435
2592
  # policies.
2436
2593
  # @return [Boolean]
@@ -2692,6 +2849,11 @@ module Aws::FMS
2692
2849
  # security_service_policy_data: { # required
2693
2850
  # type: "WAF", # required, accepts WAF, WAFV2, SHIELD_ADVANCED, SECURITY_GROUPS_COMMON, SECURITY_GROUPS_CONTENT_AUDIT, SECURITY_GROUPS_USAGE_AUDIT, NETWORK_FIREWALL, DNS_FIREWALL
2694
2851
  # managed_service_data: "ManagedServiceData",
2852
+ # policy_option: {
2853
+ # network_firewall_policy: {
2854
+ # firewall_deployment_model: "CENTRALIZED", # accepts CENTRALIZED
2855
+ # },
2856
+ # },
2695
2857
  # },
2696
2858
  # resource_type: "ResourceType", # required
2697
2859
  # resource_type_list: ["ResourceType"],
@@ -2847,6 +3009,10 @@ module Aws::FMS
2847
3009
  # Information about the CreateRouteTable action in the Amazon EC2 API.
2848
3010
  # @return [Types::EC2CreateRouteTableAction]
2849
3011
  #
3012
+ # @!attribute [rw] fms_policy_update_firewall_creation_config_action
3013
+ # The remedial action to take when updating a firewall configuration.
3014
+ # @return [Types::FMSPolicyUpdateFirewallCreationConfigAction]
3015
+ #
2850
3016
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/RemediationAction AWS API Documentation
2851
3017
  #
2852
3018
  class RemediationAction < Struct.new(
@@ -2857,7 +3023,8 @@ module Aws::FMS
2857
3023
  :ec2_copy_route_table_action,
2858
3024
  :ec2_replace_route_table_association_action,
2859
3025
  :ec2_associate_route_table_action,
2860
- :ec2_create_route_table_action)
3026
+ :ec2_create_route_table_action,
3027
+ :fms_policy_update_firewall_creation_config_action)
2861
3028
  SENSITIVE = []
2862
3029
  include Aws::Structure
2863
3030
  end
@@ -3024,6 +3191,16 @@ module Aws::FMS
3024
3191
  # actions.
3025
3192
  # @return [Types::PossibleRemediationActions]
3026
3193
  #
3194
+ # @!attribute [rw] firewall_subnet_is_out_of_scope_violation
3195
+ # Contains details about the firewall subnet that violates the policy
3196
+ # scope.
3197
+ # @return [Types::FirewallSubnetIsOutOfScopeViolation]
3198
+ #
3199
+ # @!attribute [rw] route_has_out_of_scope_endpoint_violation
3200
+ # Contains details about the route endpoint that violates the policy
3201
+ # scope.
3202
+ # @return [Types::RouteHasOutOfScopeEndpointViolation]
3203
+ #
3027
3204
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ResourceViolation AWS API Documentation
3028
3205
  #
3029
3206
  class ResourceViolation < Struct.new(
@@ -3043,7 +3220,9 @@ module Aws::FMS
3043
3220
  :dns_rule_group_priority_conflict_violation,
3044
3221
  :dns_duplicate_rule_group_violation,
3045
3222
  :dns_rule_group_limit_exceeded_violation,
3046
- :possible_remediation_actions)
3223
+ :possible_remediation_actions,
3224
+ :firewall_subnet_is_out_of_scope_violation,
3225
+ :route_has_out_of_scope_endpoint_violation)
3047
3226
  SENSITIVE = []
3048
3227
  include Aws::Structure
3049
3228
  end
@@ -3077,6 +3256,77 @@ module Aws::FMS
3077
3256
  include Aws::Structure
3078
3257
  end
3079
3258
 
3259
+ # Contains details about the route endpoint that violates the policy
3260
+ # scope.
3261
+ #
3262
+ # @!attribute [rw] subnet_id
3263
+ # The ID of the subnet associated with the route that violates the
3264
+ # policy scope.
3265
+ # @return [String]
3266
+ #
3267
+ # @!attribute [rw] vpc_id
3268
+ # The VPC ID of the route that violates the policy scope.
3269
+ # @return [String]
3270
+ #
3271
+ # @!attribute [rw] route_table_id
3272
+ # The ID of the route table.
3273
+ # @return [String]
3274
+ #
3275
+ # @!attribute [rw] violating_routes
3276
+ # The list of routes that violate the route table.
3277
+ # @return [Array<Types::Route>]
3278
+ #
3279
+ # @!attribute [rw] subnet_availability_zone
3280
+ # The subnet's Availability Zone.
3281
+ # @return [String]
3282
+ #
3283
+ # @!attribute [rw] subnet_availability_zone_id
3284
+ # The ID of the subnet's Availability Zone.
3285
+ # @return [String]
3286
+ #
3287
+ # @!attribute [rw] current_firewall_subnet_route_table
3288
+ # The route table associated with the current firewall subnet.
3289
+ # @return [String]
3290
+ #
3291
+ # @!attribute [rw] firewall_subnet_id
3292
+ # The ID of the firewall subnet.
3293
+ # @return [String]
3294
+ #
3295
+ # @!attribute [rw] firewall_subnet_routes
3296
+ # The list of firewall subnet routes.
3297
+ # @return [Array<Types::Route>]
3298
+ #
3299
+ # @!attribute [rw] internet_gateway_id
3300
+ # The ID of the Internet Gateway.
3301
+ # @return [String]
3302
+ #
3303
+ # @!attribute [rw] current_internet_gateway_route_table
3304
+ # The current route table associated with the Internet Gateway.
3305
+ # @return [String]
3306
+ #
3307
+ # @!attribute [rw] internet_gateway_routes
3308
+ # The routes in the route table associated with the Internet Gateway.
3309
+ # @return [Array<Types::Route>]
3310
+ #
3311
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/RouteHasOutOfScopeEndpointViolation AWS API Documentation
3312
+ #
3313
+ class RouteHasOutOfScopeEndpointViolation < Struct.new(
3314
+ :subnet_id,
3315
+ :vpc_id,
3316
+ :route_table_id,
3317
+ :violating_routes,
3318
+ :subnet_availability_zone,
3319
+ :subnet_availability_zone_id,
3320
+ :current_firewall_subnet_route_table,
3321
+ :firewall_subnet_id,
3322
+ :firewall_subnet_routes,
3323
+ :internet_gateway_id,
3324
+ :current_internet_gateway_route_table,
3325
+ :internet_gateway_routes)
3326
+ SENSITIVE = []
3327
+ include Aws::Structure
3328
+ end
3329
+
3080
3330
  # Remediation option for the rule specified in the `ViolationTarget`.
3081
3331
  #
3082
3332
  # @!attribute [rw] remediation_action_type
@@ -3158,6 +3408,11 @@ module Aws::FMS
3158
3408
  # {
3159
3409
  # type: "WAF", # required, accepts WAF, WAFV2, SHIELD_ADVANCED, SECURITY_GROUPS_COMMON, SECURITY_GROUPS_CONTENT_AUDIT, SECURITY_GROUPS_USAGE_AUDIT, NETWORK_FIREWALL, DNS_FIREWALL
3160
3410
  # managed_service_data: "ManagedServiceData",
3411
+ # policy_option: {
3412
+ # network_firewall_policy: {
3413
+ # firewall_deployment_model: "CENTRALIZED", # accepts CENTRALIZED
3414
+ # },
3415
+ # },
3161
3416
  # }
3162
3417
  #
3163
3418
  # @!attribute [rw] type
@@ -3172,8 +3427,7 @@ module Aws::FMS
3172
3427
  #
3173
3428
  # @!attribute [rw] managed_service_data
3174
3429
  # Details about the service that are specific to the service type, in
3175
- # JSON format. For service type `SHIELD_ADVANCED`, this is an empty
3176
- # string.
3430
+ # JSON format.
3177
3431
  #
3178
3432
  # * Example: `DNS_FIREWALL`
3179
3433
  #
@@ -3185,11 +3439,177 @@ module Aws::FMS
3185
3439
  #
3186
3440
  # </note>
3187
3441
  #
3188
- # * Example: `NETWORK_FIREWALL`
3442
+ # * Example: `NETWORK_FIREWALL` - Centralized deployment model.
3443
+ #
3444
+ # `"\{"type":"NETWORK_FIREWALL","awsNetworkFirewallConfig":\{"networkFirewallStatelessRuleGroupReferences":[\{"resourceARN":"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test","priority":1\}],"networkFirewallStatelessDefaultActions":["aws:forward_to_sfe","customActionName"],"networkFirewallStatelessFragmentDefaultActions":["aws:forward_to_sfe","customActionName"],"networkFirewallStatelessCustomActions":[\{"actionName":"customActionName","actionDefinition":\{"publishMetricAction":\{"dimensions":[\{"value":"metricdimensionvalue"\}]\}\}\}],"networkFirewallStatefulRuleGroupReferences":[\{"resourceARN":"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test"\}],"networkFirewallLoggingConfiguration":\{"logDestinationConfigs":[\{"logDestinationType":"S3","logType":"ALERT","logDestination":\{"bucketName":"s3-bucket-name"\}\},\{"logDestinationType":"S3","logType":"FLOW","logDestination":\{"bucketName":"s3-bucket-name"\}\}],"overrideExistingConfig":true\}\},"firewallDeploymentModel":\{"centralizedFirewallDeploymentModel":\{"centralizedFirewallOrchestrationConfig":\{"inspectionVpcIds":[\{"resourceId":"vpc-1234","accountId":"123456789011"\}],"firewallCreationConfig":\{"endpointLocation":\{"availabilityZoneConfigList":[\{"availabilityZoneId":null,"availabilityZoneName":"us-east-1a","allowedIPV4CidrList":["10.0.0.0/28"]\}]\}\},"allowedIPV4CidrList":[]\}\}\}\}"`
3445
+ #
3446
+ # To use the centralized deployment model, you must set
3447
+ # [PolicyOption][1] to `CENTRALIZED`.
3448
+ #
3449
+ # * Example: `NETWORK_FIREWALL` - Distributed deployment model with
3450
+ # automatic Availability Zone configuration. With automatic
3451
+ # Availbility Zone configuration, Firewall Manager chooses which
3452
+ # Availability Zones to create the endpoints in.
3453
+ #
3454
+ # `"\{ "type": "NETWORK_FIREWALL",
3455
+ # "networkFirewallStatelessRuleGroupReferences": [ \{
3456
+ # "resourceARN":
3457
+ # "arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test",
3458
+ # "priority": 1 \} ], "networkFirewallStatelessDefaultActions":
3459
+ # [ "aws:forward_to_sfe", "customActionName" ],
3460
+ # "networkFirewallStatelessFragmentDefaultActions": [
3461
+ # "aws:forward_to_sfe", "customActionName" ],
3462
+ # "networkFirewallStatelessCustomActions": [ \{ "actionName":
3463
+ # "customActionName", "actionDefinition": \{
3464
+ # "publishMetricAction": \{ "dimensions": [ \{ "value":
3465
+ # "metricdimensionvalue" \} ] \} \} \} ],
3466
+ # "networkFirewallStatefulRuleGroupReferences": [ \{
3467
+ # "resourceARN":
3468
+ # "arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test"
3469
+ # \} ], "networkFirewallOrchestrationConfig": \{
3470
+ # "singleFirewallEndpointPerVPC": false, "allowedIPV4CidrList":
3471
+ # [ "10.0.0.0/28", "192.168.0.0/28" ],
3472
+ # "routeManagementAction": "OFF" \},
3473
+ # "networkFirewallLoggingConfiguration": \{
3474
+ # "logDestinationConfigs": [ \{ "logDestinationType": "S3",
3475
+ # "logType": "ALERT", "logDestination": \{ "bucketName":
3476
+ # "s3-bucket-name" \} \}, \{ "logDestinationType": "S3",
3477
+ # "logType": "FLOW", "logDestination": \{ "bucketName":
3478
+ # "s3-bucket-name" \} \} ], "overrideExistingConfig": true \}
3479
+ # \}"`
3189
3480
  #
3190
- # `"\{"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"]\}
3481
+ # To use the distributed deployment model, you must set
3482
+ # [PolicyOption][1] to `NULL`.
3483
+ #
3484
+ # * Example: `NETWORK_FIREWALL` - Distributed deployment model with
3485
+ # automatic Availability Zone configuration, and route management.
3486
+ #
3487
+ # `"\{ "type": "NETWORK_FIREWALL",
3488
+ # "networkFirewallStatelessRuleGroupReferences": [ \{
3489
+ # "resourceARN":
3490
+ # "arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test",
3491
+ # "priority": 1 \} ], "networkFirewallStatelessDefaultActions":
3492
+ # [ "aws:forward_to_sfe", "customActionName" ],
3493
+ # "networkFirewallStatelessFragmentDefaultActions": [
3494
+ # "aws:forward_to_sfe", "customActionName" ],
3495
+ # "networkFirewallStatelessCustomActions": [ \{ "actionName":
3496
+ # "customActionName", "actionDefinition": \{
3497
+ # "publishMetricAction": \{ "dimensions": [ \{ "value":
3498
+ # "metricdimensionvalue" \} ] \} \} \} ],
3499
+ # "networkFirewallStatefulRuleGroupReferences": [ \{
3500
+ # "resourceARN":
3501
+ # "arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test"
3502
+ # \} ], "networkFirewallOrchestrationConfig": \{
3503
+ # "singleFirewallEndpointPerVPC": false, "allowedIPV4CidrList":
3504
+ # [ "10.0.0.0/28", "192.168.0.0/28" ],
3505
+ # "routeManagementAction": "MONITOR",
3506
+ # "routeManagementTargetTypes": [ "InternetGateway" ] \},
3507
+ # "networkFirewallLoggingConfiguration": \{
3508
+ # "logDestinationConfigs": [ \{ "logDestinationType": "S3",
3509
+ # "logType": "ALERT", "logDestination": \{ "bucketName":
3510
+ # "s3-bucket-name" \} \}, \{ "logDestinationType": "S3",
3511
+ # "logType": "FLOW", "logDestination": \{ "bucketName":
3512
+ # "s3-bucket-name" \} \} ], "overrideExistingConfig": true \}
3191
3513
  # \}"`
3192
3514
  #
3515
+ # * Example: `NETWORK_FIREWALL` - Distributed deployment model with
3516
+ # custom Availability Zone configuration. With custom Availability
3517
+ # Zone configuration, you define which specific Availability Zones
3518
+ # to create endpoints in by configuring `firewallCreationConfig`.
3519
+ #
3520
+ # `"\{
3521
+ # "type":"NETWORK_FIREWALL","networkFirewallStatelessRuleGroupReferences":[\{"resourceARN":"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test","priority":1\}],
3522
+ # "networkFirewallStatelessDefaultActions":[
3523
+ # "aws:forward_to_sfe", "customActionName" ],
3524
+ # "networkFirewallStatelessFragmentDefaultActions":[
3525
+ # "aws:forward_to_sfe", "fragmentcustomactionname" ],
3526
+ # "networkFirewallStatelessCustomActions":[ \{
3527
+ # "actionName":"customActionName", "actionDefinition":\{
3528
+ # "publishMetricAction":\{ "dimensions":[ \{
3529
+ # "value":"metricdimensionvalue" \} ] \} \} \}, \{
3530
+ # "actionName":"fragmentcustomactionname",
3531
+ # "actionDefinition":\{ "publishMetricAction":\{
3532
+ # "dimensions":[ \{ "value":"fragmentmetricdimensionvalue" \}
3533
+ # ] \} \} \} ], "networkFirewallStatefulRuleGroupReferences":[ \{
3534
+ # "resourceARN":"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test"
3535
+ # \} ], "networkFirewallOrchestrationConfig":\{
3536
+ # "firewallCreationConfig":\{ "endpointLocation":\{
3537
+ # "availabilityZoneConfigList":[ \{ "availabilityZoneId":null,
3538
+ # "availabilityZoneName":"us-east-1a", "allowedIPV4CidrList":[
3539
+ # "10.0.0.0/28" ] \}, \{ ¯"availabilityZoneId":null,
3540
+ # "availabilityZoneName":"us-east-1b", "allowedIPV4CidrList":[
3541
+ # "10.0.0.0/28" ] \} ] \} \},
3542
+ # "singleFirewallEndpointPerVPC":false,
3543
+ # "allowedIPV4CidrList":null, "routeManagementAction":"OFF",
3544
+ # "networkFirewallLoggingConfiguration":\{
3545
+ # "logDestinationConfigs":[ \{ "logDestinationType":"S3",
3546
+ # "logType":"ALERT", "logDestination":\{
3547
+ # "bucketName":"s3-bucket-name" \} \}, \{
3548
+ # "logDestinationType":"S3", "logType":"FLOW",
3549
+ # "logDestination":\{ "bucketName":"s3-bucket-name" \} \} ],
3550
+ # "overrideExistingConfig":boolean \} \}"`
3551
+ #
3552
+ # * Example: `NETWORK_FIREWALL` - Distributed deployment model with
3553
+ # custom Availability Zone configuration, and route management.
3554
+ #
3555
+ # `"\{
3556
+ # "type":"NETWORK_FIREWALL","networkFirewallStatelessRuleGroupReferences":[\{"resourceARN":"arn:aws:network-firewall:us-east-1:123456789011:stateless-rulegroup/test","priority":1\}],
3557
+ # "networkFirewallStatelessDefaultActions":[
3558
+ # "aws:forward_to_sfe", "customActionName" ],
3559
+ # "networkFirewallStatelessFragmentDefaultActions":[
3560
+ # "aws:forward_to_sfe", "fragmentcustomactionname" ],
3561
+ # "networkFirewallStatelessCustomActions":[ \{
3562
+ # "actionName":"customActionName", "actionDefinition":\{
3563
+ # "publishMetricAction":\{ "dimensions":[ \{
3564
+ # "value":"metricdimensionvalue" \} ] \} \} \}, \{
3565
+ # "actionName":"fragmentcustomactionname",
3566
+ # "actionDefinition":\{ "publishMetricAction":\{
3567
+ # "dimensions":[ \{ "value":"fragmentmetricdimensionvalue" \}
3568
+ # ] \} \} \} ], "networkFirewallStatefulRuleGroupReferences":[ \{
3569
+ # "resourceARN":"arn:aws:network-firewall:us-east-1:123456789011:stateful-rulegroup/test"
3570
+ # \} ], "networkFirewallOrchestrationConfig":\{
3571
+ # "firewallCreationConfig":\{ "endpointLocation":\{
3572
+ # "availabilityZoneConfigList":[ \{ "availabilityZoneId":null,
3573
+ # "availabilityZoneName":"us-east-1a", "allowedIPV4CidrList":[
3574
+ # "10.0.0.0/28" ] \}, \{ ¯"availabilityZoneId":null,
3575
+ # "availabilityZoneName":"us-east-1b", "allowedIPV4CidrList":[
3576
+ # "10.0.0.0/28" ] \} ] \} \},
3577
+ # "singleFirewallEndpointPerVPC":false,
3578
+ # "allowedIPV4CidrList":null,
3579
+ # "routeManagementAction":"MONITOR",
3580
+ # "routeManagementTargetTypes":[ "InternetGateway" ],
3581
+ # "routeManagementConfig":\{
3582
+ # "allowCrossAZTrafficIfNoEndpoint":true \} \},
3583
+ # "networkFirewallLoggingConfiguration":\{
3584
+ # "logDestinationConfigs":[ \{ "logDestinationType":"S3",
3585
+ # "logType":"ALERT", "logDestination":\{
3586
+ # "bucketName":"s3-bucket-name" \} \}, \{
3587
+ # "logDestinationType":"S3", "logType":"FLOW",
3588
+ # "logDestination":\{ "bucketName":"s3-bucket-name" \} \} ],
3589
+ # "overrideExistingConfig":boolean \} \}"`
3590
+ #
3591
+ # * Specification for `SHIELD_ADVANCED` for Amazon CloudFront
3592
+ # distributions
3593
+ #
3594
+ # `"\{"type":"SHIELD_ADVANCED","automaticResponseConfiguration":
3595
+ # \{"automaticResponseStatus":"ENABLED|IGNORED|DISABLED",
3596
+ # "automaticResponseAction":"BLOCK|COUNT"\},
3597
+ # "overrideCustomerWebaclClassic":true|false\}"`
3598
+ #
3599
+ # For example:
3600
+ # `"\{"type":"SHIELD_ADVANCED","automaticResponseConfiguration":
3601
+ # \{"automaticResponseStatus":"ENABLED",
3602
+ # "automaticResponseAction":"COUNT"\}\}"`
3603
+ #
3604
+ # The default value for `automaticResponseStatus` is `IGNORED`. The
3605
+ # value for `automaticResponseAction` is only required when
3606
+ # `automaticResponseStatus` is set to `ENABLED`. The default value
3607
+ # for `overrideCustomerWebaclClassic` is `false`.
3608
+ #
3609
+ # For other resource types that you can protect with a Shield
3610
+ # Advanced policy, this `ManagedServiceData` configuration is an
3611
+ # empty string.
3612
+ #
3193
3613
  # * Example: `WAFV2`
3194
3614
  #
3195
3615
  # `"\{"type":"WAFV2","preProcessRuleGroups":[\{"ruleGroupArn":null,"overrideAction":\{"type":"NONE"\},"managedRuleGroupIdentifier":\{"version":null,"vendorName":"AWS","managedRuleGroupName":"AWSManagedRulesAmazonIpReputationList"\},"ruleGroupType":"ManagedRuleGroup","excludeRules":[\{"name":"NoUserAgent_HEADER"\}]\}],"postProcessRuleGroups":[],"defaultAction":\{"type":"ALLOW"\},"overrideCustomerWebACLAssociation":false,"loggingConfiguration":\{"logDestinationConfigs":["arn:aws:firehose:us-west-2:12345678912:deliverystream/aws-waf-logs-fms-admin-destination"],"redactedFields":[\{"redactedFieldType":"SingleHeader","redactedFieldValue":"Cookies"\},\{"redactedFieldType":"Method"\}]\}\}"`
@@ -3233,13 +3653,23 @@ module Aws::FMS
3233
3653
  # * Example: `SECURITY_GROUPS_USAGE_AUDIT`
3234
3654
  #
3235
3655
  # `"\{"type":"SECURITY_GROUPS_USAGE_AUDIT","deleteUnusedSecurityGroups":true,"coalesceRedundantSecurityGroups":true\}"`
3656
+ #
3657
+ #
3658
+ #
3659
+ # [1]: https://docs.aws.amazon.com/fms/2018-01-01/APIReference/API_PolicyOption.html
3236
3660
  # @return [String]
3237
3661
  #
3662
+ # @!attribute [rw] policy_option
3663
+ # Contains the Network Firewall firewall policy options to configure a
3664
+ # centralized deployment model.
3665
+ # @return [Types::PolicyOption]
3666
+ #
3238
3667
  # @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/SecurityServicePolicyData AWS API Documentation
3239
3668
  #
3240
3669
  class SecurityServicePolicyData < Struct.new(
3241
3670
  :type,
3242
- :managed_service_data)
3671
+ :managed_service_data,
3672
+ :policy_option)
3243
3673
  SENSITIVE = []
3244
3674
  include Aws::Structure
3245
3675
  end
@@ -3421,6 +3851,9 @@ module Aws::FMS
3421
3851
  #
3422
3852
  # @!attribute [rw] resource_tags
3423
3853
  # The `ResourceTag` objects associated with the resource.
3854
+ #
3855
+ # This option isn't available for the centralized deployment model
3856
+ # when creating policies to configure Network Firewall.
3424
3857
  # @return [Array<Types::Tag>]
3425
3858
  #
3426
3859
  # @!attribute [rw] resource_description
data/lib/aws-sdk-fms.rb CHANGED
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-fms/customizations'
48
48
  # @!group service
49
49
  module Aws::FMS
50
50
 
51
- GEM_VERSION = '1.45.0'
51
+ GEM_VERSION = '1.48.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-fms
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.45.0
4
+ version: 1.48.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-12-21 00:00:00.000000000 Z
11
+ date: 2022-02-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.125.0
22
+ version: 3.127.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.125.0
32
+ version: 3.127.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement