@mavogel/awscdk-rootmail 0.0.201 → 0.0.202
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.
- package/.jsii +3 -3
- package/lib/rootmail.js +1 -1
- package/lib/ses-receive.js +1 -1
- package/node_modules/cdk-nag/.jsii +47 -54
- package/node_modules/cdk-nag/RULES.md +3 -5
- package/node_modules/cdk-nag/lib/ignore-suppression-conditions.js +5 -5
- package/node_modules/cdk-nag/lib/nag-logger.js +2 -2
- package/node_modules/cdk-nag/lib/nag-pack.js +1 -1
- package/node_modules/cdk-nag/lib/nag-rules.js +1 -1
- package/node_modules/cdk-nag/lib/nag-suppressions.js +1 -1
- package/node_modules/cdk-nag/lib/packs/aws-solutions.js +2 -19
- package/node_modules/cdk-nag/lib/packs/hipaa-security.js +1 -1
- package/node_modules/cdk-nag/lib/packs/nist-800-53-r4.js +1 -1
- package/node_modules/cdk-nag/lib/packs/nist-800-53-r5.js +1 -1
- package/node_modules/cdk-nag/lib/packs/pci-dss-321.js +1 -1
- package/node_modules/cdk-nag/lib/rules/codebuild/index.d.ts +0 -1
- package/node_modules/cdk-nag/lib/rules/codebuild/index.js +1 -3
- package/node_modules/cdk-nag/lib/rules/index.d.ts +0 -1
- package/node_modules/cdk-nag/lib/rules/index.js +1 -2
- package/node_modules/cdk-nag/package.json +1 -1
- package/package.json +3 -3
- package/node_modules/cdk-nag/lib/rules/athena/AthenaWorkgroupEncryptedQueryResults.d.ts +0 -6
- package/node_modules/cdk-nag/lib/rules/athena/AthenaWorkgroupEncryptedQueryResults.js +0 -36
- package/node_modules/cdk-nag/lib/rules/athena/index.d.ts +0 -1
- package/node_modules/cdk-nag/lib/rules/athena/index.js +0 -9
- package/node_modules/cdk-nag/lib/rules/codebuild/CodeBuildProjectPrivilegedModeDisabled.d.ts +0 -6
- package/node_modules/cdk-nag/lib/rules/codebuild/CodeBuildProjectPrivilegedModeDisabled.js +0 -28
package/.jsii
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"@aws-sdk/client-ssm": "^3.687.0",
|
|
15
15
|
"async-retry": "^1.3.3",
|
|
16
16
|
"axios": "^1.7.7",
|
|
17
|
-
"cdk-nag": "^2.
|
|
17
|
+
"cdk-nag": "^2.33.1",
|
|
18
18
|
"mailparser": "^3.7.1",
|
|
19
19
|
"uuid": "^9.0.1"
|
|
20
20
|
},
|
|
@@ -3877,6 +3877,6 @@
|
|
|
3877
3877
|
"symbolId": "src/ses-receive:SESReceiveProps"
|
|
3878
3878
|
}
|
|
3879
3879
|
},
|
|
3880
|
-
"version": "0.0.
|
|
3881
|
-
"fingerprint": "
|
|
3880
|
+
"version": "0.0.202",
|
|
3881
|
+
"fingerprint": "YP9qymhxWe/5PGGE5X37QLzvkQngddTsrzUp1Qs3WFI="
|
|
3882
3882
|
}
|
package/lib/rootmail.js
CHANGED
|
@@ -74,7 +74,7 @@ class Rootmail extends constructs_1.Construct {
|
|
|
74
74
|
}
|
|
75
75
|
exports.Rootmail = Rootmail;
|
|
76
76
|
_a = JSII_RTTI_SYMBOL_1;
|
|
77
|
-
Rootmail[_a] = { fqn: "@mavogel/awscdk-rootmail.Rootmail", version: "0.0.
|
|
77
|
+
Rootmail[_a] = { fqn: "@mavogel/awscdk-rootmail.Rootmail", version: "0.0.202" };
|
|
78
78
|
/**
|
|
79
79
|
* Aspect for setting all removal policies to DESTROY
|
|
80
80
|
*/
|
package/lib/ses-receive.js
CHANGED
|
@@ -129,7 +129,7 @@ class SESReceive extends constructs_1.Construct {
|
|
|
129
129
|
}
|
|
130
130
|
exports.SESReceive = SESReceive;
|
|
131
131
|
_a = JSII_RTTI_SYMBOL_1;
|
|
132
|
-
SESReceive[_a] = { fqn: "@mavogel/awscdk-rootmail.SESReceive", version: "0.0.
|
|
132
|
+
SESReceive[_a] = { fqn: "@mavogel/awscdk-rootmail.SESReceive", version: "0.0.202" };
|
|
133
133
|
/**
|
|
134
134
|
* Aspect for setting all removal policies to DESTROY
|
|
135
135
|
*/
|
|
@@ -3878,304 +3878,297 @@
|
|
|
3878
3878
|
},
|
|
3879
3879
|
"symbolId": "src/rules/appsync/index:"
|
|
3880
3880
|
},
|
|
3881
|
-
"cdk-nag.rules.athena": {
|
|
3882
|
-
"locationInModule": {
|
|
3883
|
-
"filename": "src/rules/index.ts",
|
|
3884
|
-
"line": 7
|
|
3885
|
-
},
|
|
3886
|
-
"symbolId": "src/rules/athena/index:"
|
|
3887
|
-
},
|
|
3888
3881
|
"cdk-nag.rules.autoscaling": {
|
|
3889
3882
|
"locationInModule": {
|
|
3890
3883
|
"filename": "src/rules/index.ts",
|
|
3891
|
-
"line":
|
|
3884
|
+
"line": 7
|
|
3892
3885
|
},
|
|
3893
3886
|
"symbolId": "src/rules/autoscaling/index:"
|
|
3894
3887
|
},
|
|
3895
3888
|
"cdk-nag.rules.cloud9": {
|
|
3896
3889
|
"locationInModule": {
|
|
3897
3890
|
"filename": "src/rules/index.ts",
|
|
3898
|
-
"line":
|
|
3891
|
+
"line": 8
|
|
3899
3892
|
},
|
|
3900
3893
|
"symbolId": "src/rules/cloud9/index:"
|
|
3901
3894
|
},
|
|
3902
3895
|
"cdk-nag.rules.cloudfront": {
|
|
3903
3896
|
"locationInModule": {
|
|
3904
3897
|
"filename": "src/rules/index.ts",
|
|
3905
|
-
"line":
|
|
3898
|
+
"line": 9
|
|
3906
3899
|
},
|
|
3907
3900
|
"symbolId": "src/rules/cloudfront/index:"
|
|
3908
3901
|
},
|
|
3909
3902
|
"cdk-nag.rules.cloudtrail": {
|
|
3910
3903
|
"locationInModule": {
|
|
3911
3904
|
"filename": "src/rules/index.ts",
|
|
3912
|
-
"line":
|
|
3905
|
+
"line": 10
|
|
3913
3906
|
},
|
|
3914
3907
|
"symbolId": "src/rules/cloudtrail/index:"
|
|
3915
3908
|
},
|
|
3916
3909
|
"cdk-nag.rules.cloudwatch": {
|
|
3917
3910
|
"locationInModule": {
|
|
3918
3911
|
"filename": "src/rules/index.ts",
|
|
3919
|
-
"line":
|
|
3912
|
+
"line": 11
|
|
3920
3913
|
},
|
|
3921
3914
|
"symbolId": "src/rules/cloudwatch/index:"
|
|
3922
3915
|
},
|
|
3923
3916
|
"cdk-nag.rules.codebuild": {
|
|
3924
3917
|
"locationInModule": {
|
|
3925
3918
|
"filename": "src/rules/index.ts",
|
|
3926
|
-
"line":
|
|
3919
|
+
"line": 12
|
|
3927
3920
|
},
|
|
3928
3921
|
"symbolId": "src/rules/codebuild/index:"
|
|
3929
3922
|
},
|
|
3930
3923
|
"cdk-nag.rules.cognito": {
|
|
3931
3924
|
"locationInModule": {
|
|
3932
3925
|
"filename": "src/rules/index.ts",
|
|
3933
|
-
"line":
|
|
3926
|
+
"line": 13
|
|
3934
3927
|
},
|
|
3935
3928
|
"symbolId": "src/rules/cognito/index:"
|
|
3936
3929
|
},
|
|
3937
3930
|
"cdk-nag.rules.dms": {
|
|
3938
3931
|
"locationInModule": {
|
|
3939
3932
|
"filename": "src/rules/index.ts",
|
|
3940
|
-
"line":
|
|
3933
|
+
"line": 14
|
|
3941
3934
|
},
|
|
3942
3935
|
"symbolId": "src/rules/dms/index:"
|
|
3943
3936
|
},
|
|
3944
3937
|
"cdk-nag.rules.documentdb": {
|
|
3945
3938
|
"locationInModule": {
|
|
3946
3939
|
"filename": "src/rules/index.ts",
|
|
3947
|
-
"line":
|
|
3940
|
+
"line": 15
|
|
3948
3941
|
},
|
|
3949
3942
|
"symbolId": "src/rules/documentdb/index:"
|
|
3950
3943
|
},
|
|
3951
3944
|
"cdk-nag.rules.dynamodb": {
|
|
3952
3945
|
"locationInModule": {
|
|
3953
3946
|
"filename": "src/rules/index.ts",
|
|
3954
|
-
"line":
|
|
3947
|
+
"line": 16
|
|
3955
3948
|
},
|
|
3956
3949
|
"symbolId": "src/rules/dynamodb/index:"
|
|
3957
3950
|
},
|
|
3958
3951
|
"cdk-nag.rules.ec2": {
|
|
3959
3952
|
"locationInModule": {
|
|
3960
3953
|
"filename": "src/rules/index.ts",
|
|
3961
|
-
"line":
|
|
3954
|
+
"line": 17
|
|
3962
3955
|
},
|
|
3963
3956
|
"symbolId": "src/rules/ec2/index:"
|
|
3964
3957
|
},
|
|
3965
3958
|
"cdk-nag.rules.ecr": {
|
|
3966
3959
|
"locationInModule": {
|
|
3967
3960
|
"filename": "src/rules/index.ts",
|
|
3968
|
-
"line":
|
|
3961
|
+
"line": 18
|
|
3969
3962
|
},
|
|
3970
3963
|
"symbolId": "src/rules/ecr/index:"
|
|
3971
3964
|
},
|
|
3972
3965
|
"cdk-nag.rules.ecs": {
|
|
3973
3966
|
"locationInModule": {
|
|
3974
3967
|
"filename": "src/rules/index.ts",
|
|
3975
|
-
"line":
|
|
3968
|
+
"line": 19
|
|
3976
3969
|
},
|
|
3977
3970
|
"symbolId": "src/rules/ecs/index:"
|
|
3978
3971
|
},
|
|
3979
3972
|
"cdk-nag.rules.efs": {
|
|
3980
3973
|
"locationInModule": {
|
|
3981
3974
|
"filename": "src/rules/index.ts",
|
|
3982
|
-
"line":
|
|
3975
|
+
"line": 21
|
|
3983
3976
|
},
|
|
3984
3977
|
"symbolId": "src/rules/efs/index:"
|
|
3985
3978
|
},
|
|
3986
3979
|
"cdk-nag.rules.eks": {
|
|
3987
3980
|
"locationInModule": {
|
|
3988
3981
|
"filename": "src/rules/index.ts",
|
|
3989
|
-
"line":
|
|
3982
|
+
"line": 20
|
|
3990
3983
|
},
|
|
3991
3984
|
"symbolId": "src/rules/eks/index:"
|
|
3992
3985
|
},
|
|
3993
3986
|
"cdk-nag.rules.elasticache": {
|
|
3994
3987
|
"locationInModule": {
|
|
3995
3988
|
"filename": "src/rules/index.ts",
|
|
3996
|
-
"line":
|
|
3989
|
+
"line": 22
|
|
3997
3990
|
},
|
|
3998
3991
|
"symbolId": "src/rules/elasticache/index:"
|
|
3999
3992
|
},
|
|
4000
3993
|
"cdk-nag.rules.elasticbeanstalk": {
|
|
4001
3994
|
"locationInModule": {
|
|
4002
3995
|
"filename": "src/rules/index.ts",
|
|
4003
|
-
"line":
|
|
3996
|
+
"line": 23
|
|
4004
3997
|
},
|
|
4005
3998
|
"symbolId": "src/rules/elasticbeanstalk/index:"
|
|
4006
3999
|
},
|
|
4007
4000
|
"cdk-nag.rules.elb": {
|
|
4008
4001
|
"locationInModule": {
|
|
4009
4002
|
"filename": "src/rules/index.ts",
|
|
4010
|
-
"line":
|
|
4003
|
+
"line": 24
|
|
4011
4004
|
},
|
|
4012
4005
|
"symbolId": "src/rules/elb/index:"
|
|
4013
4006
|
},
|
|
4014
4007
|
"cdk-nag.rules.emr": {
|
|
4015
4008
|
"locationInModule": {
|
|
4016
4009
|
"filename": "src/rules/index.ts",
|
|
4017
|
-
"line":
|
|
4010
|
+
"line": 25
|
|
4018
4011
|
},
|
|
4019
4012
|
"symbolId": "src/rules/emr/index:"
|
|
4020
4013
|
},
|
|
4021
4014
|
"cdk-nag.rules.eventbridge": {
|
|
4022
4015
|
"locationInModule": {
|
|
4023
4016
|
"filename": "src/rules/index.ts",
|
|
4024
|
-
"line":
|
|
4017
|
+
"line": 26
|
|
4025
4018
|
},
|
|
4026
4019
|
"symbolId": "src/rules/eventbridge/index:"
|
|
4027
4020
|
},
|
|
4028
4021
|
"cdk-nag.rules.glue": {
|
|
4029
4022
|
"locationInModule": {
|
|
4030
4023
|
"filename": "src/rules/index.ts",
|
|
4031
|
-
"line":
|
|
4024
|
+
"line": 27
|
|
4032
4025
|
},
|
|
4033
4026
|
"symbolId": "src/rules/glue/index:"
|
|
4034
4027
|
},
|
|
4035
4028
|
"cdk-nag.rules.iam": {
|
|
4036
4029
|
"locationInModule": {
|
|
4037
4030
|
"filename": "src/rules/index.ts",
|
|
4038
|
-
"line":
|
|
4031
|
+
"line": 28
|
|
4039
4032
|
},
|
|
4040
4033
|
"symbolId": "src/rules/iam/index:"
|
|
4041
4034
|
},
|
|
4042
4035
|
"cdk-nag.rules.kinesis": {
|
|
4043
4036
|
"locationInModule": {
|
|
4044
4037
|
"filename": "src/rules/index.ts",
|
|
4045
|
-
"line":
|
|
4038
|
+
"line": 29
|
|
4046
4039
|
},
|
|
4047
4040
|
"symbolId": "src/rules/kinesis/index:"
|
|
4048
4041
|
},
|
|
4049
4042
|
"cdk-nag.rules.kms": {
|
|
4050
4043
|
"locationInModule": {
|
|
4051
4044
|
"filename": "src/rules/index.ts",
|
|
4052
|
-
"line":
|
|
4045
|
+
"line": 30
|
|
4053
4046
|
},
|
|
4054
4047
|
"symbolId": "src/rules/kms/index:"
|
|
4055
4048
|
},
|
|
4056
4049
|
"cdk-nag.rules.lambda": {
|
|
4057
4050
|
"locationInModule": {
|
|
4058
4051
|
"filename": "src/rules/index.ts",
|
|
4059
|
-
"line":
|
|
4052
|
+
"line": 31
|
|
4060
4053
|
},
|
|
4061
4054
|
"symbolId": "src/rules/lambda/index:"
|
|
4062
4055
|
},
|
|
4063
4056
|
"cdk-nag.rules.lex": {
|
|
4064
4057
|
"locationInModule": {
|
|
4065
4058
|
"filename": "src/rules/index.ts",
|
|
4066
|
-
"line":
|
|
4059
|
+
"line": 32
|
|
4067
4060
|
},
|
|
4068
4061
|
"symbolId": "src/rules/lex/index:"
|
|
4069
4062
|
},
|
|
4070
4063
|
"cdk-nag.rules.mediastore": {
|
|
4071
4064
|
"locationInModule": {
|
|
4072
4065
|
"filename": "src/rules/index.ts",
|
|
4073
|
-
"line":
|
|
4066
|
+
"line": 33
|
|
4074
4067
|
},
|
|
4075
4068
|
"symbolId": "src/rules/mediastore/index:"
|
|
4076
4069
|
},
|
|
4077
4070
|
"cdk-nag.rules.msk": {
|
|
4078
4071
|
"locationInModule": {
|
|
4079
4072
|
"filename": "src/rules/index.ts",
|
|
4080
|
-
"line":
|
|
4073
|
+
"line": 34
|
|
4081
4074
|
},
|
|
4082
4075
|
"symbolId": "src/rules/msk/index:"
|
|
4083
4076
|
},
|
|
4084
4077
|
"cdk-nag.rules.neptune": {
|
|
4085
4078
|
"locationInModule": {
|
|
4086
4079
|
"filename": "src/rules/index.ts",
|
|
4087
|
-
"line":
|
|
4080
|
+
"line": 35
|
|
4088
4081
|
},
|
|
4089
4082
|
"symbolId": "src/rules/neptune/index:"
|
|
4090
4083
|
},
|
|
4091
4084
|
"cdk-nag.rules.opensearch": {
|
|
4092
4085
|
"locationInModule": {
|
|
4093
4086
|
"filename": "src/rules/index.ts",
|
|
4094
|
-
"line":
|
|
4087
|
+
"line": 36
|
|
4095
4088
|
},
|
|
4096
4089
|
"symbolId": "src/rules/opensearch/index:"
|
|
4097
4090
|
},
|
|
4098
4091
|
"cdk-nag.rules.quicksight": {
|
|
4099
4092
|
"locationInModule": {
|
|
4100
4093
|
"filename": "src/rules/index.ts",
|
|
4101
|
-
"line":
|
|
4094
|
+
"line": 37
|
|
4102
4095
|
},
|
|
4103
4096
|
"symbolId": "src/rules/quicksight/index:"
|
|
4104
4097
|
},
|
|
4105
4098
|
"cdk-nag.rules.rds": {
|
|
4106
4099
|
"locationInModule": {
|
|
4107
4100
|
"filename": "src/rules/index.ts",
|
|
4108
|
-
"line":
|
|
4101
|
+
"line": 38
|
|
4109
4102
|
},
|
|
4110
4103
|
"symbolId": "src/rules/rds/index:"
|
|
4111
4104
|
},
|
|
4112
4105
|
"cdk-nag.rules.redshift": {
|
|
4113
4106
|
"locationInModule": {
|
|
4114
4107
|
"filename": "src/rules/index.ts",
|
|
4115
|
-
"line":
|
|
4108
|
+
"line": 39
|
|
4116
4109
|
},
|
|
4117
4110
|
"symbolId": "src/rules/redshift/index:"
|
|
4118
4111
|
},
|
|
4119
4112
|
"cdk-nag.rules.s3": {
|
|
4120
4113
|
"locationInModule": {
|
|
4121
4114
|
"filename": "src/rules/index.ts",
|
|
4122
|
-
"line":
|
|
4115
|
+
"line": 40
|
|
4123
4116
|
},
|
|
4124
4117
|
"symbolId": "src/rules/s3/index:"
|
|
4125
4118
|
},
|
|
4126
4119
|
"cdk-nag.rules.sagemaker": {
|
|
4127
4120
|
"locationInModule": {
|
|
4128
4121
|
"filename": "src/rules/index.ts",
|
|
4129
|
-
"line":
|
|
4122
|
+
"line": 41
|
|
4130
4123
|
},
|
|
4131
4124
|
"symbolId": "src/rules/sagemaker/index:"
|
|
4132
4125
|
},
|
|
4133
4126
|
"cdk-nag.rules.secretsmanager": {
|
|
4134
4127
|
"locationInModule": {
|
|
4135
4128
|
"filename": "src/rules/index.ts",
|
|
4136
|
-
"line":
|
|
4129
|
+
"line": 42
|
|
4137
4130
|
},
|
|
4138
4131
|
"symbolId": "src/rules/secretsmanager/index:"
|
|
4139
4132
|
},
|
|
4140
4133
|
"cdk-nag.rules.sns": {
|
|
4141
4134
|
"locationInModule": {
|
|
4142
4135
|
"filename": "src/rules/index.ts",
|
|
4143
|
-
"line":
|
|
4136
|
+
"line": 43
|
|
4144
4137
|
},
|
|
4145
4138
|
"symbolId": "src/rules/sns/index:"
|
|
4146
4139
|
},
|
|
4147
4140
|
"cdk-nag.rules.sqs": {
|
|
4148
4141
|
"locationInModule": {
|
|
4149
4142
|
"filename": "src/rules/index.ts",
|
|
4150
|
-
"line":
|
|
4143
|
+
"line": 44
|
|
4151
4144
|
},
|
|
4152
4145
|
"symbolId": "src/rules/sqs/index:"
|
|
4153
4146
|
},
|
|
4154
4147
|
"cdk-nag.rules.stepfunctions": {
|
|
4155
4148
|
"locationInModule": {
|
|
4156
4149
|
"filename": "src/rules/index.ts",
|
|
4157
|
-
"line":
|
|
4150
|
+
"line": 45
|
|
4158
4151
|
},
|
|
4159
4152
|
"symbolId": "src/rules/stepfunctions/index:"
|
|
4160
4153
|
},
|
|
4161
4154
|
"cdk-nag.rules.timestream": {
|
|
4162
4155
|
"locationInModule": {
|
|
4163
4156
|
"filename": "src/rules/index.ts",
|
|
4164
|
-
"line":
|
|
4157
|
+
"line": 46
|
|
4165
4158
|
},
|
|
4166
4159
|
"symbolId": "src/rules/timestream/index:"
|
|
4167
4160
|
},
|
|
4168
4161
|
"cdk-nag.rules.vpc": {
|
|
4169
4162
|
"locationInModule": {
|
|
4170
4163
|
"filename": "src/rules/index.ts",
|
|
4171
|
-
"line":
|
|
4164
|
+
"line": 47
|
|
4172
4165
|
},
|
|
4173
4166
|
"symbolId": "src/rules/vpc/index:"
|
|
4174
4167
|
},
|
|
4175
4168
|
"cdk-nag.rules.waf": {
|
|
4176
4169
|
"locationInModule": {
|
|
4177
4170
|
"filename": "src/rules/index.ts",
|
|
4178
|
-
"line":
|
|
4171
|
+
"line": 48
|
|
4179
4172
|
},
|
|
4180
4173
|
"symbolId": "src/rules/waf/index:"
|
|
4181
4174
|
}
|
|
@@ -4519,7 +4512,7 @@
|
|
|
4519
4512
|
},
|
|
4520
4513
|
"locationInModule": {
|
|
4521
4514
|
"filename": "src/packs/aws-solutions.ts",
|
|
4522
|
-
"line":
|
|
4515
|
+
"line": 193
|
|
4523
4516
|
},
|
|
4524
4517
|
"parameters": [
|
|
4525
4518
|
{
|
|
@@ -4534,7 +4527,7 @@
|
|
|
4534
4527
|
"kind": "class",
|
|
4535
4528
|
"locationInModule": {
|
|
4536
4529
|
"filename": "src/packs/aws-solutions.ts",
|
|
4537
|
-
"line":
|
|
4530
|
+
"line": 192
|
|
4538
4531
|
},
|
|
4539
4532
|
"methods": [
|
|
4540
4533
|
{
|
|
@@ -4544,7 +4537,7 @@
|
|
|
4544
4537
|
},
|
|
4545
4538
|
"locationInModule": {
|
|
4546
4539
|
"filename": "src/packs/aws-solutions.ts",
|
|
4547
|
-
"line":
|
|
4540
|
+
"line": 197
|
|
4548
4541
|
},
|
|
4549
4542
|
"name": "visit",
|
|
4550
4543
|
"overrides": "cdk-nag.NagPack",
|
|
@@ -7160,6 +7153,6 @@
|
|
|
7160
7153
|
"symbolId": "src/ignore-suppression-conditions:SuppressionIgnoreOr"
|
|
7161
7154
|
}
|
|
7162
7155
|
},
|
|
7163
|
-
"version": "2.
|
|
7164
|
-
"fingerprint": "
|
|
7156
|
+
"version": "2.33.1",
|
|
7157
|
+
"fingerprint": "hTeFc4vTVQCRxbROJiJmoiGKQp4Dy2wvcq6yYGbVeMU="
|
|
7165
7158
|
}
|
|
@@ -16,7 +16,6 @@ The [AWS Solutions Library](https://aws.amazon.com/solutions/) offers a collecti
|
|
|
16
16
|
| Rule ID | Cause | Explanation |
|
|
17
17
|
| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
18
18
|
| AwsSolutions-APIG3 | The REST API stage is not associated with AWS WAFv2 web ACL. | AWS WAFv2 is a web application firewall that helps protect web applications and APIs from attacks by allowing configured rules to allow, block, or monitor (count) web requests based on customizable rules and conditions that are defined. |
|
|
19
|
-
| AwsSolutions-CB3 | The CodeBuild project has privileged mode enabled. | Privileged grants elevated rights to the system, which introduces additional risk. Privileged mode should only be set to true only if the build project is used to build Docker images. Otherwise, a build that attempts to interact with the Docker daemon fails. |
|
|
20
19
|
| AwsSolutions-CB5 | The Codebuild project does not use images provided by the CodeBuild service or have a cdk-nag suppression rule explaining the need for a custom image. | Explaining differences/edits to Docker images helps operators better understand system dependencies. |
|
|
21
20
|
| AwsSolutions-CFR1 | The CloudFront distribution may require Geo restrictions. | Geo restriction may need to be enabled for the distribution in order to allow or deny a country in order to allow or restrict users in specific locations from accessing content. |
|
|
22
21
|
| AwsSolutions-CFR2 | The CloudFront distribution may require integration with AWS WAF. | The Web Application Firewall can help protect against application-layer attacks that can compromise the security of the system or place unnecessary load on them. |
|
|
@@ -51,7 +50,6 @@ The [AWS Solutions Library](https://aws.amazon.com/solutions/) offers a collecti
|
|
|
51
50
|
| AwsSolutions-AS2 | The Auto Scaling Group does not have properly configured health checks. | The health check feature enables the service to detect whether its registered EC2 instances are healthy or not. |
|
|
52
51
|
| AwsSolutions-AS3 | The Auto Scaling Group does not have notifications configured for all scaling events. | Notifications on EC2 instance launch, launch error, termination, and termination errors allow operators to gain better insights into systems attributes such as activity and health. |
|
|
53
52
|
| AwsSolutions-ASC3 | The GraphQL API does not have request level logging enabled. | It is important to use CloudWatch Logs to log metrics such as who has accessed the GraphQL API, how the caller accessed the API, and invalid requests. |
|
|
54
|
-
| AwsSolutions-ATH1 | The Athena workgroup does not encrypt query results. | Encrypting query results stored in S3 helps secure data to meet compliance requirements for data-at-rest encryption. |
|
|
55
53
|
| AwsSolutions-CB4 | The CodeBuild project does not use an AWS KMS key for encryption. | Using an AWS KMS key helps follow the standard security advice of granting least privilege to objects generated by the project. |
|
|
56
54
|
| AwsSolutions-C91 | The Cloud9 instance does not use a no-ingress EC2 instance with AWS Systems Manager. | SSM adds an additional layer of protection as it allows operators to control access through IAM permissions and does not require opening inbound ports. |
|
|
57
55
|
| AwsSolutions-CFR3 | The CloudFront distribution does not have access logging enabled. | Enabling access logs helps operators track all viewer requests for the content delivered through the Content Delivery Network. |
|
|
@@ -695,9 +693,9 @@ Unimplemented rules from the AWS PCI DSS 3.2.1 Conformance Pack.
|
|
|
695
693
|
|
|
696
694
|
A collection of community rules that are not currently included in any of the pre-built NagPacks, but are still available for inclusion in [custom NagPacks](https://github.com/cdklabs/cdk-nag/blob/main/docs/NagPack.md).
|
|
697
695
|
|
|
698
|
-
| Rule ID | Cause
|
|
699
|
-
| ------------------------------------- |
|
|
700
|
-
| LambdaFunctionUrlAuth | The Lambda Function URL allows for public, unauthenticated access.
|
|
696
|
+
| Rule ID | Cause | Explanation |
|
|
697
|
+
| ------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
698
|
+
| LambdaFunctionUrlAuth | The Lambda Function URL allows for public, unauthenticated access. | AWS Lambda Function URLs allow you to invoke your function via a HTTPS end-point, setting the authentication to NONE allows anyone on the internet to invoke your function. |
|
|
701
699
|
| LambdaEventSourceSQSVisibilityTimeout | The SQS queue visibility timeout of Lambda Event Source Mapping is less than 6 times timeout of Lambda function. | Setting the visibility timeout to [at least 6 times the Lambda function timeout](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-lambda-function-trigger.html) helps prevent configurations resulting in duplicate processing of queue items when the Lambda function execution is retried. |
|
|
702
700
|
|
|
703
701
|
## Footnotes
|
|
@@ -28,7 +28,7 @@ class SuppressionIgnoreAnd {
|
|
|
28
28
|
}
|
|
29
29
|
exports.SuppressionIgnoreAnd = SuppressionIgnoreAnd;
|
|
30
30
|
_a = JSII_RTTI_SYMBOL_1;
|
|
31
|
-
SuppressionIgnoreAnd[_a] = { fqn: "cdk-nag.SuppressionIgnoreAnd", version: "2.
|
|
31
|
+
SuppressionIgnoreAnd[_a] = { fqn: "cdk-nag.SuppressionIgnoreAnd", version: "2.33.1" };
|
|
32
32
|
/**
|
|
33
33
|
* Ignore the suppression if any of the given INagSuppressionIgnore return a non-empty message
|
|
34
34
|
*/
|
|
@@ -52,7 +52,7 @@ class SuppressionIgnoreOr {
|
|
|
52
52
|
}
|
|
53
53
|
exports.SuppressionIgnoreOr = SuppressionIgnoreOr;
|
|
54
54
|
_b = JSII_RTTI_SYMBOL_1;
|
|
55
|
-
SuppressionIgnoreOr[_b] = { fqn: "cdk-nag.SuppressionIgnoreOr", version: "2.
|
|
55
|
+
SuppressionIgnoreOr[_b] = { fqn: "cdk-nag.SuppressionIgnoreOr", version: "2.33.1" };
|
|
56
56
|
/**
|
|
57
57
|
* Always ignore the suppression
|
|
58
58
|
*/
|
|
@@ -69,7 +69,7 @@ class SuppressionIgnoreAlways {
|
|
|
69
69
|
}
|
|
70
70
|
exports.SuppressionIgnoreAlways = SuppressionIgnoreAlways;
|
|
71
71
|
_c = JSII_RTTI_SYMBOL_1;
|
|
72
|
-
SuppressionIgnoreAlways[_c] = { fqn: "cdk-nag.SuppressionIgnoreAlways", version: "2.
|
|
72
|
+
SuppressionIgnoreAlways[_c] = { fqn: "cdk-nag.SuppressionIgnoreAlways", version: "2.33.1" };
|
|
73
73
|
/**
|
|
74
74
|
* Don't ignore the suppression
|
|
75
75
|
*/
|
|
@@ -80,7 +80,7 @@ class SuppressionIgnoreNever {
|
|
|
80
80
|
}
|
|
81
81
|
exports.SuppressionIgnoreNever = SuppressionIgnoreNever;
|
|
82
82
|
_d = JSII_RTTI_SYMBOL_1;
|
|
83
|
-
SuppressionIgnoreNever[_d] = { fqn: "cdk-nag.SuppressionIgnoreNever", version: "2.
|
|
83
|
+
SuppressionIgnoreNever[_d] = { fqn: "cdk-nag.SuppressionIgnoreNever", version: "2.33.1" };
|
|
84
84
|
/**
|
|
85
85
|
* Ignore Suppressions for Rules with a NagMessageLevel.ERROR
|
|
86
86
|
*/
|
|
@@ -93,5 +93,5 @@ class SuppressionIgnoreErrors {
|
|
|
93
93
|
}
|
|
94
94
|
exports.SuppressionIgnoreErrors = SuppressionIgnoreErrors;
|
|
95
95
|
_e = JSII_RTTI_SYMBOL_1;
|
|
96
|
-
SuppressionIgnoreErrors[_e] = { fqn: "cdk-nag.SuppressionIgnoreErrors", version: "2.
|
|
96
|
+
SuppressionIgnoreErrors[_e] = { fqn: "cdk-nag.SuppressionIgnoreErrors", version: "2.33.1" };
|
|
97
97
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWdub3JlLXN1cHByZXNzaW9uLWNvbmRpdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaWdub3JlLXN1cHByZXNzaW9uLWNvbmRpdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFLQSwyQ0FBOEM7QUF5QjlDOztHQUVHO0FBQ0gsTUFBYSxvQkFBb0I7SUFHL0IsWUFBWSxHQUFHLHFCQUE4QztRQUMzRCxJQUFJLHFCQUFxQixDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDdEMsTUFBTSxJQUFJLEtBQUssQ0FDYiwrREFBK0QsQ0FDaEUsQ0FBQztTQUNIO1FBQ0QsSUFBSSxDQUFDLHFCQUFxQixHQUFHLHFCQUFxQixDQUFDO0lBQ3JELENBQUM7SUFFRCxhQUFhLENBQUMsS0FBNkI7UUFDekMsSUFBSSxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLEtBQUssTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLHFCQUFxQixFQUFFO1lBQzFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDakMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqQixJQUFJLENBQUMsQ0FBQyxFQUFFO2dCQUNOLE9BQU8sRUFBRSxDQUFDO2FBQ1g7U0FDRjtRQUNELE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMvQixDQUFDOztBQXRCSCxvREF1QkM7OztBQUVEOztHQUVHO0FBQ0gsTUFBYSxtQkFBbUI7SUFHOUIsWUFBWSxHQUFHLG9CQUE2QztRQUMxRCxJQUFJLG9CQUFvQixDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDckMsTUFBTSxJQUFJLEtBQUssQ0FDYiw4REFBOEQsQ0FDL0QsQ0FBQztTQUNIO1FBQ0QsSUFBSSxDQUFDLG9CQUFvQixHQUFHLG9CQUFvQixDQUFDO0lBQ25ELENBQUM7SUFFRCxhQUFhLENBQUMsS0FBNkI7UUFDekMsSUFBSSxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLEtBQUssTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFO1lBQ3pDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDakMsSUFBSSxDQUFDLEVBQUU7Z0JBQ0wsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNsQjtTQUNGO1FBQ0QsT0FBTyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMvQyxDQUFDOztBQXJCSCxrREFzQkM7OztBQUVEOztHQUVHO0FBQ0gsTUFBYSx1QkFBdUI7SUFFbEMsWUFBWSxjQUFzQjtRQUNoQyxJQUFJLGNBQWMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQy9CLE1BQU0sSUFBSSxLQUFLLENBQ2IsMERBQTBELENBQzNELENBQUM7U0FDSDtRQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFDO0lBQ3ZDLENBQUM7SUFDRCxhQUFhLENBQUMsTUFBOEI7UUFDMUMsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7O0FBWkgsMERBYUM7OztBQUVEOztHQUVHO0FBQ0gsTUFBYSxzQkFBc0I7SUFDakMsYUFBYSxDQUFDLE1BQThCO1FBQzFDLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzs7QUFISCx3REFJQzs7O0FBRUQ7O0dBRUc7QUFDSCxNQUFhLHVCQUF1QjtJQUNsQyxhQUFhLENBQUMsS0FBNkI7UUFDekMsT0FBTyxLQUFLLENBQUMsU0FBUyxJQUFJLDJCQUFlLENBQUMsS0FBSztZQUM3QyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSx1REFBdUQ7WUFDeEUsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNULENBQUM7O0FBTEgsMERBTUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG5TUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuKi9cbmltcG9ydCB7IENmblJlc291cmNlIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgTmFnTWVzc2FnZUxldmVsIH0gZnJvbSAnLi9uYWctcnVsZXMnO1xuXG4vKipcbiAqIEluZm9ybWF0aW9uIGFib3V0IHRoZSBOYWdSdWxlIGFuZCB0aGUgcmVsZXZhbnQgTmFnU3VwcHJlc3Npb24gZm9yIHRoZSBJTmFnU3VwcHJlc3Npb25JZ25vcmVcbiAqIEBwYXJhbSByZXNvdXJjZSBUaGUgcmVzb3VyY2UgdGhlIHN1cHByZXNzaW9uIGlzIGFwcGxpZWQgdG8uXG4gKiBAcGFyYW0gcmVhc29uIFRoZSByZWFzb24gZ2l2ZW4gZm9yIHRoZSBzdXBwcmVzc2lvbi5cbiAqIEBwYXJhbSBydWxlSWQgVGhlIGlkIG9mIHRoZSBydWxlIHRvIGlnbm9yZS5cbiAqIEBwYXJhbSBmaW5kaW5nSWQgVGhlIGlkIG9mIHRoZSBmaW5kaW5nIHRoYXQgaXMgYmVpbmcgY2hlY2tlZC5cbiAqIEBwYXJhbSBydWxlTGV2ZWwgVGhlIHNldmVyaXR5IGxldmVsIG9mIHRoZSBydWxlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN1cHByZXNzaW9uSWdub3JlSW5wdXQge1xuICByZWFkb25seSByZXNvdXJjZTogQ2ZuUmVzb3VyY2U7XG4gIHJlYWRvbmx5IHJlYXNvbjogc3RyaW5nO1xuICByZWFkb25seSBydWxlSWQ6IHN0cmluZztcbiAgcmVhZG9ubHkgZmluZGluZ0lkOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHJ1bGVMZXZlbDogTmFnTWVzc2FnZUxldmVsO1xufVxuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgY3JlYXRpbmcgTmFnU3VwcHJlc3Npb24gSWdub3Jlc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIElOYWdTdXBwcmVzc2lvbklnbm9yZSB7XG4gIGNyZWF0ZU1lc3NhZ2UoaW5wdXQ6IFN1cHByZXNzaW9uSWdub3JlSW5wdXQpOiBzdHJpbmc7XG59XG5cbi8qKlxuICogSWdub3JlIHRoZSBzdXBwcmVzc2lvbiBpZiBhbGwgb2YgdGhlIGdpdmVuIElOYWdTdXBwcmVzc2lvbklnbm9yZSByZXR1cm4gYSBub24tZW1wdHkgbWVzc2FnZVxuICovXG5leHBvcnQgY2xhc3MgU3VwcHJlc3Npb25JZ25vcmVBbmQgaW1wbGVtZW50cyBJTmFnU3VwcHJlc3Npb25JZ25vcmUge1xuICBwcml2YXRlIGFuZFN1cHByZXNzaW9uSWdub3JlczogSU5hZ1N1cHByZXNzaW9uSWdub3JlW107XG5cbiAgY29uc3RydWN0b3IoLi4uU3VwcHJlc3Npb25JZ25vcmVBbmRzOiBJTmFnU3VwcHJlc3Npb25JZ25vcmVbXSkge1xuICAgIGlmIChTdXBwcmVzc2lvbklnbm9yZUFuZHMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdTdXBwcmVzc2lvbklnbm9yZUFuZCBuZWVkcyBhdCBsZWFzdCBvbmUgSU5hZ1N1cHByZXNzaW9uSWdub3JlJ1xuICAgICAgKTtcbiAgICB9XG4gICAgdGhpcy5hbmRTdXBwcmVzc2lvbklnbm9yZXMgPSBTdXBwcmVzc2lvbklnbm9yZUFuZHM7XG4gIH1cblxuICBjcmVhdGVNZXNzYWdlKGlucHV0OiBTdXBwcmVzc2lvbklnbm9yZUlucHV0KTogc3RyaW5nIHtcbiAgICBsZXQgbWVzc2FnZXMgPSBbXTtcbiAgICBmb3IgKGNvbnN0IGkgb2YgdGhpcy5hbmRTdXBwcmVzc2lvbklnbm9yZXMpIHtcbiAgICAgIGNvbnN0IG0gPSBpLmNyZWF0ZU1lc3NhZ2UoaW5wdXQpO1xuICAgICAgbWVzc2FnZXMucHVzaChtKTtcbiAgICAgIGlmICghbSkge1xuICAgICAgICByZXR1cm4gJyc7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBtZXNzYWdlcy5qb2luKCdcXG5cXHQnKTtcbiAgfVxufVxuXG4vKipcbiAqIElnbm9yZSB0aGUgc3VwcHJlc3Npb24gaWYgYW55IG9mIHRoZSBnaXZlbiBJTmFnU3VwcHJlc3Npb25JZ25vcmUgcmV0dXJuIGEgbm9uLWVtcHR5IG1lc3NhZ2VcbiAqL1xuZXhwb3J0IGNsYXNzIFN1cHByZXNzaW9uSWdub3JlT3IgaW1wbGVtZW50cyBJTmFnU3VwcHJlc3Npb25JZ25vcmUge1xuICBwcml2YXRlIFN1cHByZXNzaW9uSWdub3JlT3JzOiBJTmFnU3VwcHJlc3Npb25JZ25vcmVbXTtcblxuICBjb25zdHJ1Y3RvciguLi5vclN1cHByZXNzaW9uSWdub3JlczogSU5hZ1N1cHByZXNzaW9uSWdub3JlW10pIHtcbiAgICBpZiAob3JTdXBwcmVzc2lvbklnbm9yZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdTdXBwcmVzc2lvbklnbm9yZU9yIG5lZWRzIGF0IGxlYXN0IG9uZSBJTmFnU3VwcHJlc3Npb25JZ25vcmUnXG4gICAgICApO1xuICAgIH1cbiAgICB0aGlzLlN1cHByZXNzaW9uSWdub3JlT3JzID0gb3JTdXBwcmVzc2lvbklnbm9yZXM7XG4gIH1cblxuICBjcmVhdGVNZXNzYWdlKGlucHV0OiBTdXBwcmVzc2lvbklnbm9yZUlucHV0KTogc3RyaW5nIHtcbiAgICBsZXQgbWVzc2FnZXMgPSBbXTtcbiAgICBmb3IgKGNvbnN0IGkgb2YgdGhpcy5TdXBwcmVzc2lvbklnbm9yZU9ycykge1xuICAgICAgY29uc3QgbSA9IGkuY3JlYXRlTWVzc2FnZShpbnB1dCk7XG4gICAgICBpZiAobSkge1xuICAgICAgICBtZXNzYWdlcy5wdXNoKG0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbWVzc2FnZXMgPyBtZXNzYWdlcy5qb2luKCdcXG5cXHQnKSA6ICcnO1xuICB9XG59XG5cbi8qKlxuICogQWx3YXlzIGlnbm9yZSB0aGUgc3VwcHJlc3Npb25cbiAqL1xuZXhwb3J0IGNsYXNzIFN1cHByZXNzaW9uSWdub3JlQWx3YXlzIGltcGxlbWVudHMgSU5hZ1N1cHByZXNzaW9uSWdub3JlIHtcbiAgcHJpdmF0ZSB0cmlnZ2VyTWVzc2FnZTogc3RyaW5nO1xuICBjb25zdHJ1Y3Rvcih0cmlnZ2VyTWVzc2FnZTogc3RyaW5nKSB7XG4gICAgaWYgKHRyaWdnZXJNZXNzYWdlLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAncHJvdmlkZSBhIHRyaWdnZXJNZXNzYWdlIGZvciB0aGUgU3VwcHJlc3Npb25JZ25vcmVBbHdheXMnXG4gICAgICApO1xuICAgIH1cbiAgICB0aGlzLnRyaWdnZXJNZXNzYWdlID0gdHJpZ2dlck1lc3NhZ2U7XG4gIH1cbiAgY3JlYXRlTWVzc2FnZShfaW5wdXQ6IFN1cHByZXNzaW9uSWdub3JlSW5wdXQpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnRyaWdnZXJNZXNzYWdlO1xuICB9XG59XG5cbi8qKlxuICogRG9uJ3QgaWdub3JlIHRoZSBzdXBwcmVzc2lvblxuICovXG5leHBvcnQgY2xhc3MgU3VwcHJlc3Npb25JZ25vcmVOZXZlciBpbXBsZW1lbnRzIElOYWdTdXBwcmVzc2lvbklnbm9yZSB7XG4gIGNyZWF0ZU1lc3NhZ2UoX2lucHV0OiBTdXBwcmVzc2lvbklnbm9yZUlucHV0KTogc3RyaW5nIHtcbiAgICByZXR1cm4gJyc7XG4gIH1cbn1cblxuLyoqXG4gKiBJZ25vcmUgU3VwcHJlc3Npb25zIGZvciBSdWxlcyB3aXRoIGEgTmFnTWVzc2FnZUxldmVsLkVSUk9SXG4gKi9cbmV4cG9ydCBjbGFzcyBTdXBwcmVzc2lvbklnbm9yZUVycm9ycyBpbXBsZW1lbnRzIElOYWdTdXBwcmVzc2lvbklnbm9yZSB7XG4gIGNyZWF0ZU1lc3NhZ2UoaW5wdXQ6IFN1cHByZXNzaW9uSWdub3JlSW5wdXQpOiBzdHJpbmcge1xuICAgIHJldHVybiBpbnB1dC5ydWxlTGV2ZWwgPT0gTmFnTWVzc2FnZUxldmVsLkVSUk9SXG4gICAgICA/IGAke2lucHV0LnJ1bGVJZH0gaXMgY2F0ZWdvcml6ZWQgYXMgYW4gRVJST1IgYW5kIG1heSBub3QgYmUgc3VwcHJlc3NlZGBcbiAgICAgIDogJyc7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -61,7 +61,7 @@ class AnnotationLogger {
|
|
|
61
61
|
}
|
|
62
62
|
exports.AnnotationLogger = AnnotationLogger;
|
|
63
63
|
_a = JSII_RTTI_SYMBOL_1;
|
|
64
|
-
AnnotationLogger[_a] = { fqn: "cdk-nag.AnnotationLogger", version: "2.
|
|
64
|
+
AnnotationLogger[_a] = { fqn: "cdk-nag.AnnotationLogger", version: "2.33.1" };
|
|
65
65
|
/**
|
|
66
66
|
* Possible output formats of the NagReport
|
|
67
67
|
*/
|
|
@@ -196,5 +196,5 @@ class NagReportLogger {
|
|
|
196
196
|
}
|
|
197
197
|
exports.NagReportLogger = NagReportLogger;
|
|
198
198
|
_b = JSII_RTTI_SYMBOL_1;
|
|
199
|
-
NagReportLogger[_b] = { fqn: "cdk-nag.NagReportLogger", version: "2.
|
|
199
|
+
NagReportLogger[_b] = { fqn: "cdk-nag.NagReportLogger", version: "2.33.1" };
|
|
200
200
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFnLWxvZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9uYWctbG9nZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUE7OztFQUdFO0FBQ0YsMkJBQWlFO0FBQ2pFLCtCQUE0QjtBQUM1Qiw2Q0FBbUU7QUFDbkUsMkNBTXFCO0FBeUdyQjs7R0FFRztBQUNILE1BQWEsZ0JBQWdCO0lBSTNCLFlBQVksS0FBNkI7UUFIekMsa0JBQWEsR0FBRyxtQkFBbUIsQ0FBQztRQUlsQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssRUFBRSxPQUFPLElBQUksS0FBSyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxFQUFFLFVBQVUsSUFBSSxLQUFLLENBQUM7SUFDL0MsQ0FBQztJQUNELFlBQVksQ0FBQyxLQUE4QjtRQUN6QyxPQUFPO0lBQ1QsQ0FBQztJQUNELGVBQWUsQ0FBQyxJQUFnQztRQUM5QyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUNoQyxJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLFFBQVEsRUFDYixJQUFJLENBQUMsZUFBZSxFQUNwQixJQUFJLENBQUMsT0FBTyxDQUNiLENBQUM7UUFDRixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksMkJBQWUsQ0FBQyxLQUFLLEVBQUU7WUFDM0MseUJBQVcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUNqRDthQUFNLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSwyQkFBZSxDQUFDLElBQUksRUFBRTtZQUNqRCx5QkFBVyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ25EO0lBQ0gsQ0FBQztJQUNELFlBQVksQ0FBQyxJQUE2QjtRQUN4QyxJQUFJLElB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Z0JBQ0gsa0JBQWEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO2FBQ2pEO2lCQUFNO2dCQUNMLE1BQU0sSUFBSSxLQUFLLENBQ2IsOEJBQThCLE1BQU0sMEJBQTBCLENBQy9ELENBQUM7YUFDSDtTQUNGO0lBQ0gsQ0FBQzs7QUFoSkgsMENBaUpDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbkNvcHlyaWdodCBBbWF6b24uY29tLCBJbmMuIG9yIGl0cyBhZmZpbGlhdGVzLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiovXG5pbXBvcnQgeyBhcHBlbmRGaWxlU3luYywgcmVhZEZpbGVTeW5jLCB3cml0ZUZpbGVTeW5jIH0gZnJvbSAnZnMnO1xuaW1wb3J0IHsgam9pbiB9IGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgQW5ub3RhdGlvbnMsIEFwcCwgQ2ZuUmVzb3VyY2UsIE5hbWVzIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHtcbiAgTmFnTWVzc2FnZUxldmVsLFxuICBOYWdSdWxlQ29tcGxpYW5jZSxcbiAgTmFnUnVsZVBvc3RWYWxpZGF0aW9uU3RhdGVzLFxuICBOYWdSdWxlU3RhdGVzLFxuICBWQUxJREFUSU9OX0ZBSUxVUkVfSUQsXG59IGZyb20gJy4vbmFnLXJ1bGVzJztcblxuLyoqXG4gKiBTaGFyZWQgZGF0YSBmb3IgYWxsIElOYWdMb2dnZXIgbWV0aG9kc1xuICogQHBhcmFtIG5hZ1BhY2tOYW1lIFRoZSBuYW1lIG9mIHRoZSBOYWdQYWNrIHRoYXQgdGhlIHJ1bGUgYmVsb25ncyB0by5cbiAqIEBwYXJhbSByZXNvdXJjZSBUaGUgcmVzb3VyY2UgdGhlIHN1cHByZXNzaW9uIGlzIGFwcGxpZWQgdG8uXG4gKiBAcGFyYW0gcnVsZUlkIFRoZSBpZCBvZiB0aGUgcnVsZSB0byBpZ25vcmUuXG4gKiBAcGFyYW0gcnVsZU9yaWdpbmFsTmFtZSBPcmlnaW5hbCBuYW1lIG9mIHRoZSBydWxlLlxuICogQHBhcmFtIHJ1bGVJbmZvIFdoeSB0aGUgcnVsZSB3YXMgdHJpZ2dlcmVkLlxuICogQHBhcmFtIHJ1bGVFeHBsYW5hdGlvbiBXaHkgdGhlIHJ1bGUgZXhpc3RzLlxuICogQHBhcmFtIHJ1bGVMZXZlbCBUaGUgc2V2ZXJpdHkgbGV2ZWwgb2YgdGhlIHJ1bGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTmFnTG9nZ2VyQmFzZURhdGEge1xuICByZWFkb25seSBuYWdQYWNrTmFtZTogc3RyaW5nO1xuICByZWFkb25seSByZXNvdXJjZTogQ2ZuUmVzb3VyY2U7XG4gIHJlYWRvbmx5IHJ1bGVJZDogc3RyaW5nO1xuICByZWFkb25seSBydWxlT3JpZ2luYWxOYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHJ1bGVJbmZvOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHJ1bGVFeHBsYW5hdGlvbjogc3RyaW5nO1xuICByZWFkb25seSBydWxlTGV2ZWw6IE5hZ01lc3NhZ2VMZXZlbDtcbn1cblxuLyoqXG4gKiBEYXRhIGZvciBvbkNvbXBsaWFuY2UgbWV0aG9kIG9mIGFuIElOYWdMb2dnZXIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTmFnTG9nZ2VyQ29tcGxpYW5jZURhdGEgZXh0ZW5kcyBOYWdMb2dnZXJCYXNlRGF0YSB7fVxuLyoqXG4gKiBEYXRhIGZvciBvbk5vbkNvbXBsaWFuY2UgbWV0aG9kIG9mIGFuIElOYWdMb2dnZXIuXG4gKiBAcGFyYW0gZmluZGluZ0lkIFRoZSBpZCBvZiB0aGUgZmluZGluZyB0aGF0IGlzIGJlaW5nIGNoZWNrZWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTmFnTG9nZ2VyTm9uQ29tcGxpYW5jZURhdGEgZXh0ZW5kcyBOYWdMb2dnZXJCYXNlRGF0YSB7XG4gIHJlYWRvbmx5IGZpbmRpbmdJZDogc3RyaW5nO1xufVxuLyoqXG4gKiBEYXRhIGZvciBvblN1cHByZXNzZWQgbWV0aG9kIG9mIGFuIElOYWdMb2dnZXIuXG4gKiBAcGFyYW0gc3VwcHJlc3Npb25SZWFzb24gVGhlIHJlYXNvbiBnaXZlbiBmb3IgdGhlIHN1cHByZXNzaW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5hZ0xvZ2dlclN1cHByZXNzZWREYXRhIGV4dGVuZHMgTmFnTG9nZ2VyTm9uQ29tcGxpYW5jZURhdGEge1xuICByZWFkb25seSBzdXBwcmVzc2lvblJlYXNvbjogc3RyaW5nO1xufVxuLyoqXG4gKiBEYXRhIGZvciBvbkVycm9yIG1ldGhvZCBvZiBhbiBJTmFnTG9nZ2VyLlxuICogQHBhcmFtIGVycm9yTWVzc2FnZTogVGhlIGVycm9yIHRoYXQgd2FzIHRocm93bi5cbiAqIEBwYXJhbSBzaG91bGRMb2dJZ25vcmVkIFdoZXRoZXIgb3Igbm90IHRoZSBOYWdQYWNrIHVzZXIgaGFzIGluZGljYXRlZCB0aGF0IHRoZXkgd2FudCB0byBsb2cgc3VwcHJlc3Npb24gZGV0YWlscy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOYWdMb2dnZXJFcnJvckRhdGEgZXh0ZW5kcyBOYWdMb2dnZXJCYXNlRGF0YSB7XG4gIHJlYWRvbmx5IGVycm9yTWVzc2FnZTogc3RyaW5nO1xufVxuLyoqXG4gKiBEYXRhIGZvciBvblN1cHByZXNzZWRFcnJvciBtZXRob2Qgb2YgYW4gSU5hZ0xvZ2dlci5cbiAqIEBwYXJhbSBlcnJvclN1cHByZXNzaW9uUmVhc29uIFRoZSByZWFzb24gZ2l2ZW4gZm9yIHRoZSB2YWxpZGF0aW9uIGVycm9yIHN1cHByZXNzaW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5hZ0xvZ2dlclN1cHByZXNzZWRFcnJvckRhdGEgZXh0ZW5kcyBOYWdMb2dnZXJFcnJvckRhdGEge1xuICByZWFkb25seSBlcnJvclN1cHByZXNzaW9uUmVhc29uOiBzdHJpbmc7XG59XG5cbi8qKlxuICogRGF0YSBmb3Igb25Ob3RBcHBsaWNhYmxlIG1ldGhvZCBvZiBhbiBJTmFnTG9nZ2VyLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5hZ0xvZ2dlck5vdEFwcGxpY2FibGVEYXRhIGV4dGVuZHMgTmFnTG9nZ2VyQmFzZURhdGEge31cblxuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIGNyZWF0aW5nIE5hZ1N1cHByZXNzaW9uIElnbm9yZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJTmFnTG9nZ2VyIHtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGEgQ2ZuUmVzb3VyY2UgcGFzc2VzIHRoZSBjb21wbGlhbmNlIGNoZWNrIGZvciBhIGdpdmVuIHJ1bGUuXG4gICAqL1xuICBvbkNvbXBsaWFuY2UoZGF0YTogTmFnTG9nZ2VyQ29tcGxpYW5jZURhdGEpOiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gYSBDZm5SZXNvdXJjZSBkb2VzIG5vdCBwYXNzIHRoZSBjb21wbGlhbmNlIGNoZWNrIGZvciBhIGdpdmVuIHJ1bGUgYW5kIHRoZSB0aGUgcnVsZSB2aW9sYXRpb24gaXMgbm90IHN1cHByZXNzZWQgYnkgdGhlIHVzZXIuXG4gICAqL1xuICBvbk5vbkNvbXBsaWFuY2UoZGF0YTogTmFnTG9nZ2VyTm9uQ29tcGxpYW5jZURhdGEpOiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gYSBDZm5SZXNvdXJjZSBkb2VzIG5vdCBwYXNzIHRoZSBjb21wbGlhbmNlIGNoZWNrIGZvciBhIGdpdmVuIHJ1bGUgYW5kIHRoZSBydWxlIHZpb2xhdGlvbiBpcyBzdXBwcmVzc2VkIGJ5IHRoZSB1c2VyLlxuICAgKi9cbiAgb25TdXBwcmVzc2VkKGRhdGE6IE5hZ0xvZ2dlclN1cHByZXNzZWREYXRhKTogdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGEgcnVsZSB0aHJvd3MgYW4gZXJyb3IgZHVyaW5nIHdoaWxlIHZhbGlkYXRpbmcgYSBDZm5SZXNvdXJjZSBmb3IgY29tcGxpYW5jZS5cbiAgICovXG4gIG9uRXJyb3IoZGF0YTogTmFnTG9nZ2VyRXJyb3JEYXRhKTogdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGEgcnVsZSB0aHJvd3MgYW4gZXJyb3IgZHVyaW5nIHdoaWxlIHZhbGlkYXRpbmcgYSBDZm5SZXNvdXJjZSBmb3IgY29tcGxpYW5jZSBhbmQgdGhlIGVycm9yIGlzIHN1cHByZXNzZWQuXG4gICAqL1xuICBvblN1cHByZXNzZWRFcnJvcihkYXRhOiBOYWdMb2dnZXJTdXBwcmVzc2VkRXJyb3JEYXRhKTogdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGEgcnVsZSBkb2VzIG5vdCBhcHBseSB0byB0aGUgZ2l2ZW4gQ2ZuUmVzb3VyY2UuXG4gICAqL1xuICBvbk5vdEFwcGxpY2FibGUoZGF0YTogTmFnTG9nZ2VyTm90QXBwbGljYWJsZURhdGEpOiB2b2lkO1xufVxuXG4vKipcbiAqIFByb3BzIGZvciB0aGUgQW5ub3RhdGlvbkxvZ2dlclxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFubm90YXRpb25Mb2dnZXJQcm9wcyB7XG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBlbmFibGUgZXh0ZW5kZWQgZXhwbGFuYXRvcnkgZGVzY3JpcHRpb25zIG9uIHdhcm5pbmcsIGVycm9yLCBhbmQgbG9nZ2VkIGlnbm9yZSBtZXNzYWdlcy5cbiAgICovXG4gIHJlYWRvbmx5IHZlcmJvc2U/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBsb2cgc3VwcHJlc3NlZCBydWxlIHZpb2xhdGlvbnMgYXMgaW5mb3JtYXRpb25hbCBtZXNzYWdlcyAoZGVmYXVsdDogZmFsc2UpLlxuICAgKi9cbiAgcmVhZG9ubHkgbG9nSWdub3Jlcz86IGJvb2xlYW47XG59XG4vKipcbiAqIEEgTmFnTG9nZ2VyIHRoYXQgb3V0cHV0cyB0byB0aGUgQ0RLIEFubm90YXRpb25zIHN5c3RlbS5cbiAqL1xuZXhwb3J0IGNsYXNzIEFubm90YXRpb25Mb2dnZXIgaW1wbGVtZW50cyBJTmFnTG9nZ2VyIHtcbiAgc3VwcHJlc3Npb25JZCA9ICdDZGtOYWdTdXBwcmVzc2lvbic7XG4gIHJlYWRvbmx5IHZlcmJvc2U6IGJvb2xlYW47XG4gIHJlYWRvbmx5IGxvZ0lnbm9yZXM6IGJvb2xlYW47XG4gIGNvbnN0cnVjdG9yKHByb3BzPzogQW5ub3RhdGlvbkxvZ2dlclByb3BzKSB7XG4gICAgdGhpcy52ZXJib3NlID0gcHJvcHM/LnZlcmJvc2UgPz8gZmFsc2U7XG4gICAgdGhpcy5sb2dJZ25vcmVzID0gcHJvcHM/LmxvZ0lnbm9yZXMgPz8gZmFsc2U7XG4gIH1cbiAgb25Db21wbGlhbmNlKF9kYXRhOiBOYWdMb2dnZXJDb21wbGlhbmNlRGF0YSk6IHZvaWQge1xuICAgIHJldHVybjtcbiAgfVxuICBvbk5vbkNvbXBsaWFuY2UoZGF0YTogTmFnTG9nZ2VyTm9uQ29tcGxpYW5jZURhdGEpOiB2b2lkIHtcbiAgICBjb25zdCBtZXNzYWdlID0gdGhpcy5jcmVhdGVNZXNzYWdlKFxuICAgICAgZGF0YS5ydWxlSWQsXG4gICAgICBkYXRhLmZpbmRpbmdJZCxcbiAgICAgIGRhdGEucnVsZUluZm8sXG4gICAgICBkYXRhLnJ1bGVFeHBsYW5hdGlvbixcbiAgICAgIHRoaXMudmVyYm9zZVxuICAgICk7XG4gICAgaWYgKGRhdGEucnVsZUxldmVsID09IE5hZ01lc3NhZ2VMZXZlbC5FUlJPUikge1xuICAgICAgQW5ub3RhdGlvbnMub2YoZGF0YS5yZXNvdXJjZSkuYWRkRXJyb3IobWVzc2FnZSk7XG4gICAgfSBlbHNlIGlmIChkYXRhLnJ1bGVMZXZlbCA9PSBOYWdNZXNzYWdlTGV2ZWwuV0FSTikge1xuICAgICAgQW5ub3RhdGlvbnMub2YoZGF0YS5yZXNvdXJjZSkuYWRkV2FybmluZyhtZXNzYWdlKTtcbiAgICB9XG4gIH1cbiAgb25TdXBwcmVzc2VkKGRhdGE6IE5hZ0xvZ2dlclN1cHByZXNzZWREYXRhKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubG9nSWdub3Jlcykge1xuICAgICAgY29uc3QgbWVzc2FnZSA9IHRoaXMuY3JlYXRlTWVzc2FnZShcbiAgICAgICAgdGhpcy5zdXBwcmVzc2lvbklkLFxuICAgICAgICBkYXRhLmZpbmRpbmdJZCxcbiAgICAgICAgYCR7ZGF0YS5ydWxlSWR9IHdhcyB0cmlnZ2VyZWQgYnV0IHN1cHByZXNzZWQuYCxcbiAgICAgICAgYFByb3ZpZGVkIHJlYXNvbjogXCIke2RhdGEuc3VwcHJlc3Npb25SZWFzb259XCJgLFxuICAgICAgICB0aGlzLnZlcmJvc2VcbiAgICAgICk7XG4gICAgICBBbm5vdGF0aW9ucy5vZihkYXRhLnJlc291cmNlKS5hZGRJbmZvKG1lc3NhZ2UpO1xuICAgIH1cbiAgfVxuICBvbkVycm9yKGRhdGE6IE5hZ0xvZ2dlckVycm9yRGF0YSk6IHZvaWQge1xuICAgIGNvbnN0IGluZm9ybWF0aW9uID0gYCcke2RhdGEucnVsZUlkfScgdGhyZXcgYW4gZXJyb3IgZHVyaW5nIHZhbGlkYXRpb24uIFRoaXMgaXMgZ2VuZXJhbGx5IGNhdXNlZCBieSBhIHBhcmFtZXRlciByZWZlcmVuY2luZyBhbiBpbnRyaW5zaWMgZnVuY3Rpb24uIFlvdSBjYW4gc3VwcHJlc3MgdGhlIFwiJHtWQUxJREFUSU9OX0ZBSUxVUkVfSUR9XCIgdG8gZ2V0IHJpZCBvZiB0aGlzIGVycm9yLiBGb3IgbW9yZSBkZXRhaWxzIGVuYWJsZSB2ZXJib3NlIGxvZ2dpbmcuJ2A7XG4gICAgY29uc3QgbWVzc2FnZSA9IHRoaXMuY3JlYXRlTWVzc2FnZShcbiAgICAgIFZBTElEQVRJT05fRkFJTFVSRV9JRCxcbiAgICAgIGRhdGEucnVsZUlkLFxuICAgICAgaW5mb3JtYXRpb24sXG4gICAgICBkYXRhLmVycm9yTWVzc2FnZSxcbiAgICAgIHRoaXMudmVyYm9zZVxuICAgICk7XG4gICAgQW5ub3RhdGlvbnMub2YoZGF0YS5yZXNvdXJjZSkuYWRkV2FybmluZyhtZXNzYWdlKTtcbiAgfVxuICBvblN1cHByZXNzZWRFcnJvcihkYXRhOiBOYWdMb2dnZXJTdXBwcmVzc2VkRXJyb3JEYXRhKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubG9nSWdub3JlcyA9PT0gdHJ1ZSkge1xuICAgICAgY29uc3QgbWVzc2FnZSA9IHRoaXMuY3JlYXRlTWVzc2FnZShcbiAgICAgICAgdGhpcy5zdXBwcmVzc2lvbklkLFxuICAgICAgICBkYXRhLnJ1bGVJZCxcbiAgICAgICAgYCR7VkFMSURBVElPTl9GQUlMVVJFX0lEfSB3YXMgdHJpZ2dlcmVkIGJ1dCBzdXBwcmVzc2VkLmAsXG4gICAgICAgIGRhdGEuZXJyb3JTdXBwcmVzc2lvblJlYXNvbixcbiAgICAgICAgdGhpcy52ZXJib3NlXG4gICAgICApO1xuICAgICAgQW5ub3RhdGlvbnMub2YoZGF0YS5yZXNvdXJjZSkuYWRkSW5mbyhtZXNzYWdlKTtcbiAgICB9XG4gIH1cbiAgb25Ob3RBcHBsaWNhYmxlKF9kYXRhOiBOYWdMb2dnZXJOb3RBcHBsaWNhYmxlRGF0YSk6IHZvaWQge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVNZXNzYWdlKFxuICAgIHJ1bGVJZDogc3RyaW5nLFxuICAgIGZpbmRpbmdJZDogc3RyaW5nLFxuICAgIHJ1bGVJbmZvOiBzdHJpbmcsXG4gICAgcnVsZUV4cGxhbmF0aW9uOiBzdHJpbmcsXG4gICAgdmVyYm9zZTogYm9vbGVhblxuICApOiBzdHJpbmcge1xuICAgIGxldCBtZXNzYWdlID0gZmluZGluZ0lkXG4gICAgICA/IGAke3J1bGVJZH1bJHtmaW5kaW5nSWR9XTogJHtydWxlSW5mb31gXG4gICAgICA6IGAke3J1bGVJZH06ICR7cnVsZUluZm99YDtcbiAgICByZXR1cm4gdmVyYm9zZSA/IGAke21lc3NhZ2V9ICR7cnVsZUV4cGxhbmF0aW9ufVxcbmAgOiBgJHttZXNzYWdlfVxcbmA7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBOYWdSZXBvcnRTY2hlbWEge1xuICByZWFkb25seSBsaW5lczogTmFnUmVwb3J0TGluZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5hZ1JlcG9ydExpbmUge1xuICByZWFkb25seSBydWxlSWQ6IHN0cmluZztcbiAgcmVhZG9ubHkgcmVzb3VyY2VJZDogc3RyaW5nO1xuICByZWFkb25seSBjb21wbGlhbmNlOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGV4Y2VwdGlvblJlYXNvbjogc3RyaW5nO1xuICByZWFkb25seSBydWxlTGV2ZWw6IHN0cmluZztcbiAgcmVhZG9ubHkgcnVsZUluZm86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQb3NzaWJsZSBvdXRwdXQgZm9ybWF0cyBvZiB0aGUgTmFnUmVwb3J0XG4gKi9cbmV4cG9ydCBlbnVtIE5hZ1JlcG9ydEZvcm1hdCB7XG4gIENTViA9ICdjc3YnLFxuICBKU09OID0gJ2pzb24nLFxufVxuXG4vKipcbiAqIFByb3BzIGZvciB0aGUgTmFnUmVwb3J0TG9nZ2VyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTmFnUmVwb3J0TG9nZ2VyUHJvcHMge1xuICByZWFkb25seSBmb3JtYXRzOiBOYWdSZXBvcnRGb3JtYXRbXTtcbn1cblxuLyoqXG4gKiBBIE5hZ0xvZ2dlciB0aGF0IGNyZWF0ZXMgY29tcGxpYW5jZSByZXBvcnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBOYWdSZXBvcnRMb2dnZXIgaW1wbGVtZW50cyBJTmFnTG9nZ2VyIHtcbiAgcHJpdmF0ZSByZXBvcnRTdGFja3MgPSBuZXcgTWFwPE5hZ1JlcG9ydEZvcm1hdCwgQXJyYXk8c3RyaW5nPj4oKTtcbiAgcmVhZG9ubHkgZm9ybWF0czogTmFnUmVwb3J0Rm9ybWF0W107XG4gIGNvbnN0cnVjdG9yKHByb3BzOiBOYWdSZXBvcnRMb2dnZXJQcm9wcykge1xuICAgIGlmIChwcm9wcy5mb3JtYXRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNdXN0IHByb3ZpZGUgYXQgbGVhc3QgMSBOYWdSZXBvcnRGb3JtYXQuJyk7XG4gICAgfVxuICAgIHRoaXMuZm9ybWF0cyA9IHByb3BzLmZvcm1hdHM7XG4gIH1cblxuICBvbkNvbXBsaWFuY2UoZGF0YTogTmFnTG9nZ2VyQ29tcGxpYW5jZURhdGEpOiB2b2lkIHtcbiAgICB0aGlzLmluaXRpYWxpemVTdGFja1JlcG9ydChkYXRhKTtcbiAgICB0aGlzLndyaXRlVG9TdGFja0NvbXBsaWFuY2VSZXBvcnQoZGF0YSwgTmFnUnVsZUNvbXBsaWFuY2UuQ09NUExJQU5UKTtcbiAgfVxuICBvbk5vbkNvbXBsaWFuY2UoZGF0YTogTmFnTG9nZ2VyTm9uQ29tcGxpYW5jZURhdGEpOiB2b2lkIHtcbiAgICB0aGlzLmluaXRpYWxpemVTdGFja1JlcG9ydChkYXRhKTtcbiAgICB0aGlzLndyaXRlVG9TdGFja0NvbXBsaWFuY2VSZXBvcnQoZGF0YSwgTmFnUnVsZUNvbXBsaWFuY2UuTk9OX0NPTVBMSUFOVCk7XG4gIH1cbiAgb25TdXBwcmVzc2VkKGRhdGE6IE5hZ0xvZ2dlclN1cHByZXNzZWREYXRhKTogdm9pZCB7XG4gICAgdGhpcy5pbml0aWFsaXplU3RhY2tSZXBvcnQoZGF0YSk7XG4gICAgdGhpcy53cml0ZVRvU3RhY2tDb21wbGlhbmNlUmVwb3J0KFxuICAgICAgZGF0YSxcbiAgICAgIE5hZ1J1bGVQb3N0VmFsaWRhdGlvblN0YXRlcy5TVVBQUkVTU0VEXG4gICAgKTtcbiAgfVxuICBvbkVycm9yKGRhdGE6IE5hZ0xvZ2dlckVycm9yRGF0YSk6IHZvaWQge1xuICAgIHRoaXMuaW5pdGlhbGl6ZVN0YWNrUmVwb3J0KGRhdGEpO1xuICAgIHRoaXMud3JpdGVUb1N0YWNrQ29tcGxpYW5jZVJlcG9ydChcbiAgICAgIGRhdGEsXG4gICAgICBOYWdSdWxlUG9zdFZhbGlkYXRpb25TdGF0ZXMuVU5LTk9XTlxuICAgICk7XG4gIH1cbiAgb25TdXBwcmVzc2VkRXJyb3IoZGF0YTogTmFnTG9nZ2VyU3VwcHJlc3NlZEVycm9yRGF0YSk6IHZvaWQge1xuICAgIHRoaXMuaW5pdGlhbGl6ZVN0YWNrUmVwb3J0KGRhdGEpO1xuICAgIHRoaXMud3JpdGVUb1N0YWNrQ29tcGxpYW5jZVJlcG9ydChcbiAgICAgIGRhdGEsXG4gICAgICBOYWdSdWxlUG9zdFZhbGlkYXRpb25TdGF0ZXMuU1VQUFJFU1NFRFxuICAgICk7XG4gIH1cbiAgb25Ob3RBcHBsaWNhYmxlKGRhdGE6IE5hZ0xvZ2dlck5vdEFwcGxpY2FibGVEYXRhKTogdm9pZCB7XG4gICAgdGhpcy5pbml0aWFsaXplU3RhY2tSZXBvcnQoZGF0YSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0Rm9ybWF0U3RhY2tzKGZvcm1hdDogTmFnUmVwb3J0Rm9ybWF0KTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLnJlcG9ydFN0YWNrcy5nZXQoZm9ybWF0KSA/PyBbXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSByZXBvcnQgZm9yIHRoZSBydWxlIHBhY2sncyBjb21wbGlhbmNlIHJlcG9ydCBmb3IgdGhlIHJlc291cmNlJ3MgU3RhY2sgaWYgaXQgZG9lc24ndCBleGlzdFxuICAgKiBAcGFyYW0gZGF0YVxuICAgKi9cbiAgcHJvdGVjdGVkIGluaXRpYWxpemVTdGFja1JlcG9ydChkYXRhOiBOYWdMb2dnZXJCYXNlRGF0YSk6IHZvaWQge1xuICAgIGZvciAoY29uc3QgZm9ybWF0IG9mIHRoaXMuZm9ybWF0cykge1xuICAgICAgY29uc3Qgc3RhY2tOYW1lID0gZGF0YS5yZXNvdXJjZS5zdGFjay5uZXN0ZWRcbiAgICAgICAgPyBOYW1lcy51bmlxdWVJZChkYXRhLnJlc291cmNlLnN0YWNrKVxuICAgICAgICA6IGRhdGEucmVzb3VyY2Uuc3RhY2suc3RhY2tOYW1lO1xuICAgICAgY29uc3QgZmlsZU5hbWUgPSBgJHtkYXRhLm5hZ1BhY2tOYW1lfS0ke3N0YWNrTmFtZX0tTmFnUmVwb3J0LiR7Zm9ybWF0fWA7XG4gICAgICBjb25zdCBzdGFja3MgPSB0aGlzLmdldEZvcm1hdFN0YWNrcyhmb3JtYXQpO1xuICAgICAgaWYgKCFzdGFja3MuaW5jbHVkZXMoZmlsZU5hbWUpKSB7XG4gICAgICAgIGNvbnN0IGZpbGVQYXRoID0gam9pbihBcHAub2YoZGF0YS5yZXNvdXJjZSk/Lm91dGRpciA/PyAnJywgZmlsZU5hbWUpO1xuICAgICAgICB0aGlzLnJlcG9ydFN0YWNrcy5zZXQoZm9ybWF0LCBbLi4uc3RhY2tzLCBmaWxlTmFtZV0pO1xuICAgICAgICBsZXQgYm9keSA9ICcnO1xuICAgICAgICBpZiAoZm9ybWF0ID09PSBOYWdSZXBvcnRGb3JtYXQuQ1NWKSB7XG4gICAgICAgICAgYm9keSA9XG4gICAgICAgICAgICAnUnVsZSBJRCxSZXNvdXJjZSBJRCxDb21wbGlhbmNlLEV4Y2VwdGlvbiBSZWFzb24sUnVsZSBMZXZlbCxSdWxlIEluZm9cXG4nO1xuICAgICAgICB9IGVsc2UgaWYgKGZvcm1hdCA9PT0gTmFnUmVwb3J0Rm9ybWF0LkpTT04pIHtcbiAgICAgICAgICBib2R5ID0gSlNPTi5zdHJpbmdpZnkoeyBsaW5lczogW10gfSBhcyBOYWdSZXBvcnRTY2hlbWEpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgIGBVbnJlY29nbml6ZWQgb3V0cHV0IGZvcm1hdCAke2Zvcm1hdH0gZm9yIHRoZSBOYWdSZXBvcnRMb2dnZXJgXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICB3cml0ZUZpbGVTeW5jKGZpbGVQYXRoLCBib2R5KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgd3JpdGVUb1N0YWNrQ29tcGxpYW5jZVJlcG9ydChcbiAgICBkYXRhOiBOYWdMb2dnZXJCYXNlRGF0YSxcbiAgICBjb21wbGlhbmNlOiBOYWdSdWxlU3RhdGVzXG4gICk6IHZvaWQge1xuICAgIGZvciAoY29uc3QgZm9ybWF0IG9mIHRoaXMuZm9ybWF0cykge1xuICAgICAgY29uc3Qgc3RhY2tOYW1lID0gZGF0YS5yZXNvdXJjZS5zdGFjay5uZXN0ZWRcbiAgICAgICAgPyBOYW1lcy51bmlxdWVJZChkYXRhLnJlc291cmNlLnN0YWNrKVxuICAgICAgICA6IGRhdGEucmVzb3VyY2Uuc3RhY2suc3RhY2tOYW1lO1xuICAgICAgY29uc3QgZmlsZU5hbWUgPSBgJHtkYXRhLm5hZ1BhY2tOYW1lfS0ke3N0YWNrTmFtZX0tTmFnUmVwb3J0LiR7Zm9ybWF0fWA7XG4gICAgICBjb25zdCBmaWxlUGF0aCA9IGpvaW4oQXBwLm9mKGRhdGEucmVzb3VyY2UpPy5vdXRkaXIgPz8gJycsIGZpbGVOYW1lKTtcbiAgICAgIGlmIChmb3JtYXQgPT09IE5hZ1JlcG9ydEZvcm1hdC5DU1YpIHtcbiAgICAgICAgLy98IFJ1bGUgSUQgfCBSZXNvdXJjZSBJRCB8IENvbXBsaWFuY2UgfCBFeGNlcHRpb24gUmVhc29uIHwgUnVsZSBMZXZlbCB8IFJ1bGUgSW5mb1xuICAgICAgICBjb25zdCBsaW5lID0gQXJyYXk8c3RyaW5nPigpO1xuICAgICAgICBsaW5lLnB1c2goZGF0YS5ydWxlSWQpO1xuICAgICAgICBsaW5lLnB1c2goZGF0YS5yZXNvdXJjZS5ub2RlLnBhdGgpO1xuICAgICAgICBpZiAoY29tcGxpYW5jZSA9PT0gTmFnUnVsZVBvc3RWYWxpZGF0aW9uU3RhdGVzLlNVUFBSRVNTRUQpIHtcbiAgICAgICAgICBsaW5lLnB1c2goTmFnUnVsZVBvc3RWYWxpZGF0aW9uU3RhdGVzLlNVUFBSRVNTRUQpO1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIChkYXRhIGFzIE5hZ0xvZ2dlclN1cHByZXNzZWREYXRhKS5zdXBwcmVzc2lvblJlYXNvbiAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICBsaW5lLnB1c2goKGRhdGEgYXMgTmFnTG9nZ2VyU3VwcHJlc3NlZERhdGEpLnN1cHByZXNzaW9uUmVhc29uKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbGluZS5wdXNoKFxuICAgICAgICAgICAgICAoZGF0YSBhcyBOYWdMb2dnZXJTdXBwcmVzc2VkRXJyb3JEYXRhKS5lcnJvclN1cHByZXNzaW9uUmVhc29uXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBsaW5lLnB1c2goY29tcGxpYW5jZSk7XG4gICAgICAgICAgbGluZS5wdXNoKCdOL0EnKTtcbiAgICAgICAgfVxuICAgICAgICBsaW5lLnB1c2goZGF0YS5ydWxlTGV2ZWwpO1xuICAgICAgICBsaW5lLnB1c2goZGF0YS5ydWxlSW5mbyk7XG4gICAgICAgIGFwcGVuZEZpbGVTeW5jKFxuICAgICAgICAgIGZpbGVQYXRoLFxuICAgICAgICAgIGxpbmUubWFwKChpKSA9PiAnXCInICsgaS5yZXBsYWNlKC9cIi9nLCAnXCJcIicpICsgJ1wiJykuam9pbignLCcpICsgJ1xcbidcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSBpZiAoZm9ybWF0ID09PSBOYWdSZXBvcnRGb3JtYXQuSlNPTikge1xuICAgICAgICBjb25zdCByZXBvcnQgPSBKU09OLnBhcnNlKFxuICAgICAgICAgIHJlYWRGaWxlU3luYyhmaWxlUGF0aCwgJ3V0ZjgnKVxuICAgICAgICApIGFzIE5hZ1JlcG9ydFNjaGVtYTtcbiAgICAgICAgbGV0IGV4Y2VwdGlvblJlYXNvbiA9ICdOL0EnO1xuICAgICAgICBpZiAoY29tcGxpYW5jZSA9PT0gTmFnUnVsZVBvc3RWYWxpZGF0aW9uU3RhdGVzLlNVUFBSRVNTRUQpIHtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAoZGF0YSBhcyBOYWdMb2dnZXJTdXBwcmVzc2VkRGF0YSkuc3VwcHJlc3Npb25SZWFzb24gIT09IHVuZGVmaW5lZFxuICAgICAgICAgICkge1xuICAgICAgICAgICAgZXhjZXB0aW9uUmVhc29uID0gKGRhdGEgYXMgTmFnTG9nZ2VyU3VwcHJlc3NlZERhdGEpXG4gICAgICAgICAgICAgIC5zdXBwcmVzc2lvblJlYXNvbjtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZXhjZXB0aW9uUmVhc29uID0gKGRhdGEgYXMgTmFnTG9nZ2VyU3VwcHJlc3NlZEVycm9yRGF0YSlcbiAgICAgICAgICAgICAgLmVycm9yU3VwcHJlc3Npb25SZWFzb247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJlcG9ydC5saW5lcy5wdXNoKHtcbiAgICAgICAgICBydWxlSWQ6IGRhdGEucnVsZUlkLFxuICAgICAgICAgIHJlc291cmNlSWQ6IGRhdGEucmVzb3VyY2Uubm9kZS5wYXRoLFxuICAgICAgICAgIGNvbXBsaWFuY2UsXG4gICAgICAgICAgZXhjZXB0aW9uUmVhc29uLFxuICAgICAgICAgIHJ1bGVMZXZlbDogZGF0YS5ydWxlTGV2ZWwsXG4gICAgICAgICAgcnVsZUluZm86IGRhdGEucnVsZUluZm8sXG4gICAgICAgIH0pO1xuICAgICAgICB3cml0ZUZpbGVTeW5jKGZpbGVQYXRoLCBKU09OLnN0cmluZ2lmeShyZXBvcnQpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBgVW5yZWNvZ25pemVkIG91dHB1dCBmb3JtYXQgJHtmb3JtYXR9IGZvciB0aGUgTmFnUmVwb3J0TG9nZ2VyYFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
|