aws-sdk-fms 1.29.0 → 1.34.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 +3 -2
- data/lib/aws-sdk-fms/client.rb +94 -20
- data/lib/aws-sdk-fms/client_api.rb +65 -0
- data/lib/aws-sdk-fms/types.rb +275 -22
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9b530ef3232ecc05feb925dd6d727a02d47f2c858be6d37274a6e13f30cc1fe6
|
4
|
+
data.tar.gz: 8bb0a8da7b283b62300d210d865f5f70e8bbbf5b9a12310b0f1036cba9408811
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f9356cc6b50234826ffcdd066059bfbf19b19ad513e7ca998c5dfd5a089819a1693181023e7176a3b6d742c1204c5f09d10bb1fb17274974d26bc89ed5bc4a0d
|
7
|
+
data.tar.gz: 45d06186045a02e24b7045220c27e5f4d07dc14e5caf59f506c61fe494141dd82acee795ef814adbd9338366d39579f9c23ed0bf34bf9592eb85fb5c6bc78a93
|
data/lib/aws-sdk-fms.rb
CHANGED
@@ -7,6 +7,7 @@
|
|
7
7
|
#
|
8
8
|
# WARNING ABOUT GENERATED CODE
|
9
9
|
|
10
|
+
|
10
11
|
require 'aws-sdk-core'
|
11
12
|
require 'aws-sigv4'
|
12
13
|
|
@@ -44,9 +45,9 @@ require_relative 'aws-sdk-fms/customizations'
|
|
44
45
|
#
|
45
46
|
# See {Errors} for more information.
|
46
47
|
#
|
47
|
-
#
|
48
|
+
# @!group service
|
48
49
|
module Aws::FMS
|
49
50
|
|
50
|
-
GEM_VERSION = '1.
|
51
|
+
GEM_VERSION = '1.34.0'
|
51
52
|
|
52
53
|
end
|
data/lib/aws-sdk-fms/client.rb
CHANGED
@@ -85,13 +85,28 @@ module Aws::FMS
|
|
85
85
|
# * `Aws::Credentials` - Used for configuring static, non-refreshing
|
86
86
|
# credentials.
|
87
87
|
#
|
88
|
+
# * `Aws::SharedCredentials` - Used for loading static credentials from a
|
89
|
+
# shared file, such as `~/.aws/config`.
|
90
|
+
#
|
91
|
+
# * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
|
92
|
+
#
|
93
|
+
# * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
|
94
|
+
# assume a role after providing credentials via the web.
|
95
|
+
#
|
96
|
+
# * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
|
97
|
+
# access token generated from `aws login`.
|
98
|
+
#
|
99
|
+
# * `Aws::ProcessCredentials` - Used for loading credentials from a
|
100
|
+
# process that outputs to stdout.
|
101
|
+
#
|
88
102
|
# * `Aws::InstanceProfileCredentials` - Used for loading credentials
|
89
103
|
# from an EC2 IMDS on an EC2 instance.
|
90
104
|
#
|
91
|
-
# * `Aws::
|
92
|
-
#
|
105
|
+
# * `Aws::ECSCredentials` - Used for loading credentials from
|
106
|
+
# instances running in ECS.
|
93
107
|
#
|
94
|
-
# * `Aws::
|
108
|
+
# * `Aws::CognitoIdentityCredentials` - Used for loading credentials
|
109
|
+
# from the Cognito Identity service.
|
95
110
|
#
|
96
111
|
# When `:credentials` are not configured directly, the following
|
97
112
|
# locations will be searched for credentials:
|
@@ -101,10 +116,10 @@ module Aws::FMS
|
|
101
116
|
# * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
|
102
117
|
# * `~/.aws/credentials`
|
103
118
|
# * `~/.aws/config`
|
104
|
-
# * EC2 IMDS instance profile - When used by default, the timeouts
|
105
|
-
# very aggressive. Construct and pass an instance of
|
106
|
-
# `Aws::InstanceProfileCredentails`
|
107
|
-
# timeouts.
|
119
|
+
# * EC2/ECS IMDS instance profile - When used by default, the timeouts
|
120
|
+
# are very aggressive. Construct and pass an instance of
|
121
|
+
# `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
|
122
|
+
# enable retries and extended timeouts.
|
108
123
|
#
|
109
124
|
# @option options [required, String] :region
|
110
125
|
# The AWS region to connect to. The configured `:region` is
|
@@ -572,7 +587,12 @@ module Aws::FMS
|
|
572
587
|
# been applied to them. Resources are considered noncompliant for
|
573
588
|
# security group policies if they are in scope of the policy, they
|
574
589
|
# violate one or more of the policy rules, and remediation is disabled
|
575
|
-
# 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.
|
576
596
|
#
|
577
597
|
# @option params [required, String] :policy_id
|
578
598
|
# The ID of the policy that you want to get the details for. `PolicyId`
|
@@ -600,7 +620,7 @@ module Aws::FMS
|
|
600
620
|
# resp.policy_compliance_detail.member_account #=> String
|
601
621
|
# resp.policy_compliance_detail.violators #=> Array
|
602
622
|
# resp.policy_compliance_detail.violators[0].resource_id #=> String
|
603
|
-
# 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"
|
604
624
|
# resp.policy_compliance_detail.violators[0].resource_type #=> String
|
605
625
|
# resp.policy_compliance_detail.evaluation_limit_exceeded #=> Boolean
|
606
626
|
# resp.policy_compliance_detail.expired_at #=> Time
|
@@ -660,7 +680,7 @@ module Aws::FMS
|
|
660
680
|
# resp.policy.policy_id #=> String
|
661
681
|
# resp.policy.policy_name #=> String
|
662
682
|
# resp.policy.policy_update_token #=> String
|
663
|
-
# 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"
|
664
684
|
# resp.policy.security_service_policy_data.managed_service_data #=> String
|
665
685
|
# resp.policy.resource_type #=> String
|
666
686
|
# resp.policy.resource_type_list #=> Array
|
@@ -746,7 +766,7 @@ module Aws::FMS
|
|
746
766
|
# @example Response structure
|
747
767
|
#
|
748
768
|
# resp.admin_account_id #=> String
|
749
|
-
# 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"
|
750
770
|
# resp.data #=> String
|
751
771
|
# resp.next_token #=> String
|
752
772
|
#
|
@@ -822,8 +842,9 @@ module Aws::FMS
|
|
822
842
|
# @option params [required, String] :resource_type
|
823
843
|
# The resource type. This is in the format shown in the [AWS Resource
|
824
844
|
# Types Reference][1]. Supported resource types are:
|
825
|
-
# `AWS::EC2::Instance`, `AWS::EC2::NetworkInterface`,
|
826
|
-
# `AWS::EC2::SecurityGroup
|
845
|
+
# `AWS::EC2::Instance`, `AWS::EC2::NetworkInterface`,
|
846
|
+
# `AWS::EC2::SecurityGroup`, `AWS::NetworkFirewall::FirewallPolicy`, and
|
847
|
+
# `AWS::EC2::Subnet`.
|
827
848
|
#
|
828
849
|
#
|
829
850
|
#
|
@@ -873,6 +894,46 @@ module Aws::FMS
|
|
873
894
|
# resp.violation_detail.resource_violations[0].aws_ec2_instance_violation.aws_ec2_network_interface_violations[0].violation_target #=> String
|
874
895
|
# resp.violation_detail.resource_violations[0].aws_ec2_instance_violation.aws_ec2_network_interface_violations[0].violating_security_groups #=> Array
|
875
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
|
876
937
|
# resp.violation_detail.resource_tags #=> Array
|
877
938
|
# resp.violation_detail.resource_tags[0].key #=> String
|
878
939
|
# resp.violation_detail.resource_tags[0].value #=> String
|
@@ -1098,7 +1159,7 @@ module Aws::FMS
|
|
1098
1159
|
# resp.policy_list[0].policy_id #=> String
|
1099
1160
|
# resp.policy_list[0].policy_name #=> String
|
1100
1161
|
# resp.policy_list[0].resource_type #=> String
|
1101
|
-
# 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"
|
1102
1163
|
# resp.policy_list[0].remediation_enabled #=> Boolean
|
1103
1164
|
# resp.next_token #=> String
|
1104
1165
|
#
|
@@ -1275,6 +1336,16 @@ module Aws::FMS
|
|
1275
1336
|
# Designates the IAM role and Amazon Simple Notification Service (SNS)
|
1276
1337
|
# topic that AWS Firewall Manager uses to record SNS logs.
|
1277
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
|
+
#
|
1278
1349
|
# @option params [required, String] :sns_topic_arn
|
1279
1350
|
# The Amazon Resource Name (ARN) of the SNS topic that collects
|
1280
1351
|
# notifications from AWS Firewall Manager.
|
@@ -1305,18 +1376,21 @@ module Aws::FMS
|
|
1305
1376
|
#
|
1306
1377
|
# Firewall Manager provides the following types of policies:
|
1307
1378
|
#
|
1308
|
-
# * A Shield Advanced policy, which applies Shield Advanced protection
|
1309
|
-
# to specified accounts and resources
|
1310
|
-
#
|
1311
1379
|
# * An AWS WAF policy (type WAFV2), which defines rule groups to run
|
1312
1380
|
# first in the corresponding AWS WAF web ACL and rule groups to run
|
1313
1381
|
# last in the web ACL.
|
1314
1382
|
#
|
1315
1383
|
# * An AWS WAF Classic policy (type WAF), which defines a rule group.
|
1316
1384
|
#
|
1385
|
+
# * A Shield Advanced policy, which applies Shield Advanced protection
|
1386
|
+
# to specified accounts and resources.
|
1387
|
+
#
|
1317
1388
|
# * A security group policy, which manages VPC security groups across
|
1318
1389
|
# your AWS organization.
|
1319
1390
|
#
|
1391
|
+
# * An AWS Network Firewall policy, which provides firewall rules to
|
1392
|
+
# filter network traffic in specified Amazon VPCs.
|
1393
|
+
#
|
1320
1394
|
# Each policy is specific to one of the types. If you want to enforce
|
1321
1395
|
# more than one policy type across accounts, create multiple policies.
|
1322
1396
|
# You can create multiple policies for each type.
|
@@ -1348,7 +1422,7 @@ module Aws::FMS
|
|
1348
1422
|
# policy_name: "ResourceName", # required
|
1349
1423
|
# policy_update_token: "PolicyUpdateToken",
|
1350
1424
|
# security_service_policy_data: { # required
|
1351
|
-
# 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
|
1352
1426
|
# managed_service_data: "ManagedServiceData",
|
1353
1427
|
# },
|
1354
1428
|
# resource_type: "ResourceType", # required
|
@@ -1381,7 +1455,7 @@ module Aws::FMS
|
|
1381
1455
|
# resp.policy.policy_id #=> String
|
1382
1456
|
# resp.policy.policy_name #=> String
|
1383
1457
|
# resp.policy.policy_update_token #=> String
|
1384
|
-
# 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"
|
1385
1459
|
# resp.policy.security_service_policy_data.managed_service_data #=> String
|
1386
1460
|
# resp.policy.resource_type #=> String
|
1387
1461
|
# resp.policy.resource_type_list #=> Array
|
@@ -1540,7 +1614,7 @@ module Aws::FMS
|
|
1540
1614
|
params: params,
|
1541
1615
|
config: config)
|
1542
1616
|
context[:gem_name] = 'aws-sdk-fms'
|
1543
|
-
context[:gem_version] = '1.
|
1617
|
+
context[:gem_version] = '1.34.0'
|
1544
1618
|
Seahorse::Client::Request.new(handlers, context)
|
1545
1619
|
end
|
1546
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.34.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:
|
11
|
+
date: 2021-02-02 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.
|
22
|
+
version: 3.112.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.
|
32
|
+
version: 3.112.0
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: aws-sigv4
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|