@aws-solutions-constructs/aws-wafwebacl-appsync 2.51.0 → 2.52.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.
Files changed (25) hide show
  1. package/.eslintignore +3 -1
  2. package/.jsii +49 -4
  3. package/integ.config.json +7 -0
  4. package/lib/index.js +1 -1
  5. package/package.json +9 -8
  6. package/test/integ.wafaps-no-arguments.js +5 -2
  7. package/test/integ.wafaps-no-arguments.js.snapshot/cdk.out +1 -0
  8. package/test/integ.wafaps-no-arguments.js.snapshot/integ.json +12 -0
  9. package/test/integ.wafaps-no-arguments.js.snapshot/manifest.json +125 -0
  10. package/test/integ.wafaps-no-arguments.js.snapshot/tree.json +301 -0
  11. package/test/integ.wafaps-no-arguments.js.snapshot/wafaps-no-arguments.assets.json +19 -0
  12. package/test/integ.wafaps-no-arguments.js.snapshot/wafaps-no-arguments.template.json +204 -0
  13. package/test/integ.wafaps-no-arguments.js.snapshot/wafapsnoargumentsIntegDefaultTestDeployAssertF5B21BFB.assets.json +19 -0
  14. package/test/integ.wafaps-no-arguments.js.snapshot/wafapsnoargumentsIntegDefaultTestDeployAssertF5B21BFB.template.json +36 -0
  15. package/test/integ.wafaps-partial-arguments.js +5 -2
  16. package/test/integ.wafaps-partial-arguments.js.snapshot/cdk.out +1 -0
  17. package/test/integ.wafaps-partial-arguments.js.snapshot/integ.json +12 -0
  18. package/test/integ.wafaps-partial-arguments.js.snapshot/manifest.json +125 -0
  19. package/test/integ.wafaps-partial-arguments.js.snapshot/tree.json +302 -0
  20. package/test/integ.wafaps-partial-arguments.js.snapshot/wafaps-partial-arguments.assets.json +19 -0
  21. package/test/integ.wafaps-partial-arguments.js.snapshot/wafaps-partial-arguments.template.json +205 -0
  22. package/test/integ.wafaps-partial-arguments.js.snapshot/wafapspartialargumentsIntegDefaultTestDeployAssert5B8DF79A.assets.json +19 -0
  23. package/test/integ.wafaps-partial-arguments.js.snapshot/wafapspartialargumentsIntegDefaultTestDeployAssert5B8DF79A.template.json +36 -0
  24. package/test/integ.wafaps-no-arguments.expected.json +0 -204
  25. package/test/integ.wafaps-partial-arguments.expected.json +0 -205
@@ -0,0 +1,302 @@
1
+ {
2
+ "version": "tree-0.1",
3
+ "tree": {
4
+ "id": "App",
5
+ "path": "",
6
+ "children": {
7
+ "wafaps-partial-arguments": {
8
+ "id": "wafaps-partial-arguments",
9
+ "path": "wafaps-partial-arguments",
10
+ "children": {
11
+ "new-graphql-api": {
12
+ "id": "new-graphql-api",
13
+ "path": "wafaps-partial-arguments/new-graphql-api",
14
+ "attributes": {
15
+ "aws:cdk:cloudformation:type": "AWS::AppSync::GraphQLApi",
16
+ "aws:cdk:cloudformation:props": {
17
+ "authenticationType": "API_KEY",
18
+ "name": "api"
19
+ }
20
+ },
21
+ "constructInfo": {
22
+ "fqn": "aws-cdk-lib.aws_appsync.CfnGraphQLApi",
23
+ "version": "2.118.0"
24
+ }
25
+ },
26
+ "test-wafwebacl-appsync": {
27
+ "id": "test-wafwebacl-appsync",
28
+ "path": "wafaps-partial-arguments/test-wafwebacl-appsync",
29
+ "children": {
30
+ "test-wafwebacl-appsync-WebACL": {
31
+ "id": "test-wafwebacl-appsync-WebACL",
32
+ "path": "wafaps-partial-arguments/test-wafwebacl-appsync/test-wafwebacl-appsync-WebACL",
33
+ "attributes": {
34
+ "aws:cdk:cloudformation:type": "AWS::WAFv2::WebACL",
35
+ "aws:cdk:cloudformation:props": {
36
+ "defaultAction": {
37
+ "allow": {}
38
+ },
39
+ "name": "test-name-appsync",
40
+ "rules": [
41
+ {
42
+ "name": "AWS-AWSManagedRulesBotControlRuleSet",
43
+ "priority": 0,
44
+ "overrideAction": {
45
+ "none": {}
46
+ },
47
+ "statement": {
48
+ "managedRuleGroupStatement": {
49
+ "name": "AWSManagedRulesBotControlRuleSet",
50
+ "vendorName": "AWS"
51
+ }
52
+ },
53
+ "visibilityConfig": {
54
+ "cloudWatchMetricsEnabled": true,
55
+ "metricName": "AWSManagedRulesBotControlRuleSet",
56
+ "sampledRequestsEnabled": true
57
+ }
58
+ },
59
+ {
60
+ "name": "AWS-AWSManagedRulesKnownBadInputsRuleSet",
61
+ "priority": 1,
62
+ "overrideAction": {
63
+ "none": {}
64
+ },
65
+ "statement": {
66
+ "managedRuleGroupStatement": {
67
+ "name": "AWSManagedRulesKnownBadInputsRuleSet",
68
+ "vendorName": "AWS"
69
+ }
70
+ },
71
+ "visibilityConfig": {
72
+ "cloudWatchMetricsEnabled": true,
73
+ "metricName": "AWSManagedRulesKnownBadInputsRuleSet",
74
+ "sampledRequestsEnabled": true
75
+ }
76
+ },
77
+ {
78
+ "name": "AWS-AWSManagedRulesCommonRuleSet",
79
+ "priority": 2,
80
+ "overrideAction": {
81
+ "none": {}
82
+ },
83
+ "statement": {
84
+ "managedRuleGroupStatement": {
85
+ "name": "AWSManagedRulesCommonRuleSet",
86
+ "vendorName": "AWS"
87
+ }
88
+ },
89
+ "visibilityConfig": {
90
+ "cloudWatchMetricsEnabled": true,
91
+ "metricName": "AWSManagedRulesCommonRuleSet",
92
+ "sampledRequestsEnabled": true
93
+ }
94
+ },
95
+ {
96
+ "name": "AWS-AWSManagedRulesAnonymousIpList",
97
+ "priority": 3,
98
+ "overrideAction": {
99
+ "none": {}
100
+ },
101
+ "statement": {
102
+ "managedRuleGroupStatement": {
103
+ "name": "AWSManagedRulesAnonymousIpList",
104
+ "vendorName": "AWS"
105
+ }
106
+ },
107
+ "visibilityConfig": {
108
+ "cloudWatchMetricsEnabled": true,
109
+ "metricName": "AWSManagedRulesAnonymousIpList",
110
+ "sampledRequestsEnabled": true
111
+ }
112
+ },
113
+ {
114
+ "name": "AWS-AWSManagedRulesAmazonIpReputationList",
115
+ "priority": 4,
116
+ "overrideAction": {
117
+ "none": {}
118
+ },
119
+ "statement": {
120
+ "managedRuleGroupStatement": {
121
+ "name": "AWSManagedRulesAmazonIpReputationList",
122
+ "vendorName": "AWS"
123
+ }
124
+ },
125
+ "visibilityConfig": {
126
+ "cloudWatchMetricsEnabled": true,
127
+ "metricName": "AWSManagedRulesAmazonIpReputationList",
128
+ "sampledRequestsEnabled": true
129
+ }
130
+ },
131
+ {
132
+ "name": "AWS-AWSManagedRulesAdminProtectionRuleSet",
133
+ "priority": 5,
134
+ "overrideAction": {
135
+ "none": {}
136
+ },
137
+ "statement": {
138
+ "managedRuleGroupStatement": {
139
+ "name": "AWSManagedRulesAdminProtectionRuleSet",
140
+ "vendorName": "AWS"
141
+ }
142
+ },
143
+ "visibilityConfig": {
144
+ "cloudWatchMetricsEnabled": true,
145
+ "metricName": "AWSManagedRulesAdminProtectionRuleSet",
146
+ "sampledRequestsEnabled": true
147
+ }
148
+ },
149
+ {
150
+ "name": "AWS-AWSManagedRulesSQLiRuleSet",
151
+ "priority": 6,
152
+ "overrideAction": {
153
+ "none": {}
154
+ },
155
+ "statement": {
156
+ "managedRuleGroupStatement": {
157
+ "name": "AWSManagedRulesSQLiRuleSet",
158
+ "vendorName": "AWS"
159
+ }
160
+ },
161
+ "visibilityConfig": {
162
+ "cloudWatchMetricsEnabled": true,
163
+ "metricName": "AWSManagedRulesSQLiRuleSet",
164
+ "sampledRequestsEnabled": true
165
+ }
166
+ }
167
+ ],
168
+ "scope": "REGIONAL",
169
+ "visibilityConfig": {
170
+ "cloudWatchMetricsEnabled": true,
171
+ "metricName": "webACL",
172
+ "sampledRequestsEnabled": true
173
+ }
174
+ }
175
+ },
176
+ "constructInfo": {
177
+ "fqn": "aws-cdk-lib.aws_wafv2.CfnWebACL",
178
+ "version": "2.118.0"
179
+ }
180
+ }
181
+ },
182
+ "constructInfo": {
183
+ "fqn": "@aws-solutions-constructs/aws-wafwebacl-appsync.WafwebaclToAppsync",
184
+ "version": "2.50.0"
185
+ }
186
+ },
187
+ "test-wafwebacl-appsync-WebACLAssociation": {
188
+ "id": "test-wafwebacl-appsync-WebACLAssociation",
189
+ "path": "wafaps-partial-arguments/test-wafwebacl-appsync-WebACLAssociation",
190
+ "attributes": {
191
+ "aws:cdk:cloudformation:type": "AWS::WAFv2::WebACLAssociation",
192
+ "aws:cdk:cloudformation:props": {
193
+ "resourceArn": {
194
+ "Fn::GetAtt": [
195
+ "newgraphqlapi",
196
+ "Arn"
197
+ ]
198
+ },
199
+ "webAclArn": {
200
+ "Fn::GetAtt": [
201
+ "testwafwebaclappsynctestwafwebaclappsyncWebACLA64C38D0",
202
+ "Arn"
203
+ ]
204
+ }
205
+ }
206
+ },
207
+ "constructInfo": {
208
+ "fqn": "aws-cdk-lib.aws_wafv2.CfnWebACLAssociation",
209
+ "version": "2.118.0"
210
+ }
211
+ },
212
+ "Integ": {
213
+ "id": "Integ",
214
+ "path": "wafaps-partial-arguments/Integ",
215
+ "children": {
216
+ "DefaultTest": {
217
+ "id": "DefaultTest",
218
+ "path": "wafaps-partial-arguments/Integ/DefaultTest",
219
+ "children": {
220
+ "Default": {
221
+ "id": "Default",
222
+ "path": "wafaps-partial-arguments/Integ/DefaultTest/Default",
223
+ "constructInfo": {
224
+ "fqn": "constructs.Construct",
225
+ "version": "10.0.0"
226
+ }
227
+ },
228
+ "DeployAssert": {
229
+ "id": "DeployAssert",
230
+ "path": "wafaps-partial-arguments/Integ/DefaultTest/DeployAssert",
231
+ "children": {
232
+ "BootstrapVersion": {
233
+ "id": "BootstrapVersion",
234
+ "path": "wafaps-partial-arguments/Integ/DefaultTest/DeployAssert/BootstrapVersion",
235
+ "constructInfo": {
236
+ "fqn": "aws-cdk-lib.CfnParameter",
237
+ "version": "2.118.0"
238
+ }
239
+ },
240
+ "CheckBootstrapVersion": {
241
+ "id": "CheckBootstrapVersion",
242
+ "path": "wafaps-partial-arguments/Integ/DefaultTest/DeployAssert/CheckBootstrapVersion",
243
+ "constructInfo": {
244
+ "fqn": "aws-cdk-lib.CfnRule",
245
+ "version": "2.118.0"
246
+ }
247
+ }
248
+ },
249
+ "constructInfo": {
250
+ "fqn": "aws-cdk-lib.Stack",
251
+ "version": "2.118.0"
252
+ }
253
+ }
254
+ },
255
+ "constructInfo": {
256
+ "fqn": "@aws-cdk/integ-tests-alpha.IntegTestCase",
257
+ "version": "2.118.0-alpha.0"
258
+ }
259
+ }
260
+ },
261
+ "constructInfo": {
262
+ "fqn": "@aws-cdk/integ-tests-alpha.IntegTest",
263
+ "version": "2.118.0-alpha.0"
264
+ }
265
+ },
266
+ "BootstrapVersion": {
267
+ "id": "BootstrapVersion",
268
+ "path": "wafaps-partial-arguments/BootstrapVersion",
269
+ "constructInfo": {
270
+ "fqn": "aws-cdk-lib.CfnParameter",
271
+ "version": "2.118.0"
272
+ }
273
+ },
274
+ "CheckBootstrapVersion": {
275
+ "id": "CheckBootstrapVersion",
276
+ "path": "wafaps-partial-arguments/CheckBootstrapVersion",
277
+ "constructInfo": {
278
+ "fqn": "aws-cdk-lib.CfnRule",
279
+ "version": "2.118.0"
280
+ }
281
+ }
282
+ },
283
+ "constructInfo": {
284
+ "fqn": "aws-cdk-lib.Stack",
285
+ "version": "2.118.0"
286
+ }
287
+ },
288
+ "Tree": {
289
+ "id": "Tree",
290
+ "path": "Tree",
291
+ "constructInfo": {
292
+ "fqn": "constructs.Construct",
293
+ "version": "10.0.0"
294
+ }
295
+ }
296
+ },
297
+ "constructInfo": {
298
+ "fqn": "aws-cdk-lib.App",
299
+ "version": "2.118.0"
300
+ }
301
+ }
302
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "version": "36.0.0",
3
+ "files": {
4
+ "d82edc5fc1602e03b35e750d1fc3ed584bf205204a1b876d0040de346fa6ed1e": {
5
+ "source": {
6
+ "path": "wafaps-partial-arguments.template.json",
7
+ "packaging": "file"
8
+ },
9
+ "destinations": {
10
+ "current_account-current_region": {
11
+ "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
12
+ "objectKey": "d82edc5fc1602e03b35e750d1fc3ed584bf205204a1b876d0040de346fa6ed1e.json",
13
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
14
+ }
15
+ }
16
+ }
17
+ },
18
+ "dockerImages": {}
19
+ }
@@ -0,0 +1,205 @@
1
+ {
2
+ "Resources": {
3
+ "newgraphqlapi": {
4
+ "Type": "AWS::AppSync::GraphQLApi",
5
+ "Properties": {
6
+ "AuthenticationType": "API_KEY",
7
+ "Name": "api"
8
+ }
9
+ },
10
+ "testwafwebaclappsynctestwafwebaclappsyncWebACLA64C38D0": {
11
+ "Type": "AWS::WAFv2::WebACL",
12
+ "Properties": {
13
+ "DefaultAction": {
14
+ "Allow": {}
15
+ },
16
+ "Name": "test-name-appsync",
17
+ "Rules": [
18
+ {
19
+ "Name": "AWS-AWSManagedRulesBotControlRuleSet",
20
+ "OverrideAction": {
21
+ "None": {}
22
+ },
23
+ "Priority": 0,
24
+ "Statement": {
25
+ "ManagedRuleGroupStatement": {
26
+ "Name": "AWSManagedRulesBotControlRuleSet",
27
+ "VendorName": "AWS"
28
+ }
29
+ },
30
+ "VisibilityConfig": {
31
+ "CloudWatchMetricsEnabled": true,
32
+ "MetricName": "AWSManagedRulesBotControlRuleSet",
33
+ "SampledRequestsEnabled": true
34
+ }
35
+ },
36
+ {
37
+ "Name": "AWS-AWSManagedRulesKnownBadInputsRuleSet",
38
+ "OverrideAction": {
39
+ "None": {}
40
+ },
41
+ "Priority": 1,
42
+ "Statement": {
43
+ "ManagedRuleGroupStatement": {
44
+ "Name": "AWSManagedRulesKnownBadInputsRuleSet",
45
+ "VendorName": "AWS"
46
+ }
47
+ },
48
+ "VisibilityConfig": {
49
+ "CloudWatchMetricsEnabled": true,
50
+ "MetricName": "AWSManagedRulesKnownBadInputsRuleSet",
51
+ "SampledRequestsEnabled": true
52
+ }
53
+ },
54
+ {
55
+ "Name": "AWS-AWSManagedRulesCommonRuleSet",
56
+ "OverrideAction": {
57
+ "None": {}
58
+ },
59
+ "Priority": 2,
60
+ "Statement": {
61
+ "ManagedRuleGroupStatement": {
62
+ "Name": "AWSManagedRulesCommonRuleSet",
63
+ "VendorName": "AWS"
64
+ }
65
+ },
66
+ "VisibilityConfig": {
67
+ "CloudWatchMetricsEnabled": true,
68
+ "MetricName": "AWSManagedRulesCommonRuleSet",
69
+ "SampledRequestsEnabled": true
70
+ }
71
+ },
72
+ {
73
+ "Name": "AWS-AWSManagedRulesAnonymousIpList",
74
+ "OverrideAction": {
75
+ "None": {}
76
+ },
77
+ "Priority": 3,
78
+ "Statement": {
79
+ "ManagedRuleGroupStatement": {
80
+ "Name": "AWSManagedRulesAnonymousIpList",
81
+ "VendorName": "AWS"
82
+ }
83
+ },
84
+ "VisibilityConfig": {
85
+ "CloudWatchMetricsEnabled": true,
86
+ "MetricName": "AWSManagedRulesAnonymousIpList",
87
+ "SampledRequestsEnabled": true
88
+ }
89
+ },
90
+ {
91
+ "Name": "AWS-AWSManagedRulesAmazonIpReputationList",
92
+ "OverrideAction": {
93
+ "None": {}
94
+ },
95
+ "Priority": 4,
96
+ "Statement": {
97
+ "ManagedRuleGroupStatement": {
98
+ "Name": "AWSManagedRulesAmazonIpReputationList",
99
+ "VendorName": "AWS"
100
+ }
101
+ },
102
+ "VisibilityConfig": {
103
+ "CloudWatchMetricsEnabled": true,
104
+ "MetricName": "AWSManagedRulesAmazonIpReputationList",
105
+ "SampledRequestsEnabled": true
106
+ }
107
+ },
108
+ {
109
+ "Name": "AWS-AWSManagedRulesAdminProtectionRuleSet",
110
+ "OverrideAction": {
111
+ "None": {}
112
+ },
113
+ "Priority": 5,
114
+ "Statement": {
115
+ "ManagedRuleGroupStatement": {
116
+ "Name": "AWSManagedRulesAdminProtectionRuleSet",
117
+ "VendorName": "AWS"
118
+ }
119
+ },
120
+ "VisibilityConfig": {
121
+ "CloudWatchMetricsEnabled": true,
122
+ "MetricName": "AWSManagedRulesAdminProtectionRuleSet",
123
+ "SampledRequestsEnabled": true
124
+ }
125
+ },
126
+ {
127
+ "Name": "AWS-AWSManagedRulesSQLiRuleSet",
128
+ "OverrideAction": {
129
+ "None": {}
130
+ },
131
+ "Priority": 6,
132
+ "Statement": {
133
+ "ManagedRuleGroupStatement": {
134
+ "Name": "AWSManagedRulesSQLiRuleSet",
135
+ "VendorName": "AWS"
136
+ }
137
+ },
138
+ "VisibilityConfig": {
139
+ "CloudWatchMetricsEnabled": true,
140
+ "MetricName": "AWSManagedRulesSQLiRuleSet",
141
+ "SampledRequestsEnabled": true
142
+ }
143
+ }
144
+ ],
145
+ "Scope": "REGIONAL",
146
+ "VisibilityConfig": {
147
+ "CloudWatchMetricsEnabled": true,
148
+ "MetricName": "webACL",
149
+ "SampledRequestsEnabled": true
150
+ }
151
+ }
152
+ },
153
+ "testwafwebaclappsyncWebACLAssociation": {
154
+ "Type": "AWS::WAFv2::WebACLAssociation",
155
+ "Properties": {
156
+ "ResourceArn": {
157
+ "Fn::GetAtt": [
158
+ "newgraphqlapi",
159
+ "Arn"
160
+ ]
161
+ },
162
+ "WebACLArn": {
163
+ "Fn::GetAtt": [
164
+ "testwafwebaclappsynctestwafwebaclappsyncWebACLA64C38D0",
165
+ "Arn"
166
+ ]
167
+ }
168
+ }
169
+ }
170
+ },
171
+ "Parameters": {
172
+ "BootstrapVersion": {
173
+ "Type": "AWS::SSM::Parameter::Value<String>",
174
+ "Default": "/cdk-bootstrap/hnb659fds/version",
175
+ "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
176
+ }
177
+ },
178
+ "Rules": {
179
+ "CheckBootstrapVersion": {
180
+ "Assertions": [
181
+ {
182
+ "Assert": {
183
+ "Fn::Not": [
184
+ {
185
+ "Fn::Contains": [
186
+ [
187
+ "1",
188
+ "2",
189
+ "3",
190
+ "4",
191
+ "5"
192
+ ],
193
+ {
194
+ "Ref": "BootstrapVersion"
195
+ }
196
+ ]
197
+ }
198
+ ]
199
+ },
200
+ "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."
201
+ }
202
+ ]
203
+ }
204
+ }
205
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "version": "36.0.0",
3
+ "files": {
4
+ "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": {
5
+ "source": {
6
+ "path": "wafapspartialargumentsIntegDefaultTestDeployAssert5B8DF79A.template.json",
7
+ "packaging": "file"
8
+ },
9
+ "destinations": {
10
+ "current_account-current_region": {
11
+ "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
12
+ "objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json",
13
+ "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
14
+ }
15
+ }
16
+ }
17
+ },
18
+ "dockerImages": {}
19
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "Parameters": {
3
+ "BootstrapVersion": {
4
+ "Type": "AWS::SSM::Parameter::Value<String>",
5
+ "Default": "/cdk-bootstrap/hnb659fds/version",
6
+ "Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
7
+ }
8
+ },
9
+ "Rules": {
10
+ "CheckBootstrapVersion": {
11
+ "Assertions": [
12
+ {
13
+ "Assert": {
14
+ "Fn::Not": [
15
+ {
16
+ "Fn::Contains": [
17
+ [
18
+ "1",
19
+ "2",
20
+ "3",
21
+ "4",
22
+ "5"
23
+ ],
24
+ {
25
+ "Ref": "BootstrapVersion"
26
+ }
27
+ ]
28
+ }
29
+ ]
30
+ },
31
+ "AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."
32
+ }
33
+ ]
34
+ }
35
+ }
36
+ }