aws-sdk-fms 1.32.0 → 1.33.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/aws-sdk-fms.rb +1 -1
- data/lib/aws-sdk-fms/client.rb +72 -13
- data/lib/aws-sdk-fms/client_api.rb +65 -0
- data/lib/aws-sdk-fms/types.rb +275 -22
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: db4d701077981c960c71223fdd45be041e1f894c48223bb2cbe7e81c050a1a87
|
4
|
+
data.tar.gz: 58c0a54e63917e0abb207951b7cf72d9854b4aa3704da1cc65d82a7ca79e33d9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 55c07a19e2009d812925576000d529d088c67d66e0a541b9558c8ca7686886d7d9200b6328495c74943211feddc60361f478525d4cfc9c28b48175bca3c1063d
|
7
|
+
data.tar.gz: 2183267a9b5331b8c378bcf7d680900e62461ae47628e3a0e86c62383bb9b22bdbf789cd6506709e07f42dac8463d9f6fb36d745ee3cd9ae9b50e1426a3d3875
|
data/lib/aws-sdk-fms.rb
CHANGED
data/lib/aws-sdk-fms/client.rb
CHANGED
@@ -587,7 +587,12 @@ module Aws::FMS
|
|
587
587
|
# been applied to them. Resources are considered noncompliant for
|
588
588
|
# security group policies if they are in scope of the policy, they
|
589
589
|
# violate one or more of the policy rules, and remediation is disabled
|
590
|
-
# or not possible.
|
590
|
+
# or not possible. Resources are considered noncompliant for Network
|
591
|
+
# Firewall policies if a firewall is missing in the VPC, if the firewall
|
592
|
+
# endpoint isn't set up in an expected Availability Zone and subnet, if
|
593
|
+
# a subnet created by the Firewall Manager doesn't have the expected
|
594
|
+
# route table, and for modifications to a firewall policy that violate
|
595
|
+
# the Firewall Manager policy's rules.
|
591
596
|
#
|
592
597
|
# @option params [required, String] :policy_id
|
593
598
|
# The ID of the policy that you want to get the details for. `PolicyId`
|
@@ -615,7 +620,7 @@ module Aws::FMS
|
|
615
620
|
# resp.policy_compliance_detail.member_account #=> String
|
616
621
|
# resp.policy_compliance_detail.violators #=> Array
|
617
622
|
# resp.policy_compliance_detail.violators[0].resource_id #=> String
|
618
|
-
# 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"
|
623
|
+
# 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", "MISSING_FIREWALL", "MISSING_FIREWALL_SUBNET_IN_AZ", "MISSING_EXPECTED_ROUTE_TABLE", "NETWORK_FIREWALL_POLICY_MODIFIED"
|
619
624
|
# resp.policy_compliance_detail.violators[0].resource_type #=> String
|
620
625
|
# resp.policy_compliance_detail.evaluation_limit_exceeded #=> Boolean
|
621
626
|
# resp.policy_compliance_detail.expired_at #=> Time
|
@@ -675,7 +680,7 @@ module Aws::FMS
|
|
675
680
|
# resp.policy.policy_id #=> String
|
676
681
|
# resp.policy.policy_name #=> String
|
677
682
|
# resp.policy.policy_update_token #=> String
|
678
|
-
# 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"
|
683
|
+
# 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"
|
679
684
|
# resp.policy.security_service_policy_data.managed_service_data #=> String
|
680
685
|
# resp.policy.resource_type #=> String
|
681
686
|
# resp.policy.resource_type_list #=> Array
|
@@ -761,7 +766,7 @@ module Aws::FMS
|
|
761
766
|
# @example Response structure
|
762
767
|
#
|
763
768
|
# resp.admin_account_id #=> String
|
764
|
-
# resp.service_type #=> String, one of "WAF", "WAFV2", "SHIELD_ADVANCED", "SECURITY_GROUPS_COMMON", "SECURITY_GROUPS_CONTENT_AUDIT", "SECURITY_GROUPS_USAGE_AUDIT"
|
769
|
+
# resp.service_type #=> String, one of "WAF", "WAFV2", "SHIELD_ADVANCED", "SECURITY_GROUPS_COMMON", "SECURITY_GROUPS_CONTENT_AUDIT", "SECURITY_GROUPS_USAGE_AUDIT", "NETWORK_FIREWALL"
|
765
770
|
# resp.data #=> String
|
766
771
|
# resp.next_token #=> String
|
767
772
|
#
|
@@ -837,8 +842,9 @@ module Aws::FMS
|
|
837
842
|
# @option params [required, String] :resource_type
|
838
843
|
# The resource type. This is in the format shown in the [AWS Resource
|
839
844
|
# Types Reference][1]. Supported resource types are:
|
840
|
-
# `AWS::EC2::Instance`, `AWS::EC2::NetworkInterface`,
|
841
|
-
# `AWS::EC2::SecurityGroup
|
845
|
+
# `AWS::EC2::Instance`, `AWS::EC2::NetworkInterface`,
|
846
|
+
# `AWS::EC2::SecurityGroup`, `AWS::NetworkFirewall::FirewallPolicy`, and
|
847
|
+
# `AWS::EC2::Subnet`.
|
842
848
|
#
|
843
849
|
#
|
844
850
|
#
|
@@ -888,6 +894,46 @@ module Aws::FMS
|
|
888
894
|
# resp.violation_detail.resource_violations[0].aws_ec2_instance_violation.aws_ec2_network_interface_violations[0].violation_target #=> String
|
889
895
|
# resp.violation_detail.resource_violations[0].aws_ec2_instance_violation.aws_ec2_network_interface_violations[0].violating_security_groups #=> Array
|
890
896
|
# resp.violation_detail.resource_violations[0].aws_ec2_instance_violation.aws_ec2_network_interface_violations[0].violating_security_groups[0] #=> String
|
897
|
+
# resp.violation_detail.resource_violations[0].network_firewall_missing_firewall_violation.violation_target #=> String
|
898
|
+
# resp.violation_detail.resource_violations[0].network_firewall_missing_firewall_violation.vpc #=> String
|
899
|
+
# resp.violation_detail.resource_violations[0].network_firewall_missing_firewall_violation.availability_zone #=> String
|
900
|
+
# resp.violation_detail.resource_violations[0].network_firewall_missing_firewall_violation.target_violation_reason #=> String
|
901
|
+
# resp.violation_detail.resource_violations[0].network_firewall_missing_subnet_violation.violation_target #=> String
|
902
|
+
# resp.violation_detail.resource_violations[0].network_firewall_missing_subnet_violation.vpc #=> String
|
903
|
+
# resp.violation_detail.resource_violations[0].network_firewall_missing_subnet_violation.availability_zone #=> String
|
904
|
+
# resp.violation_detail.resource_violations[0].network_firewall_missing_subnet_violation.target_violation_reason #=> String
|
905
|
+
# resp.violation_detail.resource_violations[0].network_firewall_missing_expected_rt_violation.violation_target #=> String
|
906
|
+
# resp.violation_detail.resource_violations[0].network_firewall_missing_expected_rt_violation.vpc #=> String
|
907
|
+
# resp.violation_detail.resource_violations[0].network_firewall_missing_expected_rt_violation.availability_zone #=> String
|
908
|
+
# resp.violation_detail.resource_violations[0].network_firewall_missing_expected_rt_violation.current_route_table #=> String
|
909
|
+
# resp.violation_detail.resource_violations[0].network_firewall_missing_expected_rt_violation.expected_route_table #=> String
|
910
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.violation_target #=> String
|
911
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.current_policy_description.stateless_rule_groups #=> Array
|
912
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.current_policy_description.stateless_rule_groups[0].rule_group_name #=> String
|
913
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.current_policy_description.stateless_rule_groups[0].resource_id #=> String
|
914
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.current_policy_description.stateless_rule_groups[0].priority #=> Integer
|
915
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.current_policy_description.stateless_default_actions #=> Array
|
916
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.current_policy_description.stateless_default_actions[0] #=> String
|
917
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.current_policy_description.stateless_fragment_default_actions #=> Array
|
918
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.current_policy_description.stateless_fragment_default_actions[0] #=> String
|
919
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.current_policy_description.stateless_custom_actions #=> Array
|
920
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.current_policy_description.stateless_custom_actions[0] #=> String
|
921
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.current_policy_description.stateful_rule_groups #=> Array
|
922
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.current_policy_description.stateful_rule_groups[0].rule_group_name #=> String
|
923
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.current_policy_description.stateful_rule_groups[0].resource_id #=> String
|
924
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.expected_policy_description.stateless_rule_groups #=> Array
|
925
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.expected_policy_description.stateless_rule_groups[0].rule_group_name #=> String
|
926
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.expected_policy_description.stateless_rule_groups[0].resource_id #=> String
|
927
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.expected_policy_description.stateless_rule_groups[0].priority #=> Integer
|
928
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.expected_policy_description.stateless_default_actions #=> Array
|
929
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.expected_policy_description.stateless_default_actions[0] #=> String
|
930
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.expected_policy_description.stateless_fragment_default_actions #=> Array
|
931
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.expected_policy_description.stateless_fragment_default_actions[0] #=> String
|
932
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.expected_policy_description.stateless_custom_actions #=> Array
|
933
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.expected_policy_description.stateless_custom_actions[0] #=> String
|
934
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.expected_policy_description.stateful_rule_groups #=> Array
|
935
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.expected_policy_description.stateful_rule_groups[0].rule_group_name #=> String
|
936
|
+
# resp.violation_detail.resource_violations[0].network_firewall_policy_modified_violation.expected_policy_description.stateful_rule_groups[0].resource_id #=> String
|
891
937
|
# resp.violation_detail.resource_tags #=> Array
|
892
938
|
# resp.violation_detail.resource_tags[0].key #=> String
|
893
939
|
# resp.violation_detail.resource_tags[0].value #=> String
|
@@ -1113,7 +1159,7 @@ module Aws::FMS
|
|
1113
1159
|
# resp.policy_list[0].policy_id #=> String
|
1114
1160
|
# resp.policy_list[0].policy_name #=> String
|
1115
1161
|
# resp.policy_list[0].resource_type #=> String
|
1116
|
-
# resp.policy_list[0].security_service_type #=> String, one of "WAF", "WAFV2", "SHIELD_ADVANCED", "SECURITY_GROUPS_COMMON", "SECURITY_GROUPS_CONTENT_AUDIT", "SECURITY_GROUPS_USAGE_AUDIT"
|
1162
|
+
# resp.policy_list[0].security_service_type #=> String, one of "WAF", "WAFV2", "SHIELD_ADVANCED", "SECURITY_GROUPS_COMMON", "SECURITY_GROUPS_CONTENT_AUDIT", "SECURITY_GROUPS_USAGE_AUDIT", "NETWORK_FIREWALL"
|
1117
1163
|
# resp.policy_list[0].remediation_enabled #=> Boolean
|
1118
1164
|
# resp.next_token #=> String
|
1119
1165
|
#
|
@@ -1290,6 +1336,16 @@ module Aws::FMS
|
|
1290
1336
|
# Designates the IAM role and Amazon Simple Notification Service (SNS)
|
1291
1337
|
# topic that AWS Firewall Manager uses to record SNS logs.
|
1292
1338
|
#
|
1339
|
+
# To perform this action outside of the console, you must configure the
|
1340
|
+
# SNS topic to allow the Firewall Manager role `AWSServiceRoleForFMS` to
|
1341
|
+
# publish SNS logs. For more information, see [Firewall Manager required
|
1342
|
+
# permissions for API actions][1] in the *AWS Firewall Manager Developer
|
1343
|
+
# Guide*.
|
1344
|
+
#
|
1345
|
+
#
|
1346
|
+
#
|
1347
|
+
# [1]: https://docs.aws.amazon.com/waf/latest/developerguide/fms-api-permissions-ref.html
|
1348
|
+
#
|
1293
1349
|
# @option params [required, String] :sns_topic_arn
|
1294
1350
|
# The Amazon Resource Name (ARN) of the SNS topic that collects
|
1295
1351
|
# notifications from AWS Firewall Manager.
|
@@ -1320,18 +1376,21 @@ module Aws::FMS
|
|
1320
1376
|
#
|
1321
1377
|
# Firewall Manager provides the following types of policies:
|
1322
1378
|
#
|
1323
|
-
# * A Shield Advanced policy, which applies Shield Advanced protection
|
1324
|
-
# to specified accounts and resources
|
1325
|
-
#
|
1326
1379
|
# * An AWS WAF policy (type WAFV2), which defines rule groups to run
|
1327
1380
|
# first in the corresponding AWS WAF web ACL and rule groups to run
|
1328
1381
|
# last in the web ACL.
|
1329
1382
|
#
|
1330
1383
|
# * An AWS WAF Classic policy (type WAF), which defines a rule group.
|
1331
1384
|
#
|
1385
|
+
# * A Shield Advanced policy, which applies Shield Advanced protection
|
1386
|
+
# to specified accounts and resources.
|
1387
|
+
#
|
1332
1388
|
# * A security group policy, which manages VPC security groups across
|
1333
1389
|
# your AWS organization.
|
1334
1390
|
#
|
1391
|
+
# * An AWS Network Firewall policy, which provides firewall rules to
|
1392
|
+
# filter network traffic in specified Amazon VPCs.
|
1393
|
+
#
|
1335
1394
|
# Each policy is specific to one of the types. If you want to enforce
|
1336
1395
|
# more than one policy type across accounts, create multiple policies.
|
1337
1396
|
# You can create multiple policies for each type.
|
@@ -1363,7 +1422,7 @@ module Aws::FMS
|
|
1363
1422
|
# policy_name: "ResourceName", # required
|
1364
1423
|
# policy_update_token: "PolicyUpdateToken",
|
1365
1424
|
# security_service_policy_data: { # required
|
1366
|
-
# type: "WAF", # required, accepts WAF, WAFV2, SHIELD_ADVANCED, SECURITY_GROUPS_COMMON, SECURITY_GROUPS_CONTENT_AUDIT, SECURITY_GROUPS_USAGE_AUDIT
|
1425
|
+
# type: "WAF", # required, accepts WAF, WAFV2, SHIELD_ADVANCED, SECURITY_GROUPS_COMMON, SECURITY_GROUPS_CONTENT_AUDIT, SECURITY_GROUPS_USAGE_AUDIT, NETWORK_FIREWALL
|
1367
1426
|
# managed_service_data: "ManagedServiceData",
|
1368
1427
|
# },
|
1369
1428
|
# resource_type: "ResourceType", # required
|
@@ -1396,7 +1455,7 @@ module Aws::FMS
|
|
1396
1455
|
# resp.policy.policy_id #=> String
|
1397
1456
|
# resp.policy.policy_name #=> String
|
1398
1457
|
# resp.policy.policy_update_token #=> String
|
1399
|
-
# 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"
|
1458
|
+
# 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"
|
1400
1459
|
# resp.policy.security_service_policy_data.managed_service_data #=> String
|
1401
1460
|
# resp.policy.resource_type #=> String
|
1402
1461
|
# resp.policy.resource_type_list #=> Array
|
@@ -1555,7 +1614,7 @@ module Aws::FMS
|
|
1555
1614
|
params: params,
|
1556
1615
|
config: config)
|
1557
1616
|
context[:gem_name] = 'aws-sdk-fms'
|
1558
|
-
context[:gem_version] = '1.
|
1617
|
+
context[:gem_version] = '1.33.0'
|
1559
1618
|
Seahorse::Client::Request.new(handlers, context)
|
1560
1619
|
end
|
1561
1620
|
|
@@ -82,6 +82,14 @@ module Aws::FMS
|
|
82
82
|
ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
|
83
83
|
ManagedServiceData = Shapes::StringShape.new(name: 'ManagedServiceData')
|
84
84
|
MemberAccounts = Shapes::ListShape.new(name: 'MemberAccounts')
|
85
|
+
NetworkFirewallAction = Shapes::StringShape.new(name: 'NetworkFirewallAction')
|
86
|
+
NetworkFirewallActionList = Shapes::ListShape.new(name: 'NetworkFirewallActionList')
|
87
|
+
NetworkFirewallMissingExpectedRTViolation = Shapes::StructureShape.new(name: 'NetworkFirewallMissingExpectedRTViolation')
|
88
|
+
NetworkFirewallMissingFirewallViolation = Shapes::StructureShape.new(name: 'NetworkFirewallMissingFirewallViolation')
|
89
|
+
NetworkFirewallMissingSubnetViolation = Shapes::StructureShape.new(name: 'NetworkFirewallMissingSubnetViolation')
|
90
|
+
NetworkFirewallPolicyDescription = Shapes::StructureShape.new(name: 'NetworkFirewallPolicyDescription')
|
91
|
+
NetworkFirewallPolicyModifiedViolation = Shapes::StructureShape.new(name: 'NetworkFirewallPolicyModifiedViolation')
|
92
|
+
NetworkFirewallResourceName = Shapes::StringShape.new(name: 'NetworkFirewallResourceName')
|
85
93
|
PaginationMaxResults = Shapes::IntegerShape.new(name: 'PaginationMaxResults')
|
86
94
|
PaginationToken = Shapes::StringShape.new(name: 'PaginationToken')
|
87
95
|
PartialMatch = Shapes::StructureShape.new(name: 'PartialMatch')
|
@@ -133,6 +141,11 @@ module Aws::FMS
|
|
133
141
|
SecurityGroupRuleDescription = Shapes::StructureShape.new(name: 'SecurityGroupRuleDescription')
|
134
142
|
SecurityServicePolicyData = Shapes::StructureShape.new(name: 'SecurityServicePolicyData')
|
135
143
|
SecurityServiceType = Shapes::StringShape.new(name: 'SecurityServiceType')
|
144
|
+
StatefulRuleGroup = Shapes::StructureShape.new(name: 'StatefulRuleGroup')
|
145
|
+
StatefulRuleGroupList = Shapes::ListShape.new(name: 'StatefulRuleGroupList')
|
146
|
+
StatelessRuleGroup = Shapes::StructureShape.new(name: 'StatelessRuleGroup')
|
147
|
+
StatelessRuleGroupList = Shapes::ListShape.new(name: 'StatelessRuleGroupList')
|
148
|
+
StatelessRuleGroupPriority = Shapes::IntegerShape.new(name: 'StatelessRuleGroupPriority')
|
136
149
|
Tag = Shapes::StructureShape.new(name: 'Tag')
|
137
150
|
TagKey = Shapes::StringShape.new(name: 'TagKey')
|
138
151
|
TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
|
@@ -360,6 +373,39 @@ module Aws::FMS
|
|
360
373
|
|
361
374
|
MemberAccounts.member = Shapes::ShapeRef.new(shape: AWSAccountId)
|
362
375
|
|
376
|
+
NetworkFirewallActionList.member = Shapes::ShapeRef.new(shape: NetworkFirewallAction)
|
377
|
+
|
378
|
+
NetworkFirewallMissingExpectedRTViolation.add_member(:violation_target, Shapes::ShapeRef.new(shape: ViolationTarget, location_name: "ViolationTarget"))
|
379
|
+
NetworkFirewallMissingExpectedRTViolation.add_member(:vpc, Shapes::ShapeRef.new(shape: ResourceId, location_name: "VPC"))
|
380
|
+
NetworkFirewallMissingExpectedRTViolation.add_member(:availability_zone, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "AvailabilityZone"))
|
381
|
+
NetworkFirewallMissingExpectedRTViolation.add_member(:current_route_table, Shapes::ShapeRef.new(shape: ResourceId, location_name: "CurrentRouteTable"))
|
382
|
+
NetworkFirewallMissingExpectedRTViolation.add_member(:expected_route_table, Shapes::ShapeRef.new(shape: ResourceId, location_name: "ExpectedRouteTable"))
|
383
|
+
NetworkFirewallMissingExpectedRTViolation.struct_class = Types::NetworkFirewallMissingExpectedRTViolation
|
384
|
+
|
385
|
+
NetworkFirewallMissingFirewallViolation.add_member(:violation_target, Shapes::ShapeRef.new(shape: ViolationTarget, location_name: "ViolationTarget"))
|
386
|
+
NetworkFirewallMissingFirewallViolation.add_member(:vpc, Shapes::ShapeRef.new(shape: ResourceId, location_name: "VPC"))
|
387
|
+
NetworkFirewallMissingFirewallViolation.add_member(:availability_zone, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "AvailabilityZone"))
|
388
|
+
NetworkFirewallMissingFirewallViolation.add_member(:target_violation_reason, Shapes::ShapeRef.new(shape: TargetViolationReason, location_name: "TargetViolationReason"))
|
389
|
+
NetworkFirewallMissingFirewallViolation.struct_class = Types::NetworkFirewallMissingFirewallViolation
|
390
|
+
|
391
|
+
NetworkFirewallMissingSubnetViolation.add_member(:violation_target, Shapes::ShapeRef.new(shape: ViolationTarget, location_name: "ViolationTarget"))
|
392
|
+
NetworkFirewallMissingSubnetViolation.add_member(:vpc, Shapes::ShapeRef.new(shape: ResourceId, location_name: "VPC"))
|
393
|
+
NetworkFirewallMissingSubnetViolation.add_member(:availability_zone, Shapes::ShapeRef.new(shape: LengthBoundedString, location_name: "AvailabilityZone"))
|
394
|
+
NetworkFirewallMissingSubnetViolation.add_member(:target_violation_reason, Shapes::ShapeRef.new(shape: TargetViolationReason, location_name: "TargetViolationReason"))
|
395
|
+
NetworkFirewallMissingSubnetViolation.struct_class = Types::NetworkFirewallMissingSubnetViolation
|
396
|
+
|
397
|
+
NetworkFirewallPolicyDescription.add_member(:stateless_rule_groups, Shapes::ShapeRef.new(shape: StatelessRuleGroupList, location_name: "StatelessRuleGroups"))
|
398
|
+
NetworkFirewallPolicyDescription.add_member(:stateless_default_actions, Shapes::ShapeRef.new(shape: NetworkFirewallActionList, location_name: "StatelessDefaultActions"))
|
399
|
+
NetworkFirewallPolicyDescription.add_member(:stateless_fragment_default_actions, Shapes::ShapeRef.new(shape: NetworkFirewallActionList, location_name: "StatelessFragmentDefaultActions"))
|
400
|
+
NetworkFirewallPolicyDescription.add_member(:stateless_custom_actions, Shapes::ShapeRef.new(shape: NetworkFirewallActionList, location_name: "StatelessCustomActions"))
|
401
|
+
NetworkFirewallPolicyDescription.add_member(:stateful_rule_groups, Shapes::ShapeRef.new(shape: StatefulRuleGroupList, location_name: "StatefulRuleGroups"))
|
402
|
+
NetworkFirewallPolicyDescription.struct_class = Types::NetworkFirewallPolicyDescription
|
403
|
+
|
404
|
+
NetworkFirewallPolicyModifiedViolation.add_member(:violation_target, Shapes::ShapeRef.new(shape: ViolationTarget, location_name: "ViolationTarget"))
|
405
|
+
NetworkFirewallPolicyModifiedViolation.add_member(:current_policy_description, Shapes::ShapeRef.new(shape: NetworkFirewallPolicyDescription, location_name: "CurrentPolicyDescription"))
|
406
|
+
NetworkFirewallPolicyModifiedViolation.add_member(:expected_policy_description, Shapes::ShapeRef.new(shape: NetworkFirewallPolicyDescription, location_name: "ExpectedPolicyDescription"))
|
407
|
+
NetworkFirewallPolicyModifiedViolation.struct_class = Types::NetworkFirewallPolicyModifiedViolation
|
408
|
+
|
363
409
|
PartialMatch.add_member(:reference, Shapes::ShapeRef.new(shape: ReferenceRule, location_name: "Reference"))
|
364
410
|
PartialMatch.add_member(:target_violation_reasons, Shapes::ShapeRef.new(shape: TargetViolationReasons, location_name: "TargetViolationReasons"))
|
365
411
|
PartialMatch.struct_class = Types::PartialMatch
|
@@ -478,6 +524,10 @@ module Aws::FMS
|
|
478
524
|
ResourceViolation.add_member(:aws_vpc_security_group_violation, Shapes::ShapeRef.new(shape: AwsVPCSecurityGroupViolation, location_name: "AwsVPCSecurityGroupViolation"))
|
479
525
|
ResourceViolation.add_member(:aws_ec2_network_interface_violation, Shapes::ShapeRef.new(shape: AwsEc2NetworkInterfaceViolation, location_name: "AwsEc2NetworkInterfaceViolation"))
|
480
526
|
ResourceViolation.add_member(:aws_ec2_instance_violation, Shapes::ShapeRef.new(shape: AwsEc2InstanceViolation, location_name: "AwsEc2InstanceViolation"))
|
527
|
+
ResourceViolation.add_member(:network_firewall_missing_firewall_violation, Shapes::ShapeRef.new(shape: NetworkFirewallMissingFirewallViolation, location_name: "NetworkFirewallMissingFirewallViolation"))
|
528
|
+
ResourceViolation.add_member(:network_firewall_missing_subnet_violation, Shapes::ShapeRef.new(shape: NetworkFirewallMissingSubnetViolation, location_name: "NetworkFirewallMissingSubnetViolation"))
|
529
|
+
ResourceViolation.add_member(:network_firewall_missing_expected_rt_violation, Shapes::ShapeRef.new(shape: NetworkFirewallMissingExpectedRTViolation, location_name: "NetworkFirewallMissingExpectedRTViolation"))
|
530
|
+
ResourceViolation.add_member(:network_firewall_policy_modified_violation, Shapes::ShapeRef.new(shape: NetworkFirewallPolicyModifiedViolation, location_name: "NetworkFirewallPolicyModifiedViolation"))
|
481
531
|
ResourceViolation.struct_class = Types::ResourceViolation
|
482
532
|
|
483
533
|
ResourceViolations.member = Shapes::ShapeRef.new(shape: ResourceViolation)
|
@@ -502,6 +552,19 @@ module Aws::FMS
|
|
502
552
|
SecurityServicePolicyData.add_member(:managed_service_data, Shapes::ShapeRef.new(shape: ManagedServiceData, location_name: "ManagedServiceData"))
|
503
553
|
SecurityServicePolicyData.struct_class = Types::SecurityServicePolicyData
|
504
554
|
|
555
|
+
StatefulRuleGroup.add_member(:rule_group_name, Shapes::ShapeRef.new(shape: NetworkFirewallResourceName, location_name: "RuleGroupName"))
|
556
|
+
StatefulRuleGroup.add_member(:resource_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "ResourceId"))
|
557
|
+
StatefulRuleGroup.struct_class = Types::StatefulRuleGroup
|
558
|
+
|
559
|
+
StatefulRuleGroupList.member = Shapes::ShapeRef.new(shape: StatefulRuleGroup)
|
560
|
+
|
561
|
+
StatelessRuleGroup.add_member(:rule_group_name, Shapes::ShapeRef.new(shape: NetworkFirewallResourceName, location_name: "RuleGroupName"))
|
562
|
+
StatelessRuleGroup.add_member(:resource_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "ResourceId"))
|
563
|
+
StatelessRuleGroup.add_member(:priority, Shapes::ShapeRef.new(shape: StatelessRuleGroupPriority, location_name: "Priority"))
|
564
|
+
StatelessRuleGroup.struct_class = Types::StatelessRuleGroup
|
565
|
+
|
566
|
+
StatelessRuleGroupList.member = Shapes::ShapeRef.new(shape: StatelessRuleGroup)
|
567
|
+
|
505
568
|
Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "Key"))
|
506
569
|
Tag.add_member(:value, Shapes::ShapeRef.new(shape: TagValue, required: true, location_name: "Value"))
|
507
570
|
Tag.struct_class = Types::Tag
|
@@ -595,6 +658,8 @@ module Aws::FMS
|
|
595
658
|
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
596
659
|
o.errors << Shapes::ShapeRef.new(shape: InvalidOperationException)
|
597
660
|
o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
|
661
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
|
662
|
+
o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
|
598
663
|
end)
|
599
664
|
|
600
665
|
api.add_operation(:delete_protocols_list, Seahorse::Model::Operation.new.tap do |o|
|
data/lib/aws-sdk-fms/types.rb
CHANGED
@@ -267,8 +267,9 @@ module Aws::FMS
|
|
267
267
|
# @!attribute [rw] resource_type
|
268
268
|
# The resource type. This is in the format shown in the [AWS Resource
|
269
269
|
# Types Reference][1]. For example:
|
270
|
-
# `AWS::ElasticLoadBalancingV2::LoadBalancer
|
271
|
-
# `AWS::CloudFront::Distribution
|
270
|
+
# `AWS::ElasticLoadBalancingV2::LoadBalancer`,
|
271
|
+
# `AWS::CloudFront::Distribution`, or
|
272
|
+
# `AWS::NetworkFirewall::FirewallPolicy`.
|
272
273
|
#
|
273
274
|
#
|
274
275
|
#
|
@@ -785,8 +786,9 @@ module Aws::FMS
|
|
785
786
|
# @!attribute [rw] resource_type
|
786
787
|
# The resource type. This is in the format shown in the [AWS Resource
|
787
788
|
# Types Reference][1]. Supported resource types are:
|
788
|
-
# `AWS::EC2::Instance`, `AWS::EC2::NetworkInterface`,
|
789
|
-
# `AWS::EC2::SecurityGroup
|
789
|
+
# `AWS::EC2::Instance`, `AWS::EC2::NetworkInterface`,
|
790
|
+
# `AWS::EC2::SecurityGroup`, `AWS::NetworkFirewall::FirewallPolicy`,
|
791
|
+
# and `AWS::EC2::Subnet`.
|
790
792
|
#
|
791
793
|
#
|
792
794
|
#
|
@@ -1231,6 +1233,173 @@ module Aws::FMS
|
|
1231
1233
|
include Aws::Structure
|
1232
1234
|
end
|
1233
1235
|
|
1236
|
+
# Violation details for AWS Network Firewall for a subnet that's not
|
1237
|
+
# associated to the expected Firewall Manager managed route table.
|
1238
|
+
#
|
1239
|
+
# @!attribute [rw] violation_target
|
1240
|
+
# The ID of the AWS Network Firewall or VPC resource that's in
|
1241
|
+
# violation.
|
1242
|
+
# @return [String]
|
1243
|
+
#
|
1244
|
+
# @!attribute [rw] vpc
|
1245
|
+
# The resource ID of the VPC associated with a violating subnet.
|
1246
|
+
# @return [String]
|
1247
|
+
#
|
1248
|
+
# @!attribute [rw] availability_zone
|
1249
|
+
# The Availability Zone of a violating subnet.
|
1250
|
+
# @return [String]
|
1251
|
+
#
|
1252
|
+
# @!attribute [rw] current_route_table
|
1253
|
+
# The resource ID of the current route table that's associated with
|
1254
|
+
# the subnet, if one is available.
|
1255
|
+
# @return [String]
|
1256
|
+
#
|
1257
|
+
# @!attribute [rw] expected_route_table
|
1258
|
+
# The resource ID of the route table that should be associated with
|
1259
|
+
# the subnet.
|
1260
|
+
# @return [String]
|
1261
|
+
#
|
1262
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/NetworkFirewallMissingExpectedRTViolation AWS API Documentation
|
1263
|
+
#
|
1264
|
+
class NetworkFirewallMissingExpectedRTViolation < Struct.new(
|
1265
|
+
:violation_target,
|
1266
|
+
:vpc,
|
1267
|
+
:availability_zone,
|
1268
|
+
:current_route_table,
|
1269
|
+
:expected_route_table)
|
1270
|
+
SENSITIVE = []
|
1271
|
+
include Aws::Structure
|
1272
|
+
end
|
1273
|
+
|
1274
|
+
# Violation details for AWS Network Firewall for a subnet that doesn't
|
1275
|
+
# have a Firewall Manager managed firewall in its VPC.
|
1276
|
+
#
|
1277
|
+
# @!attribute [rw] violation_target
|
1278
|
+
# The ID of the AWS Network Firewall or VPC resource that's in
|
1279
|
+
# violation.
|
1280
|
+
# @return [String]
|
1281
|
+
#
|
1282
|
+
# @!attribute [rw] vpc
|
1283
|
+
# The resource ID of the VPC associated with a violating subnet.
|
1284
|
+
# @return [String]
|
1285
|
+
#
|
1286
|
+
# @!attribute [rw] availability_zone
|
1287
|
+
# The Availability Zone of a violating subnet.
|
1288
|
+
# @return [String]
|
1289
|
+
#
|
1290
|
+
# @!attribute [rw] target_violation_reason
|
1291
|
+
# The reason the resource has this violation, if one is available.
|
1292
|
+
# @return [String]
|
1293
|
+
#
|
1294
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/NetworkFirewallMissingFirewallViolation AWS API Documentation
|
1295
|
+
#
|
1296
|
+
class NetworkFirewallMissingFirewallViolation < Struct.new(
|
1297
|
+
:violation_target,
|
1298
|
+
:vpc,
|
1299
|
+
:availability_zone,
|
1300
|
+
:target_violation_reason)
|
1301
|
+
SENSITIVE = []
|
1302
|
+
include Aws::Structure
|
1303
|
+
end
|
1304
|
+
|
1305
|
+
# Violation details for AWS Network Firewall for an Availability Zone
|
1306
|
+
# that's missing the expected Firewall Manager managed subnet.
|
1307
|
+
#
|
1308
|
+
# @!attribute [rw] violation_target
|
1309
|
+
# The ID of the AWS Network Firewall or VPC resource that's in
|
1310
|
+
# violation.
|
1311
|
+
# @return [String]
|
1312
|
+
#
|
1313
|
+
# @!attribute [rw] vpc
|
1314
|
+
# The resource ID of the VPC associated with a violating subnet.
|
1315
|
+
# @return [String]
|
1316
|
+
#
|
1317
|
+
# @!attribute [rw] availability_zone
|
1318
|
+
# The Availability Zone of a violating subnet.
|
1319
|
+
# @return [String]
|
1320
|
+
#
|
1321
|
+
# @!attribute [rw] target_violation_reason
|
1322
|
+
# The reason the resource has this violation, if one is available.
|
1323
|
+
# @return [String]
|
1324
|
+
#
|
1325
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/NetworkFirewallMissingSubnetViolation AWS API Documentation
|
1326
|
+
#
|
1327
|
+
class NetworkFirewallMissingSubnetViolation < Struct.new(
|
1328
|
+
:violation_target,
|
1329
|
+
:vpc,
|
1330
|
+
:availability_zone,
|
1331
|
+
:target_violation_reason)
|
1332
|
+
SENSITIVE = []
|
1333
|
+
include Aws::Structure
|
1334
|
+
end
|
1335
|
+
|
1336
|
+
# The definition of the AWS Network Firewall firewall policy.
|
1337
|
+
#
|
1338
|
+
# @!attribute [rw] stateless_rule_groups
|
1339
|
+
# The stateless rule groups that are used in the Network Firewall
|
1340
|
+
# firewall policy.
|
1341
|
+
# @return [Array<Types::StatelessRuleGroup>]
|
1342
|
+
#
|
1343
|
+
# @!attribute [rw] stateless_default_actions
|
1344
|
+
# The actions to take on packets that don't match any of the
|
1345
|
+
# stateless rule groups.
|
1346
|
+
# @return [Array<String>]
|
1347
|
+
#
|
1348
|
+
# @!attribute [rw] stateless_fragment_default_actions
|
1349
|
+
# The actions to take on packet fragments that don't match any of the
|
1350
|
+
# stateless rule groups.
|
1351
|
+
# @return [Array<String>]
|
1352
|
+
#
|
1353
|
+
# @!attribute [rw] stateless_custom_actions
|
1354
|
+
# Names of custom actions that are available for use in the stateless
|
1355
|
+
# default actions settings.
|
1356
|
+
# @return [Array<String>]
|
1357
|
+
#
|
1358
|
+
# @!attribute [rw] stateful_rule_groups
|
1359
|
+
# The stateful rule groups that are used in the Network Firewall
|
1360
|
+
# firewall policy.
|
1361
|
+
# @return [Array<Types::StatefulRuleGroup>]
|
1362
|
+
#
|
1363
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/NetworkFirewallPolicyDescription AWS API Documentation
|
1364
|
+
#
|
1365
|
+
class NetworkFirewallPolicyDescription < Struct.new(
|
1366
|
+
:stateless_rule_groups,
|
1367
|
+
:stateless_default_actions,
|
1368
|
+
:stateless_fragment_default_actions,
|
1369
|
+
:stateless_custom_actions,
|
1370
|
+
:stateful_rule_groups)
|
1371
|
+
SENSITIVE = []
|
1372
|
+
include Aws::Structure
|
1373
|
+
end
|
1374
|
+
|
1375
|
+
# Violation details for AWS Network Firewall for a firewall policy that
|
1376
|
+
# has a different NetworkFirewallPolicyDescription than is required by
|
1377
|
+
# the Firewall Manager policy.
|
1378
|
+
#
|
1379
|
+
# @!attribute [rw] violation_target
|
1380
|
+
# The ID of the AWS Network Firewall or VPC resource that's in
|
1381
|
+
# violation.
|
1382
|
+
# @return [String]
|
1383
|
+
#
|
1384
|
+
# @!attribute [rw] current_policy_description
|
1385
|
+
# The policy that's currently in use in the individual account.
|
1386
|
+
# @return [Types::NetworkFirewallPolicyDescription]
|
1387
|
+
#
|
1388
|
+
# @!attribute [rw] expected_policy_description
|
1389
|
+
# The policy that should be in use in the individual account in order
|
1390
|
+
# to be compliant.
|
1391
|
+
# @return [Types::NetworkFirewallPolicyDescription]
|
1392
|
+
#
|
1393
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/NetworkFirewallPolicyModifiedViolation AWS API Documentation
|
1394
|
+
#
|
1395
|
+
class NetworkFirewallPolicyModifiedViolation < Struct.new(
|
1396
|
+
:violation_target,
|
1397
|
+
:current_policy_description,
|
1398
|
+
:expected_policy_description)
|
1399
|
+
SENSITIVE = []
|
1400
|
+
include Aws::Structure
|
1401
|
+
end
|
1402
|
+
|
1234
1403
|
# The reference rule that partially matches the `ViolationTarget` rule
|
1235
1404
|
# and violation reason.
|
1236
1405
|
#
|
@@ -1262,7 +1431,7 @@ module Aws::FMS
|
|
1262
1431
|
# policy_name: "ResourceName", # required
|
1263
1432
|
# policy_update_token: "PolicyUpdateToken",
|
1264
1433
|
# security_service_policy_data: { # required
|
1265
|
-
# type: "WAF", # required, accepts WAF, WAFV2, SHIELD_ADVANCED, SECURITY_GROUPS_COMMON, SECURITY_GROUPS_CONTENT_AUDIT, SECURITY_GROUPS_USAGE_AUDIT
|
1434
|
+
# type: "WAF", # required, accepts WAF, WAFV2, SHIELD_ADVANCED, SECURITY_GROUPS_COMMON, SECURITY_GROUPS_CONTENT_AUDIT, SECURITY_GROUPS_USAGE_AUDIT, NETWORK_FIREWALL
|
1266
1435
|
# managed_service_data: "ManagedServiceData",
|
1267
1436
|
# },
|
1268
1437
|
# resource_type: "ResourceType", # required
|
@@ -1315,7 +1484,8 @@ module Aws::FMS
|
|
1315
1484
|
# valid values are `AWS::EC2::SecurityGroup`,
|
1316
1485
|
# `AWS::EC2::NetworkInterface`, and `AWS::EC2::Instance`. For a
|
1317
1486
|
# security group usage audit policy, the value is
|
1318
|
-
# `AWS::EC2::SecurityGroup`.
|
1487
|
+
# `AWS::EC2::SecurityGroup`. For an AWS Network Firewall policy, the
|
1488
|
+
# value is `AWS::EC2::VPC`.
|
1319
1489
|
#
|
1320
1490
|
#
|
1321
1491
|
#
|
@@ -1550,7 +1720,8 @@ module Aws::FMS
|
|
1550
1720
|
# valid values are `AWS::EC2::SecurityGroup`,
|
1551
1721
|
# `AWS::EC2::NetworkInterface`, and `AWS::EC2::Instance`. For a
|
1552
1722
|
# security group usage audit policy, the value is
|
1553
|
-
# `AWS::EC2::SecurityGroup`.
|
1723
|
+
# `AWS::EC2::SecurityGroup`. For an AWS Network Firewall policy, the
|
1724
|
+
# value is `AWS::EC2::VPC`.
|
1554
1725
|
#
|
1555
1726
|
#
|
1556
1727
|
#
|
@@ -1780,7 +1951,7 @@ module Aws::FMS
|
|
1780
1951
|
# policy_name: "ResourceName", # required
|
1781
1952
|
# policy_update_token: "PolicyUpdateToken",
|
1782
1953
|
# security_service_policy_data: { # required
|
1783
|
-
# type: "WAF", # required, accepts WAF, WAFV2, SHIELD_ADVANCED, SECURITY_GROUPS_COMMON, SECURITY_GROUPS_CONTENT_AUDIT, SECURITY_GROUPS_USAGE_AUDIT
|
1954
|
+
# type: "WAF", # required, accepts WAF, WAFV2, SHIELD_ADVANCED, SECURITY_GROUPS_COMMON, SECURITY_GROUPS_CONTENT_AUDIT, SECURITY_GROUPS_USAGE_AUDIT, NETWORK_FIREWALL
|
1784
1955
|
# managed_service_data: "ManagedServiceData",
|
1785
1956
|
# },
|
1786
1957
|
# resource_type: "ResourceType", # required
|
@@ -1966,12 +2137,41 @@ module Aws::FMS
|
|
1966
2137
|
# Violation details for an EC2 instance.
|
1967
2138
|
# @return [Types::AwsEc2InstanceViolation]
|
1968
2139
|
#
|
2140
|
+
# @!attribute [rw] network_firewall_missing_firewall_violation
|
2141
|
+
# Violation detail for an Network Firewall policy that indicates that
|
2142
|
+
# a subnet has no Firewall Manager managed firewall in its VPC.
|
2143
|
+
# @return [Types::NetworkFirewallMissingFirewallViolation]
|
2144
|
+
#
|
2145
|
+
# @!attribute [rw] network_firewall_missing_subnet_violation
|
2146
|
+
# Violation detail for an Network Firewall policy that indicates that
|
2147
|
+
# an Availability Zone is missing the expected Firewall Manager
|
2148
|
+
# managed subnet.
|
2149
|
+
# @return [Types::NetworkFirewallMissingSubnetViolation]
|
2150
|
+
#
|
2151
|
+
# @!attribute [rw] network_firewall_missing_expected_rt_violation
|
2152
|
+
# Violation detail for an Network Firewall policy that indicates that
|
2153
|
+
# a subnet is not associated with the expected Firewall Manager
|
2154
|
+
# managed route table.
|
2155
|
+
# @return [Types::NetworkFirewallMissingExpectedRTViolation]
|
2156
|
+
#
|
2157
|
+
# @!attribute [rw] network_firewall_policy_modified_violation
|
2158
|
+
# Violation detail for an Network Firewall policy that indicates that
|
2159
|
+
# a firewall policy in an individual account has been modified in a
|
2160
|
+
# way that makes it noncompliant. For example, the individual account
|
2161
|
+
# owner might have deleted a rule group, changed the priority of a
|
2162
|
+
# stateless rule group, or changed a policy default action.
|
2163
|
+
# @return [Types::NetworkFirewallPolicyModifiedViolation]
|
2164
|
+
#
|
1969
2165
|
# @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/ResourceViolation AWS API Documentation
|
1970
2166
|
#
|
1971
2167
|
class ResourceViolation < Struct.new(
|
1972
2168
|
:aws_vpc_security_group_violation,
|
1973
2169
|
:aws_ec2_network_interface_violation,
|
1974
|
-
:aws_ec2_instance_violation
|
2170
|
+
:aws_ec2_instance_violation,
|
2171
|
+
:network_firewall_missing_firewall_violation,
|
2172
|
+
:network_firewall_missing_subnet_violation,
|
2173
|
+
:network_firewall_missing_expected_rt_violation,
|
2174
|
+
:network_firewall_policy_modified_violation)
|
1975
2175
|
SENSITIVE = []
|
1976
2176
|
include Aws::Structure
|
1977
2177
|
end
|
@@ -2055,7 +2255,7 @@ module Aws::FMS
|
|
2055
2255
|
# data as a hash:
|
2056
2256
|
#
|
2057
2257
|
# {
|
2058
|
-
# type: "WAF", # required, accepts WAF, WAFV2, SHIELD_ADVANCED, SECURITY_GROUPS_COMMON, SECURITY_GROUPS_CONTENT_AUDIT, SECURITY_GROUPS_USAGE_AUDIT
|
2258
|
+
# type: "WAF", # required, accepts WAF, WAFV2, SHIELD_ADVANCED, SECURITY_GROUPS_COMMON, SECURITY_GROUPS_CONTENT_AUDIT, SECURITY_GROUPS_USAGE_AUDIT, NETWORK_FIREWALL
|
2059
2259
|
# managed_service_data: "ManagedServiceData",
|
2060
2260
|
# }
|
2061
2261
|
#
|
@@ -2074,29 +2274,36 @@ module Aws::FMS
|
|
2074
2274
|
# JSON format. For service type `SHIELD_ADVANCED`, this is an empty
|
2075
2275
|
# string.
|
2076
2276
|
#
|
2277
|
+
# * Example: `NETWORK_FIREWALL`
|
2278
|
+
#
|
2279
|
+
# `"\{"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"]\}
|
2280
|
+
# \}"`
|
2281
|
+
#
|
2077
2282
|
# * Example: `WAFV2`
|
2078
2283
|
#
|
2079
|
-
# `"
|
2080
|
-
#
|
2284
|
+
# `"\{"type":"WAFV2","preProcessRuleGroups":[\{"ruleGroupArn":null,"overrideAction":\{"type":"NONE"\},"managedRuleGroupIdentifier":\{"version":null,"vendorName":"AWS","managedRuleGroupName":"AWSManagedRulesAmazonIpReputationList"\},"ruleGroupType":"ManagedRuleGroup","excludeRules":[]\}],"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"\}]\}\}"`
|
2285
|
+
#
|
2286
|
+
# In the `loggingConfiguration`, you can specify one
|
2287
|
+
# `logDestinationConfigs`, you can optionally provide up to 20
|
2288
|
+
# `redactedFields`, and the `RedactedFieldType` must be one of
|
2289
|
+
# `URI`, `QUERY_STRING`, `HEADER`, or `METHOD`.
|
2081
2290
|
#
|
2082
2291
|
# * Example: `WAF Classic`
|
2083
2292
|
#
|
2084
|
-
# `"
|
2085
|
-
# [\{"id":
|
2293
|
+
# `"\{"type": "WAF", "ruleGroups":
|
2294
|
+
# [\{"id":"12345678-1bcd-9012-efga-0987654321ab",
|
2086
2295
|
# "overrideAction" : \{"type": "COUNT"\}\}],
|
2087
|
-
# "defaultAction": \{"type": "BLOCK"\}\}`
|
2296
|
+
# "defaultAction": \{"type": "BLOCK"\}\}"`
|
2088
2297
|
#
|
2089
2298
|
# * Example: `SECURITY_GROUPS_COMMON`
|
2090
2299
|
#
|
2091
|
-
# `"
|
2300
|
+
# `"\{"type":"SECURITY_GROUPS_COMMON","revertManualSecurityGroupChanges":false,"exclusiveResourceSecurityGroupManagement":false,
|
2092
2301
|
# "applyToAllEC2InstanceENIs":false,"securityGroups":[\{"id":"
|
2093
|
-
# sg-000e55995d61a06bd"\}]\}"
|
2302
|
+
# sg-000e55995d61a06bd"\}]\}"`
|
2094
2303
|
#
|
2095
2304
|
# * Example: `SECURITY_GROUPS_CONTENT_AUDIT`
|
2096
2305
|
#
|
2097
|
-
# `"
|
2098
|
-
# sg-000e55995d61a06bd
|
2099
|
-
# "\}],"securityGroupAction":\{"type":"ALLOW"\}\}"\},"RemediationEnabled":false,"ResourceType":"AWS::EC2::NetworkInterface"\}`
|
2306
|
+
# `"\{"type":"SECURITY_GROUPS_CONTENT_AUDIT","securityGroups":[\{"id":"sg-000e55995d61a06bd"\}],"securityGroupAction":\{"type":"ALLOW"\}\}"`
|
2100
2307
|
#
|
2101
2308
|
# The security group action for content audit can be `ALLOW` or
|
2102
2309
|
# `DENY`. For `ALLOW`, all in-scope security group rules must be
|
@@ -2107,8 +2314,7 @@ module Aws::FMS
|
|
2107
2314
|
#
|
2108
2315
|
# * Example: `SECURITY_GROUPS_USAGE_AUDIT`
|
2109
2316
|
#
|
2110
|
-
# `"
|
2111
|
-
# rceType":"AWS::EC2::SecurityGroup"\}`
|
2317
|
+
# `"\{"type":"SECURITY_GROUPS_USAGE_AUDIT","deleteUnusedSecurityGroups":true,"coalesceRedundantSecurityGroups":true\}"`
|
2112
2318
|
# @return [String]
|
2113
2319
|
#
|
2114
2320
|
# @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/SecurityServicePolicyData AWS API Documentation
|
@@ -2120,6 +2326,53 @@ module Aws::FMS
|
|
2120
2326
|
include Aws::Structure
|
2121
2327
|
end
|
2122
2328
|
|
2329
|
+
# AWS Network Firewall stateful rule group, used in a
|
2330
|
+
# NetworkFirewallPolicyDescription.
|
2331
|
+
#
|
2332
|
+
# @!attribute [rw] rule_group_name
|
2333
|
+
# The name of the rule group.
|
2334
|
+
# @return [String]
|
2335
|
+
#
|
2336
|
+
# @!attribute [rw] resource_id
|
2337
|
+
# The resource ID of the rule group.
|
2338
|
+
# @return [String]
|
2339
|
+
#
|
2340
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/StatefulRuleGroup AWS API Documentation
|
2341
|
+
#
|
2342
|
+
class StatefulRuleGroup < Struct.new(
|
2343
|
+
:rule_group_name,
|
2344
|
+
:resource_id)
|
2345
|
+
SENSITIVE = []
|
2346
|
+
include Aws::Structure
|
2347
|
+
end
|
2348
|
+
|
2349
|
+
# AWS Network Firewall stateless rule group, used in a
|
2350
|
+
# NetworkFirewallPolicyDescription.
|
2351
|
+
#
|
2352
|
+
# @!attribute [rw] rule_group_name
|
2353
|
+
# The name of the rule group.
|
2354
|
+
# @return [String]
|
2355
|
+
#
|
2356
|
+
# @!attribute [rw] resource_id
|
2357
|
+
# The resource ID of the rule group.
|
2358
|
+
# @return [String]
|
2359
|
+
#
|
2360
|
+
# @!attribute [rw] priority
|
2361
|
+
# The priority of the rule group. AWS Network Firewall evaluates the
|
2362
|
+
# stateless rule groups in a firewall policy starting from the lowest
|
2363
|
+
# priority setting.
|
2364
|
+
# @return [Integer]
|
2365
|
+
#
|
2366
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/fms-2018-01-01/StatelessRuleGroup AWS API Documentation
|
2367
|
+
#
|
2368
|
+
class StatelessRuleGroup < Struct.new(
|
2369
|
+
:rule_group_name,
|
2370
|
+
:resource_id,
|
2371
|
+
:priority)
|
2372
|
+
SENSITIVE = []
|
2373
|
+
include Aws::Structure
|
2374
|
+
end
|
2375
|
+
|
2123
2376
|
# A collection of key:value pairs associated with an AWS resource. The
|
2124
2377
|
# key:value pair can be anything you define. Typically, the tag key
|
2125
2378
|
# represents a category (such as "environment") and the tag value
|
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.
|
4
|
+
version: 1.33.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: 2020-
|
11
|
+
date: 2020-11-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-core
|