From 8829f84489b2f9a8e36fcd709f79d8f96952c667 Mon Sep 17 00:00:00 2001 From: kddejong <36457093+kddejong@users.noreply.github.com> Date: Thu, 26 Sep 2024 18:43:45 +0000 Subject: [PATCH] Update CloudFormation schemas to 2024-09-26 --- .../data/AdditionalSpecs/Policies.json | 28 +- ...5a0d14c62111ff864923fc7b7960dda6.meta.json | 2 +- ...2b6653d7edfe98a64577daae0b481c38.meta.json | 2 +- ...5e4752bbc10d9552de8df8f81348c42b.meta.json | 2 +- ...63a1bf4413531ad420ff60a5a0d7965d.meta.json | 2 +- ...4cfc32461d10e077e7e5de1fc25d8b8f.meta.json | 2 +- ...d3fe2e7838c23f6acd054944cb2b1618.meta.json | 2 +- ...7e9907e4a512c10ddae70b98b4dada43.meta.json | 2 +- ...3fbf0a0fb76625ba46dbe42abd34333c.meta.json | 2 +- ...376aa3fe15197e3bb0e9290ff8719b4e.meta.json | 2 +- ...f60a7b5acfc406ebb10d5748cbb8ed41.meta.json | 2 +- ...aa3b299156f53fa9d1fd8eeabec5a268.meta.json | 2 +- ...f35136af536e92a84ccbaf062c315066.meta.json | 2 +- ...04470222e5e4c690bacef5312891581d.meta.json | 2 +- ...646b563d773e34b020d0ddeab2fe195b.meta.json | 2 +- ...548d44cc32e246ec9d7742088a2c17f8.meta.json | 2 +- ...98ac34d4109512e0e0947ef752dcb9c9.meta.json | 2 +- ...7e4a4542365d35fd75466abcf306eeca.meta.json | 2 +- ...69b7533eabab32ecfc0a00cb19e55a5f.meta.json | 2 +- ...e783fe32b6bb6b13774c32fcca1d303a.meta.json | 2 +- ...05f2567698dfdfa979bf0ccdb68cb856.meta.json | 2 +- ...92030ae5c03d7451980a15735e557edb.meta.json | 2 +- ...6bb7f975b606f8db57532faddfcdd8c8.meta.json | 2 +- ...73ff097c685cda0a63c08a6416dc58ed.meta.json | 2 +- ...25c8d66a1f84939600616bab42579541.meta.json | 2 +- ...972142778e1ff452383ede2ad4bac3d7.meta.json | 2 +- ...26b315ef6f38515840537c02de23abe2.meta.json | 2 +- ...cf908a34e6b4c3fb3e97e2b584f651ca.meta.json | 2 +- ...318c41c71c21b0a17d4f68d82c5aee21.meta.json | 2 +- ...6cd7e4ced378cacdb93f76ed227b5c5d.meta.json | 2 +- ...b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json | 2 +- ...41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json | 2 +- ...b2d398fe33547eed780b9b70f10eb4a2.meta.json | 2 +- ...e50a1638ffe0a5dba0d8805c190a05f8.meta.json | 2 +- ...3b69878d351cffd417dc9a457df808af.meta.json | 2 +- .../dbinstanceclass_enum.json | 144 ++++ .../aws_ec2_instance/instancetype_enum.json | 816 ++++++++++++++++++ .../aws_rds_dbcluster/engine_version.json | 6 +- .../aws_rds_dbinstance/engine_version.json | 6 +- .../schemas/providers/af_south_1/__init__.py | 6 +- .../aws-amazonmq-configuration.json | 33 +- .../af_south_1/aws-appflow-connector.json | 75 ++ .../af_south_1/aws-cognito-userpool.json | 502 +++++++++++ .../aws-route53profiles-profile.json | 76 ++ ...ws-route53profiles-profileassociation.json | 78 ++ .../aws-securityhub-automationrule.json | 690 --------------- .../schemas/providers/ap_east_1/__init__.py | 3 +- .../aws-amazonmq-configuration.json | 33 +- .../ap_east_1/aws-cognito-userpool.json | 502 +++++++++++ .../aws-securityhub-automationrule.json | 690 --------------- .../providers/ap_northeast_1/__init__.py | 2 - .../aws-workspacesweb-identityprovider.json | 111 +++ .../aws-workspacesweb-usersettings.json | 190 ++++ .../providers/ap_northeast_2/__init__.py | 17 +- .../aws-amazonmq-configuration.json | 33 +- .../ap_northeast_2/aws-cognito-userpool.json | 502 +++++++++++ .../aws-route53profiles-profile.json | 76 ++ ...ws-route53profiles-profileassociation.json | 78 ++ .../aws-securityhub-automationrule.json | 690 --------------- .../providers/ap_northeast_3/__init__.py | 2 +- .../ap_northeast_3/aws-cognito-userpool.json | 502 +++++++++++ .../aws-securityhub-automationrule.json | 690 --------------- .../schemas/providers/ap_south_1/__init__.py | 2 - .../ap_south_1/aws-appflow-connector.json | 75 ++ .../ap_south_1/aws-cognito-userpool.json | 502 +++++++++++ .../schemas/providers/ap_south_2/__init__.py | 6 +- .../aws-amazonmq-configuration.json | 77 ++ .../ap_south_2/aws-apigatewayv2-api.json | 165 ---- .../ap_south_2/aws-cognito-userpool.json | 502 +++++++++++ .../aws-route53profiles-profile.json | 76 ++ ...ws-route53profiles-profileassociation.json | 78 ++ .../aws-securityhub-automationrule.json | 690 --------------- .../providers/ap_southeast_2/__init__.py | 2 - .../aws-auditmanager-assessment.json | 311 +++++++ .../ap_southeast_2/aws-cognito-userpool.json | 502 +++++++++++ .../providers/ap_southeast_3/__init__.py | 7 +- .../aws-amazonmq-configuration.json | 77 ++ .../ap_southeast_3/aws-apigatewayv2-api.json | 165 ---- .../ap_southeast_3/aws-cognito-userpool.json | 502 +++++++++++ .../ap_southeast_3/aws-glue-database.json | 117 --- .../aws-route53profiles-profile.json | 76 ++ ...ws-route53profiles-profileassociation.json | 78 ++ .../aws-securityhub-automationrule.json | 690 --------------- .../providers/ap_southeast_4/__init__.py | 7 +- .../aws-amazonmq-configuration.json | 77 ++ .../ap_southeast_4/aws-apigatewayv2-api.json | 165 ---- .../ap_southeast_4/aws-cognito-userpool.json | 502 +++++++++++ .../ap_southeast_4/aws-ec2-vpcendpoint.json | 66 -- .../aws-route53profiles-profile.json | 76 ++ ...ws-route53profiles-profileassociation.json | 78 ++ .../aws-securityhub-automationrule.json | 690 --------------- .../providers/ap_southeast_5/__init__.py | 7 + .../ap_southeast_5/aws-ec2-vpcendpoint.json | 66 -- .../providers/ca_central_1/__init__.py | 2 +- .../ca_central_1/aws-cognito-userpool.json | 502 +++++++++++ .../aws-securityhub-automationrule.json | 690 --------------- .../schemas/providers/ca_west_1/__init__.py | 8 +- .../ca_west_1/aws-amazonmq-configuration.json | 77 ++ .../ca_west_1/aws-apigatewayv2-api.json | 165 ---- .../ca_west_1/aws-cognito-userpool.json | 502 +++++++++++ .../providers/ca_west_1/aws-fms-policy.json | 416 --------- .../aws-route53profiles-profile.json | 76 ++ ...ws-route53profiles-profileassociation.json | 78 ++ .../aws-securityhub-automationrule.json | 690 --------------- .../aws-securityhub-securitycontrol.json | 164 ---- .../schemas/providers/cn_north_1/__init__.py | 3 +- .../providers/cn_north_1/aws-eks-cluster.json | 386 +++++++++ .../cn_north_1/aws-rds-globalcluster.json | 98 --- .../providers/cn_northwest_1/__init__.py | 5 +- .../aws-amazonmq-configuration.json | 77 ++ .../aws-ec2-transitgatewayattachment.json | 92 ++ .../aws-ec2-transitgatewayvpcattachment.json | 109 +++ .../cn_northwest_1/aws-fms-policy.json | 416 --------- .../aws-securityhub-securitycontrol.json | 164 ---- .../providers/eu_central_1/__init__.py | 17 +- .../eu_central_1/aws-codebuild-fleet.json | 168 ++++ .../eu_central_1/aws-eks-cluster.json | 386 +++++++++ ...ws-lakeformation-principalpermissions.json | 439 ++++++++++ .../eu_central_1/aws-lakeformation-tag.json | 59 ++ .../eu_central_1/aws-lightsail-bucket.json | 110 +++ .../aws-lightsail-certificate.json | 79 ++ .../eu_central_1/aws-lightsail-container.json | 251 ++++++ .../eu_central_1/aws-lightsail-database.json | 167 ++++ .../eu_central_1/aws-lightsail-disk.json | 170 ++++ .../aws-lightsail-loadbalancer.json | 91 ++ .../eu_central_1/aws-rds-globalcluster.json | 98 --- .../eu_central_1/aws-sagemaker-cluster.json | 309 ------- .../aws-sagemaker-imageversion.json | 171 ++++ ...secretsmanager-secrettargetattachment.json | 33 + .../aws-workspacesweb-identityprovider.json | 111 +++ .../aws-workspacesweb-usersettings.json | 190 ++++ .../providers/eu_central_2/__init__.py | 29 +- .../aws-amazonmq-configuration.json | 77 ++ .../eu_central_2/aws-apigatewayv2-api.json | 165 ---- .../eu_central_2/aws-cognito-userpool.json | 502 +++++++++++ .../eu_central_2/aws-fms-policy.json | 416 --------- .../eu_central_2/aws-iam-instanceprofile.json | 44 + .../aws-route53profiles-profile.json | 76 ++ ...ws-route53profiles-profileassociation.json | 78 ++ .../aws-securityhub-automationrule.json | 690 --------------- .../aws-securityhub-securitycontrol.json | 164 ---- .../schemas/providers/eu_north_1/__init__.py | 4 +- .../aws-amazonmq-configuration.json | 77 ++ .../eu_north_1/aws-cognito-userpool.json | 502 +++++++++++ ...ws-route53profiles-profileassociation.json | 78 ++ .../aws-securityhub-automationrule.json | 690 --------------- .../schemas/providers/eu_south_1/__init__.py | 7 +- .../aws-amazonmq-configuration.json | 77 ++ .../eu_south_1/aws-cognito-userpool.json | 502 +++++++++++ .../eu_south_1/aws-iam-instanceprofile.json | 44 + .../eu_south_1/aws-lambda-function.json | 505 ----------- .../aws-route53profiles-profile.json | 76 ++ ...ws-route53profiles-profileassociation.json | 78 ++ .../aws-securityhub-automationrule.json | 690 --------------- .../schemas/providers/eu_south_2/__init__.py | 5 +- .../aws-amazonmq-configuration.json | 77 ++ .../eu_south_2/aws-apigatewayv2-api.json | 165 ---- .../eu_south_2/aws-cognito-userpool.json | 502 +++++++++++ .../eu_south_2/aws-ec2-vpcendpoint.json | 66 -- .../aws-securityhub-automationrule.json | 690 --------------- .../schemas/providers/eu_west_1/__init__.py | 2 + .../eu_west_1/aws-lambda-function.json | 505 ----------- .../eu_west_1/aws-rekognition-collection.json | 69 -- .../schemas/providers/eu_west_2/__init__.py | 2 +- .../eu_west_2/aws-cognito-userpool.json | 502 +++++++++++ .../aws-securityhub-automationrule.json | 690 --------------- .../schemas/providers/eu_west_3/__init__.py | 3 +- .../eu_west_3/aws-amazonmq-configuration.json | 77 ++ .../eu_west_3/aws-cognito-userpool.json | 502 +++++++++++ .../aws-securityhub-automationrule.json | 690 --------------- .../providers/il_central_1/__init__.py | 6 +- .../aws-amazonmq-configuration.json | 77 ++ .../il_central_1/aws-apigatewayv2-api.json | 165 ---- .../il_central_1/aws-cognito-userpool.json | 502 +++++++++++ .../il_central_1/aws-fms-policy.json | 416 --------- .../aws-securityhub-automationrule.json | 690 --------------- .../aws-securityhub-securitycontrol.json | 164 ---- .../providers/me_central_1/__init__.py | 4 +- .../aws-amazonmq-configuration.json | 77 ++ .../me_central_1/aws-cognito-userpool.json | 502 +++++++++++ .../me_central_1/aws-glue-database.json | 117 --- .../aws-securityhub-automationrule.json | 690 --------------- .../schemas/providers/me_south_1/__init__.py | 5 +- .../aws-amazonmq-configuration.json | 77 ++ .../me_south_1/aws-cognito-userpool.json | 502 +++++++++++ .../aws-route53profiles-profile.json | 76 ++ ...ws-route53profiles-profileassociation.json | 78 ++ .../aws-securityhub-automationrule.json | 690 --------------- .../schemas/providers/sa_east_1/__init__.py | 1 - .../sa_east_1/aws-cognito-userpool.json | 502 +++++++++++ .../us_east_1/aws-amazonmq-configuration.json | 33 +- .../us_east_1/aws-cognito-userpool.json | 10 + .../us_east_1/aws-ec2-transitgateway.json | 3 + .../aws-ec2-transitgatewayattachment.json | 3 + .../aws-ec2-transitgatewayvpcattachment.json | 3 + .../us_east_1/aws-rds-globalcluster.json | 30 + .../aws-route53profiles-profile.json | 5 +- ...ws-route53profiles-profileassociation.json | 3 +- .../us_east_1/aws-sagemaker-cluster.json | 2 +- .../us_east_1/aws-ses-mailmanagerruleset.json | 14 + .../us_east_1/aws-wisdom-knowledgebase.json | 3 +- .../schemas/providers/us_east_2/__init__.py | 3 +- .../us_east_2/aws-cognito-userpool.json | 502 +++++++++++ ...ws-route53profiles-profileassociation.json | 78 ++ .../aws-securityhub-automationrule.json | 690 --------------- .../providers/us_gov_east_1/__init__.py | 2 +- .../aws-amazonmq-configuration.json | 77 ++ .../aws-securityhub-automationrule.json | 690 --------------- .../providers/us_gov_west_1/__init__.py | 5 - .../aws-amazonmq-configuration.json | 77 ++ .../us_gov_west_1/aws-cognito-userpool.json | 502 +++++++++++ .../us_gov_west_1/aws-ec2-transitgateway.json | 93 ++ .../aws-ec2-transitgatewayattachment.json | 92 ++ .../aws-ec2-transitgatewayvpcattachment.json | 109 +++ .../schemas/providers/us_west_1/__init__.py | 2 +- .../us_west_1/aws-cognito-userpool.json | 502 +++++++++++ .../aws-securityhub-automationrule.json | 690 --------------- .../schemas/providers/us_west_2/__init__.py | 5 +- .../providers/us_west_2/aws-eks-cluster.json | 386 +++++++++ .../us_west_2/aws-rds-globalcluster.json | 98 --- .../aws-workspacesweb-identityprovider.json | 111 +++ .../aws-workspacesweb-usersettings.json | 190 ++++ 222 files changed, 20825 insertions(+), 20299 deletions(-) rename src/cfnlint/data/schemas/providers/{eu_central_1 => af_south_1}/aws-amazonmq-configuration.json (59%) create mode 100644 src/cfnlint/data/schemas/providers/af_south_1/aws-appflow-connector.json create mode 100644 src/cfnlint/data/schemas/providers/af_south_1/aws-cognito-userpool.json create mode 100644 src/cfnlint/data/schemas/providers/af_south_1/aws-route53profiles-profile.json create mode 100644 src/cfnlint/data/schemas/providers/af_south_1/aws-route53profiles-profileassociation.json delete mode 100644 src/cfnlint/data/schemas/providers/af_south_1/aws-securityhub-automationrule.json rename src/cfnlint/data/schemas/providers/{us_west_2 => ap_east_1}/aws-amazonmq-configuration.json (59%) create mode 100644 src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpool.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_east_1/aws-securityhub-automationrule.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_1/aws-workspacesweb-identityprovider.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_1/aws-workspacesweb-usersettings.json rename src/cfnlint/data/schemas/providers/{cn_north_1 => ap_northeast_2}/aws-amazonmq-configuration.json (59%) create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_2/aws-cognito-userpool.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_2/aws-route53profiles-profile.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_2/aws-route53profiles-profileassociation.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_2/aws-securityhub-automationrule.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_3/aws-cognito-userpool.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_3/aws-securityhub-automationrule.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-appflow-connector.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-cognito-userpool.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_2/aws-amazonmq-configuration.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_south_2/aws-apigatewayv2-api.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_2/aws-cognito-userpool.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_2/aws-route53profiles-profile.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_2/aws-route53profiles-profileassociation.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_south_2/aws-securityhub-automationrule.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-auditmanager-assessment.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-cognito-userpool.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_3/aws-amazonmq-configuration.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigatewayv2-api.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_3/aws-cognito-userpool.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_3/aws-glue-database.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_3/aws-route53profiles-profile.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_3/aws-route53profiles-profileassociation.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_3/aws-securityhub-automationrule.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-amazonmq-configuration.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-apigatewayv2-api.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-cognito-userpool.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-ec2-vpcendpoint.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-route53profiles-profile.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-route53profiles-profileassociation.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-securityhub-automationrule.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_5/aws-ec2-vpcendpoint.json create mode 100644 src/cfnlint/data/schemas/providers/ca_central_1/aws-cognito-userpool.json delete mode 100644 src/cfnlint/data/schemas/providers/ca_central_1/aws-securityhub-automationrule.json create mode 100644 src/cfnlint/data/schemas/providers/ca_west_1/aws-amazonmq-configuration.json delete mode 100644 src/cfnlint/data/schemas/providers/ca_west_1/aws-apigatewayv2-api.json create mode 100644 src/cfnlint/data/schemas/providers/ca_west_1/aws-cognito-userpool.json delete mode 100644 src/cfnlint/data/schemas/providers/ca_west_1/aws-fms-policy.json create mode 100644 src/cfnlint/data/schemas/providers/ca_west_1/aws-route53profiles-profile.json create mode 100644 src/cfnlint/data/schemas/providers/ca_west_1/aws-route53profiles-profileassociation.json delete mode 100644 src/cfnlint/data/schemas/providers/ca_west_1/aws-securityhub-automationrule.json delete mode 100644 src/cfnlint/data/schemas/providers/ca_west_1/aws-securityhub-securitycontrol.json create mode 100644 src/cfnlint/data/schemas/providers/cn_north_1/aws-eks-cluster.json delete mode 100644 src/cfnlint/data/schemas/providers/cn_north_1/aws-rds-globalcluster.json create mode 100644 src/cfnlint/data/schemas/providers/cn_northwest_1/aws-amazonmq-configuration.json create mode 100644 src/cfnlint/data/schemas/providers/cn_northwest_1/aws-ec2-transitgatewayattachment.json create mode 100644 src/cfnlint/data/schemas/providers/cn_northwest_1/aws-ec2-transitgatewayvpcattachment.json delete mode 100644 src/cfnlint/data/schemas/providers/cn_northwest_1/aws-fms-policy.json delete mode 100644 src/cfnlint/data/schemas/providers/cn_northwest_1/aws-securityhub-securitycontrol.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-codebuild-fleet.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-eks-cluster.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-lakeformation-principalpermissions.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-lakeformation-tag.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-bucket.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-certificate.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-container.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-database.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-disk.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-loadbalancer.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-rds-globalcluster.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-sagemaker-cluster.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-sagemaker-imageversion.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-secretsmanager-secrettargetattachment.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-workspacesweb-identityprovider.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-workspacesweb-usersettings.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-amazonmq-configuration.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-apigatewayv2-api.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-cognito-userpool.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-fms-policy.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-iam-instanceprofile.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-route53profiles-profile.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-route53profiles-profileassociation.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-securityhub-automationrule.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-securityhub-securitycontrol.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-amazonmq-configuration.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-cognito-userpool.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-route53profiles-profileassociation.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-securityhub-automationrule.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-amazonmq-configuration.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-cognito-userpool.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-iam-instanceprofile.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-route53profiles-profile.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-route53profiles-profileassociation.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-securityhub-automationrule.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_2/aws-amazonmq-configuration.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_south_2/aws-apigatewayv2-api.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_2/aws-cognito-userpool.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_south_2/aws-ec2-vpcendpoint.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_south_2/aws-securityhub-automationrule.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-lambda-function.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-rekognition-collection.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-cognito-userpool.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-securityhub-automationrule.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_3/aws-amazonmq-configuration.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_3/aws-cognito-userpool.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_3/aws-securityhub-automationrule.json create mode 100644 src/cfnlint/data/schemas/providers/il_central_1/aws-amazonmq-configuration.json delete mode 100644 src/cfnlint/data/schemas/providers/il_central_1/aws-apigatewayv2-api.json create mode 100644 src/cfnlint/data/schemas/providers/il_central_1/aws-cognito-userpool.json delete mode 100644 src/cfnlint/data/schemas/providers/il_central_1/aws-fms-policy.json delete mode 100644 src/cfnlint/data/schemas/providers/il_central_1/aws-securityhub-automationrule.json delete mode 100644 src/cfnlint/data/schemas/providers/il_central_1/aws-securityhub-securitycontrol.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-amazonmq-configuration.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-cognito-userpool.json delete mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-glue-database.json delete mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-securityhub-automationrule.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-amazonmq-configuration.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-cognito-userpool.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-route53profiles-profile.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-route53profiles-profileassociation.json delete mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-securityhub-automationrule.json create mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-cognito-userpool.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-cognito-userpool.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-route53profiles-profileassociation.json delete mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-securityhub-automationrule.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-amazonmq-configuration.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-securityhub-automationrule.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-amazonmq-configuration.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-cognito-userpool.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-ec2-transitgateway.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-ec2-transitgatewayattachment.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-ec2-transitgatewayvpcattachment.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-cognito-userpool.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-securityhub-automationrule.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-eks-cluster.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-rds-globalcluster.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-workspacesweb-identityprovider.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-workspacesweb-usersettings.json diff --git a/src/cfnlint/data/AdditionalSpecs/Policies.json b/src/cfnlint/data/AdditionalSpecs/Policies.json index 9006ef53fa..81cf86c765 100644 --- a/src/cfnlint/data/AdditionalSpecs/Policies.json +++ b/src/cfnlint/data/AdditionalSpecs/Policies.json @@ -4284,6 +4284,7 @@ "ListPresets", "ListQueues", "ListTagsForResource", + "ListVersions", "PutPolicy", "SearchJobs", "TagResource", @@ -9081,6 +9082,7 @@ "ARNRegex": "^arn:aws:resource-groups:.+", "Actions": [ "AssociateResource", + "CancelTagSyncTask", "CreateGroup", "DeleteGroup", "DeleteGroupPolicy", @@ -9090,14 +9092,18 @@ "GetGroupConfiguration", "GetGroupPolicy", "GetGroupQuery", + "GetTagSyncTask", "GetTags", "GroupResources", "ListGroupResources", + "ListGroupingStatuses", "ListGroups", "ListResourceTypes", + "ListTagSyncTasks", "PutGroupConfiguration", "PutGroupPolicy", "SearchResources", + "StartTagSyncTask", "Tag", "UngroupResources", "Untag", @@ -17284,7 +17290,12 @@ "UpdateStreamMode" ], "HasResource": true, - "StringPrefix": "kinesis" + "StringPrefix": "kinesis", + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:ResourceTag/${TagKey}", + "aws:TagKeys" + ] }, "Amazon Kinesis Firehose": { "ARNFormat": "arn:aws:firehose:{Region}:{Account}:deliverystream/${DeliveryStreamName}", @@ -19271,6 +19282,7 @@ "DeleteRegistration", "DeleteRegistrationAttachment", "DeleteRegistrationFieldValue", + "DeleteResourcePolicy", "DeleteTextMessageSpendLimitOverride", "DeleteVerifiedDestinationNumber", "DeleteVoiceMessageSpendLimitOverride", @@ -19297,12 +19309,14 @@ "DisassociateProtectConfiguration", "DiscardRegistrationVersion", "GetProtectConfigurationCountryRuleSet", + "GetResourcePolicy", "ListPoolOriginationIdentities", "ListRegistrationAssociations", "ListTagsForResource", "PutKeyword", "PutOptedOutNumber", "PutRegistrationFieldValue", + "PutResourcePolicy", "ReleasePhoneNumber", "ReleaseSenderId", "RequestPhoneNumber", @@ -19370,6 +19384,8 @@ "StringPrefix": "polly" }, "Amazon Q": { + "ARNFormat": "arn:aws:codewhisperer:${Region}:${Account}:${ResourceType}/${ResourceId}", + "ARNRegex": "^arn:aws:codewhisperer:.+:[0-9]+:.+", "Actions": [ "CreateAssignment", "DeleteAssignment", @@ -19384,8 +19400,12 @@ "StartTroubleshootingResolutionExplanation", "UpdateTroubleshootingCommandResult" ], - "HasResource": false, - "StringPrefix": "q" + "HasResource": true, + "StringPrefix": "q", + "conditionKeys": [ + "identitystore:GroupId", + "identitystore:UserId" + ] }, "Amazon Q Business": { "ARNFormat": "arn:aws:qbusiness:${Region}:${Account}:${ResourceType}/${ResourceName}", @@ -19480,6 +19500,7 @@ "DeleteQApp", "DisassociateLibraryItemReview", "DisassociateQAppFromUser", + "ExportQAppSessionData", "GetLibraryItem", "GetQApp", "GetQAppSession", @@ -19488,6 +19509,7 @@ "ImportDocumentToQApp", "ImportDocumentToQAppSession", "ListLibraryItems", + "ListQAppSessionData", "ListQApps", "ListTagsForResource", "PredictProblemStatementFromConversation", diff --git a/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json b/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json index fd5eeeb202..3cd19f6d34 100644 --- a/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json @@ -1 +1 @@ -{"etag": "\"eedd97729036abe117c884f92a92a407\"", "url": "https://schema.cloudformation.eu-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"ebdaec508f6e00f6ea7e6f4ab0800642\"", "url": "https://schema.cloudformation.eu-south-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json b/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json index 5f0cb4dcb3..0b3eead026 100644 --- a/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json @@ -1 +1 @@ -{"etag": "\"1111092fee7cc96525f6d8612db4798a\"", "url": "https://schema.cloudformation.cn-north-1.amazonaws.com.cn/CloudformationSchema.zip"} +{"etag": "\"990f2a586081097386e24e2f0495d30b\"", "url": "https://schema.cloudformation.cn-north-1.amazonaws.com.cn/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json b/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json index cada170902..0d2161af4a 100644 --- a/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json @@ -1 +1 @@ -{"etag": "\"817772ab29f8012b5db393153eaf36a6\"", "url": "https://schema.cloudformation.us-gov-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"5aa16262f5a3a06822c697ba7fd67a34\"", "url": "https://schema.cloudformation.us-gov-east-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json b/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json index 0f0fc6cb74..0eda15b343 100644 --- a/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json @@ -1 +1 @@ -{"etag": "\"9832c07ac14b7a387c8ac10e0a61a8c6\"", "url": "https://schema.cloudformation.me-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"a05e6923411b7b83a59a954c57bf0c0f\"", "url": "https://schema.cloudformation.me-south-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json b/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json index d88048cb94..2a6461a9e0 100644 --- a/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json @@ -1 +1 @@ -{"etag": "\"ed56de2ac54391c64cc60c6a5ccd7d65\"", "url": "https://schema.cloudformation.us-gov-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"368090aeda485c695028065e09ed258a\"", "url": "https://schema.cloudformation.us-gov-west-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json b/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json index 8cc503539c..3d275e7953 100644 --- a/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json @@ -1 +1 @@ -{"etag": "\"374f80d7a679284a44d879c06b3e0eb5\"", "url": "https://schema.cloudformation.me-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"d37271d5071d8ea48ec0f4375ab5469c\"", "url": "https://schema.cloudformation.me-central-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json b/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json index e0d40a7789..17f20982e5 100644 --- a/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json @@ -1 +1 @@ -{"etag": "\"d9ffef86bda95d7ffa38d6d4bd68ae11\"", "url": "https://schema.cloudformation.eu-west-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"e3e086ab7e5d909d9cd959243b10248a\"", "url": "https://schema.cloudformation.eu-west-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json b/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json index 17f3e6fac7..d0b72995ba 100644 --- a/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json @@ -1 +1 @@ -{"etag": "\"1f75d4573a9416d8e3d37e9bb331da06\"", "url": "https://schema.cloudformation.cn-northwest-1.amazonaws.com.cn/CloudformationSchema.zip"} +{"etag": "\"177c973dfd4f1b5c274d20b93d6ffaa1\"", "url": "https://schema.cloudformation.cn-northwest-1.amazonaws.com.cn/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json b/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json index dd23bb42fb..183cdf66f3 100644 --- a/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json @@ -1 +1 @@ -{"etag": "\"38542e288efc02365a726ecfbe26947c\"", "url": "https://schema.cloudformation.af-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"d92577746c6e28f5c40675f1ea2d24ac\"", "url": "https://schema.cloudformation.af-south-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json b/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json index 01c62eb8a6..1cf6906d8f 100644 --- a/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json @@ -1 +1 @@ -{"etag": "\"ae2c7a17a4b2d62c15a758493eb0fa18\"", "url": "https://schema.cloudformation.us-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"22fe507c5684b2f59579512922e8a9eb\"", "url": "https://schema.cloudformation.us-west-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/49ed0265aaab90ce485c07e02ea671e5aa3b299156f53fa9d1fd8eeabec5a268.meta.json b/src/cfnlint/data/DownloadsMetadata/49ed0265aaab90ce485c07e02ea671e5aa3b299156f53fa9d1fd8eeabec5a268.meta.json index ce0d86f106..9541e2ab73 100644 --- a/src/cfnlint/data/DownloadsMetadata/49ed0265aaab90ce485c07e02ea671e5aa3b299156f53fa9d1fd8eeabec5a268.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/49ed0265aaab90ce485c07e02ea671e5aa3b299156f53fa9d1fd8eeabec5a268.meta.json @@ -1 +1 @@ -{"etag": "\"6c9632f99d38facd327cd50fefe9b86f\"", "url": "https://schema.cloudformation.ap-southeast-5.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"ce73a6da2cd998fd7d749df0210f9da7\"", "url": "https://schema.cloudformation.ap-southeast-5.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json b/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json index 18e9050515..5beb76be4c 100644 --- a/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json @@ -1 +1 @@ -{"etag": "\"064fd51339aa75a197057e4c8ed922b2\"", "url": "https://schema.cloudformation.eu-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"90dbebdcf7feec5c9ca55ae75b95bdcb\"", "url": "https://schema.cloudformation.eu-central-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json b/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json index 7da0ba61fa..6fcede2c95 100644 --- a/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json @@ -1 +1 @@ -{"etag": "\"9f9734b59e04db6889edd07bf8d020be\"", "url": "https://schema.cloudformation.ap-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"5a47fbe7053ae7425e49b65457d49365\"", "url": "https://schema.cloudformation.ap-south-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json b/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json index a398749ece..4a7f1edcc5 100644 --- a/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json @@ -1 +1 @@ -{"etag": "\"0c8be7b8e792b01ed2f1474d8c7411ad\"", "url": "https://schema.cloudformation.ap-southeast-4.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"22a5d99622be52139777b8a59442706a\"", "url": "https://schema.cloudformation.ap-southeast-4.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json b/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json index 14696053ba..421d8f7a53 100644 --- a/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json @@ -1 +1 @@ -{"etag": "\"e62df2306ff3b96895a9aa2d59f07bba\"", "url": "https://schema.cloudformation.us-east-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"644c0ddc62c331205206b727d7f4fe20\"", "url": "https://schema.cloudformation.us-east-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json b/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json index 003f54a4ed..6b356acf64 100644 --- a/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json @@ -1 +1 @@ -{"etag": "\"e662a6718ccedeaba9ab505036e9751f\"", "url": "https://schema.cloudformation.ap-southeast-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"4aa3d67babe934503f108fe1fce0ca2a\"", "url": "https://schema.cloudformation.ap-southeast-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json b/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json index c7350dda05..b63c1dc878 100644 --- a/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json @@ -1 +1 @@ -{"etag": "\"7059fe74826bcf535a8b6a915b819357\"", "url": "https://schema.cloudformation.ap-northeast-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"5e4445b257f1d8cc0db8f89d0112c12b\"", "url": "https://schema.cloudformation.ap-northeast-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json b/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json index 42e17f6955..64fc6cf6cc 100644 --- a/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json @@ -1 +1 @@ -{"etag": "\"b2f282e02dcfa96d8e92237844f0d5a7\"", "url": "https://schema.cloudformation.ap-southeast-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"e26534a99d40ed86686b65b52e505640\"", "url": "https://schema.cloudformation.ap-southeast-3.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json b/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json index cd17491780..9cfb252255 100644 --- a/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json @@ -1 +1 @@ -{"etag": "\"a67497cc5dd8f5fbbc17e6e526c2c394\"", "url": "https://schema.cloudformation.ap-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"6ca89d30f27f8b1f701586c1a6d9a806\"", "url": "https://schema.cloudformation.ap-east-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json b/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json index e1dfdbb161..df1e80a87b 100644 --- a/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json @@ -1 +1 @@ -{"etag": "\"f4865a5003ea739b34b07cbfec69e247\"", "url": "https://schema.cloudformation.sa-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"ae91a3794e951483598bff09e3a37ff2\"", "url": "https://schema.cloudformation.sa-east-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json b/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json index ac02b2aa2f..e56491fff4 100644 --- a/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json @@ -1 +1 @@ -{"etag": "\"9ed013414bffe88dded9c6fe045f9e94\"", "url": "https://schema.cloudformation.ap-southeast-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"f389dc4a38a6c8fab41d6d83f1017d1c\"", "url": "https://schema.cloudformation.ap-southeast-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json b/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json index bbfc9aa826..ffdaa42fab 100644 --- a/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json @@ -1 +1 @@ -{"etag": "\"e5b635949ea6de0778ddb0e2f0a0f895\"", "url": "https://schema.cloudformation.ca-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"3f69999e82bbf6d78f51a355c0aad495\"", "url": "https://schema.cloudformation.ca-west-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json b/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json index daf57da80e..7e954c396a 100644 --- a/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json @@ -1 +1 @@ -{"etag": "\"9a37c80a99ec007828d47e0bf4685e29\"", "url": "https://schema.cloudformation.eu-central-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"f7a397e45f47f071040fa84f8755d66e\"", "url": "https://schema.cloudformation.eu-central-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json b/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json index 8891b6a053..4ff52d13cb 100644 --- a/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json @@ -1 +1 @@ -{"etag": "\"55b42d74573b3946e7eaca0204897f1e\"", "url": "https://schema.cloudformation.eu-north-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"aa92e2c01ae5833c865f1b9e829ebbd5\"", "url": "https://schema.cloudformation.eu-north-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json b/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json index 5bd6163f2a..153e1112d9 100644 --- a/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json @@ -1 +1 @@ -{"etag": "\"f5cdbf2bbef52fe724a1b9469b3ff265\"", "url": "https://schema.cloudformation.eu-south-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"45f842837c21191446cdbff173197658\"", "url": "https://schema.cloudformation.eu-south-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json b/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json index 0a64eb4aa2..6bb2cd4cea 100644 --- a/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json @@ -1 +1 @@ -{"etag": "\"c6584f753a2bfe704dd4f392b109fce7\"", "url": "https://schema.cloudformation.ca-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"db55a599036be41a6e527a83c2743b1a\"", "url": "https://schema.cloudformation.ca-central-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json b/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json index 47c79dc074..c88b63457d 100644 --- a/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json @@ -1 +1 @@ -{"etag": "\"436da6032feb728649708c5bd87b602d\"", "url": "https://schema.cloudformation.eu-west-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"9d39a90b8ddeab866aa2b37979e95f04\"", "url": "https://schema.cloudformation.eu-west-3.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json b/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json index 94db14d946..f136cbabc8 100644 --- a/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json @@ -1 +1 @@ -{"etag": "\"427c76557a15e5f072ee130b212b9926\"", "url": "https://schema.cloudformation.ap-northeast-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"1e098d2de226ce07c41aa0268afa7318\"", "url": "https://schema.cloudformation.ap-northeast-3.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json b/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json index 713c1fcc58..2e150b01f0 100644 --- a/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json @@ -1 +1 @@ -{"etag": "\"50fc67bfba53b6282bada4fe7b2d952d\"", "url": "https://schema.cloudformation.us-west-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"c7a9028274de364a6e35c6adadf1fe53\"", "url": "https://schema.cloudformation.us-west-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json b/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json index 3bf0326473..564d45cbe2 100644 --- a/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json @@ -1 +1 @@ -{"etag": "\"f5caf81287226ad9d16c97c6fd359e39\"", "url": "https://schema.cloudformation.ap-south-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"f317d8fac2074700a7bf8debfd2f5ec3\"", "url": "https://schema.cloudformation.ap-south-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json b/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json index ca4950d78d..aebb9ab595 100644 --- a/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json @@ -1 +1 @@ -{"etag": "\"6f9e28cb6e781c1c644e0a7c4d3007d7\"", "url": "https://schema.cloudformation.us-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"327f09799a6beecaa6e7b3733c05e8c8\"", "url": "https://schema.cloudformation.us-east-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json b/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json index 8003404a35..a3ef38ff1c 100644 --- a/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json @@ -1 +1 @@ -{"etag": "\"b0fcf829f4f9d1ac6b7a4cf9ef91100e\"", "url": "https://schema.cloudformation.il-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"40c6b19c0321822af91afefe39bab047\"", "url": "https://schema.cloudformation.il-central-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json b/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json index b7c94ac455..20973647e9 100644 --- a/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json @@ -1 +1 @@ -{"etag": "\"8c5cc15030554ef49d40cb424f8f6a5f\"", "url": "https://schema.cloudformation.eu-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"9456e92c31f679a6b69e362ffb7f7e52\"", "url": "https://schema.cloudformation.eu-west-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json b/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json index 5735c8bc39..cb0b70baf0 100644 --- a/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json @@ -1 +1 @@ -{"etag": "\"7c50d1d9b33b3773567d4903253e38fd\"", "url": "https://schema.cloudformation.ap-northeast-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"b6048a3f78faa129c74cd30e67a28a07\"", "url": "https://schema.cloudformation.ap-northeast-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/schemas/extensions/aws_docdb_dbinstance/dbinstanceclass_enum.json b/src/cfnlint/data/schemas/extensions/aws_docdb_dbinstance/dbinstanceclass_enum.json index 8622e2ac70..0e6ddedc0a 100644 --- a/src/cfnlint/data/schemas/extensions/aws_docdb_dbinstance/dbinstanceclass_enum.json +++ b/src/cfnlint/data/schemas/extensions/aws_docdb_dbinstance/dbinstanceclass_enum.json @@ -23,6 +23,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -50,6 +56,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -77,6 +89,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -104,6 +122,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -131,6 +155,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -158,6 +188,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -185,6 +221,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -212,6 +254,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -239,6 +287,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -266,6 +320,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -293,6 +353,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -320,6 +386,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -347,6 +419,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -374,6 +452,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -401,6 +485,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -428,6 +518,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -455,6 +551,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -482,6 +584,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -509,6 +617,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -536,6 +650,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -563,6 +683,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -590,6 +716,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -617,6 +749,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] @@ -644,6 +782,12 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.xlarge", "db.t3.medium", "db.t4g.medium" ] diff --git a/src/cfnlint/data/schemas/extensions/aws_ec2_instance/instancetype_enum.json b/src/cfnlint/data/schemas/extensions/aws_ec2_instance/instancetype_enum.json index 77c640f22f..426bbb5bc0 100644 --- a/src/cfnlint/data/schemas/extensions/aws_ec2_instance/instancetype_enum.json +++ b/src/cfnlint/data/schemas/extensions/aws_ec2_instance/instancetype_enum.json @@ -184,6 +184,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -518,6 +530,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -1029,6 +1053,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -1363,6 +1399,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -1874,6 +1922,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -2208,6 +2268,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -2719,6 +2791,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -3053,6 +3137,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -3564,6 +3660,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -3898,6 +4006,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -4409,6 +4529,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -4743,6 +4875,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -5254,6 +5398,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -5588,6 +5744,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -6099,6 +6267,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -6433,6 +6613,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -6944,6 +7136,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -7278,6 +7482,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -7789,6 +8005,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -8123,6 +8351,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -8634,6 +8874,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -8968,6 +9220,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -9479,6 +9743,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -9813,6 +10089,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -10324,6 +10612,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -10658,6 +10958,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -11169,6 +11481,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -11503,6 +11827,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -12014,6 +12350,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -12348,6 +12696,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -12859,6 +13219,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -13193,6 +13565,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -13704,6 +14088,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -14038,6 +14434,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -14549,6 +14957,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -14883,6 +15303,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -15394,6 +15826,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -15728,6 +16172,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -16239,6 +16695,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -16573,6 +17041,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -17084,6 +17564,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -17418,6 +17910,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -17929,6 +18433,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -18263,6 +18779,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -18774,6 +19302,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -19108,6 +19648,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -19619,6 +20171,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -19953,6 +20517,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -20464,6 +21040,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -20798,6 +21386,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -21309,6 +21909,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -21643,6 +22255,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -22154,6 +22778,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -22488,6 +23124,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -22999,6 +23647,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -23333,6 +23993,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -23844,6 +24516,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -24178,6 +24862,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -24689,6 +25385,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -25023,6 +25731,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -25534,6 +26254,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -25868,6 +26600,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -26379,6 +27123,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -26713,6 +27469,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -27224,6 +27992,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -27558,6 +28338,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", @@ -28069,6 +28861,18 @@ "c7i.metal-24xl", "c7i.metal-48xl", "c7i.xlarge", + "c8g.12xlarge", + "c8g.16xlarge", + "c8g.24xlarge", + "c8g.2xlarge", + "c8g.48xlarge", + "c8g.4xlarge", + "c8g.8xlarge", + "c8g.large", + "c8g.medium", + "c8g.metal-24xl", + "c8g.metal-48xl", + "c8g.xlarge", "cc2.8xlarge", "cr1.8xlarge", "d2.2xlarge", @@ -28403,6 +29207,18 @@ "m7i.metal-24xl", "m7i.metal-48xl", "m7i.xlarge", + "m8g.12xlarge", + "m8g.16xlarge", + "m8g.24xlarge", + "m8g.2xlarge", + "m8g.48xlarge", + "m8g.4xlarge", + "m8g.8xlarge", + "m8g.large", + "m8g.medium", + "m8g.metal-24xl", + "m8g.metal-48xl", + "m8g.xlarge", "mac1.metal", "mac2-m1ultra.metal", "mac2-m2.metal", diff --git a/src/cfnlint/data/schemas/extensions/aws_rds_dbcluster/engine_version.json b/src/cfnlint/data/schemas/extensions/aws_rds_dbcluster/engine_version.json index 5fb18003de..1702c40fa1 100644 --- a/src/cfnlint/data/schemas/extensions/aws_rds_dbcluster/engine_version.json +++ b/src/cfnlint/data/schemas/extensions/aws_rds_dbcluster/engine_version.json @@ -115,12 +115,14 @@ "13.13", "13.14", "13.15", + "13.16", "13.7", "13.8", "13.9", "14.10", "14.11", "14.12", + "14.13", "14.3", "14.4", "14.5", @@ -134,9 +136,11 @@ "15.5", "15.6", "15.7", + "15.8", "16.1", "16.2", - "16.3" + "16.3", + "16.4" ] } } diff --git a/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/engine_version.json b/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/engine_version.json index fe73435f69..8eec275f4a 100644 --- a/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/engine_version.json +++ b/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/engine_version.json @@ -131,12 +131,14 @@ "13.13", "13.14", "13.15", + "13.16", "13.7", "13.8", "13.9", "14.10", "14.11", "14.12", + "14.13", "14.3", "14.4", "14.5", @@ -150,9 +152,11 @@ "15.5", "15.6", "15.7", + "15.8", "16.1", "16.2", - "16.3" + "16.3", + "16.4" ] } } diff --git a/src/cfnlint/data/schemas/providers/af_south_1/__init__.py b/src/cfnlint/data/schemas/providers/af_south_1/__init__.py index 9747a0afd6..2dab22dc54 100644 --- a/src/cfnlint/data/schemas/providers/af_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/af_south_1/__init__.py @@ -848,7 +848,6 @@ "aws-acmpca-certificateauthorityactivation.json", "aws-acmpca-permission.json", "aws-amazonmq-broker.json", - "aws-amazonmq-configuration.json", "aws-apigateway-account.json", "aws-apigateway-apikey.json", "aws-apigateway-authorizer.json", @@ -888,7 +887,6 @@ "aws-appconfig-extension.json", "aws-appconfig-extensionassociation.json", "aws-appconfig-hostedconfigurationversion.json", - "aws-appflow-connector.json", "aws-appflow-connectorprofile.json", "aws-appflow-flow.json", "aws-appintegrations-application.json", @@ -995,7 +993,6 @@ "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", "aws-cognito-logdeliveryconfiguration.json", - "aws-cognito-userpool.json", "aws-cognito-userpoolclient.json", "aws-cognito-userpooldomain.json", "aws-cognito-userpoolgroup.json", @@ -1455,8 +1452,6 @@ "aws-route53-keysigningkey.json", "aws-route53-recordset.json", "aws-route53-recordsetgroup.json", - "aws-route53profiles-profile.json", - "aws-route53profiles-profileassociation.json", "aws-route53profiles-profileresourceassociation.json", "aws-route53resolver-firewalldomainlist.json", "aws-route53resolver-firewallrulegroup.json", @@ -1511,6 +1506,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-securityhub-automationrule.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-hub.json", "aws-securityhub-insight.json", diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-amazonmq-configuration.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-amazonmq-configuration.json similarity index 59% rename from src/cfnlint/data/schemas/providers/eu_central_1/aws-amazonmq-configuration.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-amazonmq-configuration.json index 37e9f26873..81cc7369f7 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_1/aws-amazonmq-configuration.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-amazonmq-configuration.json @@ -1,10 +1,10 @@ { "additionalProperties": false, "createOnlyProperties": [ - "/properties/AuthenticationStrategy", "/properties/EngineType", - "/properties/EngineVersion", - "/properties/Name" + "/properties/Name", + "/properties/AuthenticationStrategy", + "/properties/EngineVersion" ], "definitions": { "TagsEntry": { @@ -53,40 +53,25 @@ "type": "string" }, "Revision": { - "type": "string" + "type": "integer" }, "Tags": { - "insertionOrder": false, "items": { "$ref": "#/definitions/TagsEntry" }, - "type": "array" + "type": "array", + "uniqueItems": false } }, - "propertyTransform": { - "/properties/AuthenticationStrategy": "$uppercase(AuthenticationStrategy)", - "/properties/EngineType": "$uppercase(EngineType)" - }, "readOnlyProperties": [ - "/properties/Arn", + "/properties/Revision", "/properties/Id", - "/properties/Revision" + "/properties/Arn" ], "required": [ "EngineType", "Data", "Name" ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::AmazonMQ::Configuration", - "writeOnlyProperties": [ - "/properties/Data" - ] + "typeName": "AWS::AmazonMQ::Configuration" } diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-appflow-connector.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-appflow-connector.json new file mode 100644 index 0000000000..347bc05555 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-appflow-connector.json @@ -0,0 +1,75 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/ConnectorLabel" + ], + "definitions": { + "ConnectorProvisioningConfig": { + "additionalProperties": false, + "properties": { + "Lambda": { + "$ref": "#/definitions/LambdaConnectorProvisioningConfig" + } + }, + "type": "object" + }, + "LambdaConnectorProvisioningConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "maxLength": 512, + "pattern": "arn:*:.*:.*:[0-9]+:.*", + "type": "string" + } + }, + "required": [ + "LambdaArn" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ConnectorLabel" + ], + "properties": { + "ConnectorArn": { + "maxLength": 512, + "pattern": "arn:.*:appflow:.*:[0-9]+:.*", + "type": "string" + }, + "ConnectorLabel": { + "maxLength": 512, + "pattern": "[a-zA-Z0-9][\\w!@#.-]+", + "type": "string" + }, + "ConnectorProvisioningConfig": { + "$ref": "#/definitions/ConnectorProvisioningConfig" + }, + "ConnectorProvisioningType": { + "maxLength": 256, + "minLength": 1, + "pattern": "[a-zA-Z0-9][\\w!@#.-]+", + "type": "string" + }, + "Description": { + "maxLength": 2048, + "pattern": "[\\s\\w/!@#+=.-]*", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/ConnectorArn" + ], + "required": [ + "ConnectorProvisioningType", + "ConnectorProvisioningConfig" + ], + "sourceUrl": "https://docs.aws.amazon.com/appflow/latest/userguide/what-is-appflow.html", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": false, + "tagUpdatable": false, + "taggable": false + }, + "typeName": "AWS::AppFlow::Connector" +} diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-cognito-userpool.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-cognito-userpool.json new file mode 100644 index 0000000000..be46ed5eb0 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-cognito-userpool.json @@ -0,0 +1,502 @@ +{ + "additionalProperties": false, + "definitions": { + "AccountRecoverySetting": { + "additionalProperties": false, + "properties": { + "RecoveryMechanisms": { + "items": { + "$ref": "#/definitions/RecoveryOption" + }, + "type": "array" + } + }, + "type": "object" + }, + "AdminCreateUserConfig": { + "additionalProperties": false, + "properties": { + "AllowAdminCreateUserOnly": { + "type": "boolean" + }, + "InviteMessageTemplate": { + "$ref": "#/definitions/InviteMessageTemplate" + }, + "UnusedAccountValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "AdvancedSecurityAdditionalFlows": { + "additionalProperties": false, + "properties": { + "CustomAuthMode": { + "type": "string" + } + }, + "type": "object" + }, + "CustomEmailSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "CustomSMSSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "DeviceConfiguration": { + "additionalProperties": false, + "properties": { + "ChallengeRequiredOnNewDevice": { + "type": "boolean" + }, + "DeviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + }, + "type": "object" + }, + "EmailConfiguration": { + "additionalProperties": false, + "properties": { + "ConfigurationSet": { + "type": "string" + }, + "EmailSendingAccount": { + "type": "string" + }, + "From": { + "type": "string" + }, + "ReplyToEmailAddress": { + "type": "string" + }, + "SourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "InviteMessageTemplate": { + "additionalProperties": false, + "properties": { + "EmailMessage": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "SMSMessage": { + "type": "string" + } + }, + "type": "object" + }, + "LambdaConfig": { + "additionalProperties": false, + "properties": { + "CreateAuthChallenge": { + "type": "string" + }, + "CustomEmailSender": { + "$ref": "#/definitions/CustomEmailSender" + }, + "CustomMessage": { + "type": "string" + }, + "CustomSMSSender": { + "$ref": "#/definitions/CustomSMSSender" + }, + "DefineAuthChallenge": { + "type": "string" + }, + "KMSKeyID": { + "type": "string" + }, + "PostAuthentication": { + "type": "string" + }, + "PostConfirmation": { + "type": "string" + }, + "PreAuthentication": { + "type": "string" + }, + "PreSignUp": { + "type": "string" + }, + "PreTokenGeneration": { + "type": "string" + }, + "PreTokenGenerationConfig": { + "$ref": "#/definitions/PreTokenGenerationConfig" + }, + "UserMigration": { + "type": "string" + }, + "VerifyAuthChallengeResponse": { + "type": "string" + } + }, + "type": "object" + }, + "NumberAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxValue": { + "type": "string" + }, + "MinValue": { + "type": "string" + } + }, + "type": "object" + }, + "PasswordPolicy": { + "additionalProperties": false, + "properties": { + "MinimumLength": { + "type": "integer" + }, + "PasswordHistorySize": { + "type": "integer" + }, + "RequireLowercase": { + "type": "boolean" + }, + "RequireNumbers": { + "type": "boolean" + }, + "RequireSymbols": { + "type": "boolean" + }, + "RequireUppercase": { + "type": "boolean" + }, + "TemporaryPasswordValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "Policies": { + "additionalProperties": false, + "properties": { + "PasswordPolicy": { + "$ref": "#/definitions/PasswordPolicy" + } + }, + "type": "object" + }, + "PreTokenGenerationConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "RecoveryOption": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Priority": { + "type": "integer" + } + }, + "type": "object" + }, + "SchemaAttribute": { + "additionalProperties": false, + "properties": { + "AttributeDataType": { + "type": "string" + }, + "DeveloperOnlyAttribute": { + "type": "boolean" + }, + "Mutable": { + "type": "boolean" + }, + "Name": { + "type": "string" + }, + "NumberAttributeConstraints": { + "$ref": "#/definitions/NumberAttributeConstraints" + }, + "Required": { + "type": "boolean" + }, + "StringAttributeConstraints": { + "$ref": "#/definitions/StringAttributeConstraints" + } + }, + "type": "object" + }, + "SmsConfiguration": { + "additionalProperties": false, + "properties": { + "ExternalId": { + "type": "string" + }, + "SnsCallerArn": { + "type": "string" + }, + "SnsRegion": { + "type": "string" + } + }, + "type": "object" + }, + "StringAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxLength": { + "type": "string" + }, + "MinLength": { + "type": "string" + } + }, + "type": "object" + }, + "UserAttributeUpdateSettings": { + "additionalProperties": false, + "properties": { + "AttributesRequireVerificationBeforeUpdate": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "AttributesRequireVerificationBeforeUpdate" + ], + "type": "object" + }, + "UserPoolAddOns": { + "additionalProperties": false, + "properties": { + "AdvancedSecurityAdditionalFlows": { + "$ref": "#/definitions/AdvancedSecurityAdditionalFlows" + }, + "AdvancedSecurityMode": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameConfiguration": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + } + }, + "type": "object" + }, + "VerificationMessageTemplate": { + "additionalProperties": false, + "properties": { + "DefaultEmailOption": { + "type": "string" + }, + "EmailMessage": { + "type": "string" + }, + "EmailMessageByLink": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "EmailSubjectByLink": { + "type": "string" + }, + "SmsMessage": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId" + ], + "properties": { + "AccountRecoverySetting": { + "$ref": "#/definitions/AccountRecoverySetting" + }, + "AdminCreateUserConfig": { + "$ref": "#/definitions/AdminCreateUserConfig" + }, + "AliasAttributes": { + "items": { + "enum": [ + "email", + "phone_number", + "preferred_username" + ], + "type": "string" + }, + "type": "array" + }, + "Arn": { + "type": "string" + }, + "AutoVerifiedAttributes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DeletionProtection": { + "type": "string" + }, + "DeviceConfiguration": { + "$ref": "#/definitions/DeviceConfiguration" + }, + "EmailConfiguration": { + "$ref": "#/definitions/EmailConfiguration" + }, + "EmailVerificationMessage": { + "maxLength": 20000, + "minLength": 6, + "type": "string" + }, + "EmailVerificationSubject": { + "maxLength": 140, + "minLength": 1, + "type": "string" + }, + "EnabledMfas": { + "items": { + "type": "string" + }, + "type": "array" + }, + "LambdaConfig": { + "$ref": "#/definitions/LambdaConfig" + }, + "MfaConfiguration": { + "enum": [ + "OFF", + "ON", + "OPTIONAL" + ], + "type": "string" + }, + "Policies": { + "$ref": "#/definitions/Policies" + }, + "ProviderName": { + "type": "string" + }, + "ProviderURL": { + "type": "string" + }, + "Schema": { + "items": { + "$ref": "#/definitions/SchemaAttribute" + }, + "type": "array" + }, + "SmsAuthenticationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "SmsConfiguration": { + "$ref": "#/definitions/SmsConfiguration" + }, + "SmsVerificationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "UserAttributeUpdateSettings": { + "$ref": "#/definitions/UserAttributeUpdateSettings" + }, + "UserPoolAddOns": { + "$ref": "#/definitions/UserPoolAddOns" + }, + "UserPoolId": { + "type": "string" + }, + "UserPoolName": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "UserPoolTags": { + "additionalProperties": false, + "patternProperties": { + "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameAttributes": { + "items": { + "enum": [ + "email", + "phone_number" + ], + "type": "string" + }, + "type": "array" + }, + "UsernameConfiguration": { + "$ref": "#/definitions/UsernameConfiguration" + }, + "VerificationMessageTemplate": { + "$ref": "#/definitions/VerificationMessageTemplate" + } + }, + "propertyTransform": { + "/properties/Schema/*/Name": "'custom:' & '' & Name" + }, + "readOnlyProperties": [ + "/properties/ProviderName", + "/properties/UserPoolId", + "/properties/ProviderURL", + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/UserPoolTags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Cognito::UserPool", + "writeOnlyProperties": [ + "/properties/EnabledMfas" + ] +} diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-route53profiles-profile.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-route53profiles-profile.json new file mode 100644 index 0000000000..123295aef9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-route53profiles-profile.json @@ -0,0 +1,76 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "ClientToken": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Id", + "/properties/ClientToken" + ], + "required": [ + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Profiles::Profile", + "writeOnlyProperties": [ + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-route53profiles-profileassociation.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-route53profiles-profileassociation.json new file mode 100644 index 0000000000..b1857370f9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-route53profiles-profileassociation.json @@ -0,0 +1,78 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name", + "/properties/ResourceId", + "/properties/ProfileId" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "ProfileId": { + "type": "string" + }, + "ResourceId": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "ResourceId", + "ProfileId", + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Profiles::ProfileAssociation", + "writeOnlyProperties": [ + "/properties/Arn", + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-securityhub-automationrule.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-securityhub-automationrule.json deleted file mode 100644 index 07eef12ca5..0000000000 --- a/src/cfnlint/data/schemas/providers/af_south_1/aws-securityhub-automationrule.json +++ /dev/null @@ -1,690 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AutomationRulesAction": { - "properties": { - "FindingFieldsUpdate": { - "$ref": "#/definitions/AutomationRulesFindingFieldsUpdate" - }, - "Type": { - "enum": [ - "FINDING_FIELDS_UPDATE" - ], - "type": "string" - } - }, - "required": [ - "Type", - "FindingFieldsUpdate" - ], - "type": "object" - }, - "AutomationRulesFindingFieldsUpdate": { - "properties": { - "Confidence": { - "$ref": "#/definitions/int100" - }, - "Criticality": { - "$ref": "#/definitions/int100" - }, - "Note": { - "$ref": "#/definitions/NoteUpdate", - "type": "object" - }, - "RelatedFindings": { - "items": { - "$ref": "#/definitions/RelatedFinding" - }, - "maxItems": 10, - "minItems": 1, - "type": "array" - }, - "Severity": { - "$ref": "#/definitions/SeverityUpdate", - "type": "object" - }, - "Types": { - "items": { - "pattern": "^([^/]+)(/[^/]+){0,2}$", - "type": "string" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UserDefinedFields": { - "$ref": "#/definitions/map" - }, - "VerificationState": { - "enum": [ - "UNKNOWN", - "TRUE_POSITIVE", - "FALSE_POSITIVE", - "BENIGN_POSITIVE" - ], - "type": "string" - }, - "Workflow": { - "$ref": "#/definitions/WorkflowUpdate", - "type": "object" - } - }, - "type": "object" - }, - "AutomationRulesFindingFilters": { - "additionalProperties": false, - "properties": { - "AwsAccountId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "CompanyName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceAssociatedStandardsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceSecurityControlId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Confidence": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "CreatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Criticality": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Description": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "FirstObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "GeneratorId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Id": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "LastObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteText": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedBy": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RecordState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceDetailsOther": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "ResourcePartition": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceRegion": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceTags": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceType": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SeverityLabel": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SourceUrl": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Title": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Type": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UserDefinedFields": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "VerificationState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "WorkflowStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - } - }, - "type": "object" - }, - "BooleanFilter": { - "additionalProperties": false, - "properties": { - "Value": { - "type": "boolean" - } - }, - "required": [ - "Value" - ], - "type": "object" - }, - "DateFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "DateRange" - ] - }, - { - "allOf": [ - { - "required": [ - "Start" - ] - }, - { - "required": [ - "End" - ] - } - ] - } - ], - "properties": { - "DateRange": { - "$ref": "#/definitions/DateRange" - }, - "End": { - "$ref": "#/definitions/ISO8601DateString" - }, - "Start": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "type": "object" - }, - "DateRange": { - "additionalProperties": false, - "properties": { - "Unit": { - "enum": [ - "DAYS" - ], - "type": "string" - }, - "Value": { - "type": "number" - } - }, - "required": [ - "Unit", - "Value" - ], - "type": "object" - }, - "ISO8601DateString": { - "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$", - "type": "string" - }, - "MapFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "enum": [ - "EQUALS", - "NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Key", - "Value" - ], - "type": "object" - }, - "NonEmptyString": { - "minLength": 1, - "type": "string" - }, - "NoteUpdate": { - "additionalProperties": false, - "properties": { - "Text": { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - "UpdatedBy": { - "$ref": "#/definitions/arnOrId" - } - }, - "required": [ - "Text", - "UpdatedBy" - ], - "type": "object" - }, - "NumberFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "Eq" - ] - }, - { - "anyOf": [ - { - "required": [ - "Gte" - ] - }, - { - "required": [ - "Lte" - ] - } - ] - } - ], - "properties": { - "Eq": { - "type": "number" - }, - "Gte": { - "type": "number" - }, - "Lte": { - "type": "number" - } - }, - "type": "object" - }, - "RelatedFinding": { - "additionalProperties": false, - "properties": { - "Id": { - "$ref": "#/definitions/arnOrId" - }, - "ProductArn": { - "$ref": "#/definitions/arn" - } - }, - "required": [ - "ProductArn", - "Id" - ], - "type": "object" - }, - "SeverityUpdate": { - "additionalProperties": false, - "properties": { - "Label": { - "enum": [ - "INFORMATIONAL", - "LOW", - "MEDIUM", - "HIGH", - "CRITICAL" - ], - "type": "string" - }, - "Normalized": { - "$ref": "#/definitions/int100" - }, - "Product": { - "type": "number" - } - }, - "type": "object" - }, - "StringFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "$ref": "#/definitions/StringFilterComparison" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Value" - ], - "type": "object" - }, - "StringFilterComparison": { - "enum": [ - "EQUALS", - "PREFIX", - "NOT_EQUALS", - "PREFIX_NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - "^[a-zA-Z0-9]{1,128}$": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "WorkflowUpdate": { - "additionalProperties": false, - "properties": { - "Status": { - "enum": [ - "NEW", - "NOTIFIED", - "RESOLVED", - "SUPPRESSED" - ], - "type": "string" - } - }, - "required": [ - "Status" - ], - "type": "object" - }, - "arn": { - "maxLength": 2048, - "minLength": 12, - "pattern": "^arn:(aws|aws-cn|aws-us-gov|aws-iso-?[a-z]{0,2}):[A-Za-z0-9]{1,63}:[a-z]+-([a-z]{1,10}-)?[a-z]+-[0-9]+:([0-9]{12})?:.+$", - "type": "string" - }, - "arnOrId": { - "anyOf": [ - { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - { - "$ref": "#/definitions/arn" - } - ] - }, - "int100": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "map": { - "additionalProperties": false, - "maxProperties": 50, - "minProperties": 1, - "patternProperties": { - "^[-_+=.:/@\\w\\s]{1,128}$": { - "maxLength": 1024, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "timestamp": { - "format": "date-time", - "pattern": "(\\d\\d\\d\\d)-[0-1](\\d)-[0-3](\\d)[Tt](?:[0-2](\\d):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?(?:[Zz]|[+-](\\d\\d)(?::?(\\d\\d))?)$", - "type": "string" - } - }, - "primaryIdentifier": [ - "/properties/RuleArn" - ], - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/AutomationRulesAction" - }, - "maxItems": 1, - "minItems": 1, - "type": "array" - }, - "CreatedAt": { - "$ref": "#/definitions/ISO8601DateString" - }, - "CreatedBy": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "Criteria": { - "$ref": "#/definitions/AutomationRulesFindingFilters" - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "IsTerminal": { - "type": "boolean" - }, - "RuleArn": { - "pattern": "arn:aws\\S*:securityhub:\\S*", - "type": "string" - }, - "RuleName": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "RuleOrder": { - "maximum": 1000, - "minimum": 1, - "type": "integer" - }, - "RuleStatus": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "Tags": { - "$ref": "#/definitions/Tags" - }, - "UpdatedAt": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "readOnlyProperties": [ - "/properties/RuleArn", - "/properties/CreatedAt", - "/properties/UpdatedAt", - "/properties/CreatedBy" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecurityHub::AutomationRule" -} diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py b/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py index c61912e125..d37fdcda8e 100644 --- a/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py @@ -821,7 +821,6 @@ "aws-acmpca-certificateauthorityactivation.json", "aws-acmpca-permission.json", "aws-amazonmq-broker.json", - "aws-amazonmq-configuration.json", "aws-amplify-app.json", "aws-amplify-branch.json", "aws-amplify-domain.json", @@ -973,7 +972,6 @@ "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", "aws-cognito-logdeliveryconfiguration.json", - "aws-cognito-userpool.json", "aws-cognito-userpoolclient.json", "aws-cognito-userpooldomain.json", "aws-cognito-userpoolgroup.json", @@ -1483,6 +1481,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-securityhub-automationrule.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-hub.json", "aws-securityhub-insight.json", diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-amazonmq-configuration.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-amazonmq-configuration.json similarity index 59% rename from src/cfnlint/data/schemas/providers/us_west_2/aws-amazonmq-configuration.json rename to src/cfnlint/data/schemas/providers/ap_east_1/aws-amazonmq-configuration.json index 37e9f26873..81cc7369f7 100644 --- a/src/cfnlint/data/schemas/providers/us_west_2/aws-amazonmq-configuration.json +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-amazonmq-configuration.json @@ -1,10 +1,10 @@ { "additionalProperties": false, "createOnlyProperties": [ - "/properties/AuthenticationStrategy", "/properties/EngineType", - "/properties/EngineVersion", - "/properties/Name" + "/properties/Name", + "/properties/AuthenticationStrategy", + "/properties/EngineVersion" ], "definitions": { "TagsEntry": { @@ -53,40 +53,25 @@ "type": "string" }, "Revision": { - "type": "string" + "type": "integer" }, "Tags": { - "insertionOrder": false, "items": { "$ref": "#/definitions/TagsEntry" }, - "type": "array" + "type": "array", + "uniqueItems": false } }, - "propertyTransform": { - "/properties/AuthenticationStrategy": "$uppercase(AuthenticationStrategy)", - "/properties/EngineType": "$uppercase(EngineType)" - }, "readOnlyProperties": [ - "/properties/Arn", + "/properties/Revision", "/properties/Id", - "/properties/Revision" + "/properties/Arn" ], "required": [ "EngineType", "Data", "Name" ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::AmazonMQ::Configuration", - "writeOnlyProperties": [ - "/properties/Data" - ] + "typeName": "AWS::AmazonMQ::Configuration" } diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpool.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpool.json new file mode 100644 index 0000000000..be46ed5eb0 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpool.json @@ -0,0 +1,502 @@ +{ + "additionalProperties": false, + "definitions": { + "AccountRecoverySetting": { + "additionalProperties": false, + "properties": { + "RecoveryMechanisms": { + "items": { + "$ref": "#/definitions/RecoveryOption" + }, + "type": "array" + } + }, + "type": "object" + }, + "AdminCreateUserConfig": { + "additionalProperties": false, + "properties": { + "AllowAdminCreateUserOnly": { + "type": "boolean" + }, + "InviteMessageTemplate": { + "$ref": "#/definitions/InviteMessageTemplate" + }, + "UnusedAccountValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "AdvancedSecurityAdditionalFlows": { + "additionalProperties": false, + "properties": { + "CustomAuthMode": { + "type": "string" + } + }, + "type": "object" + }, + "CustomEmailSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "CustomSMSSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "DeviceConfiguration": { + "additionalProperties": false, + "properties": { + "ChallengeRequiredOnNewDevice": { + "type": "boolean" + }, + "DeviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + }, + "type": "object" + }, + "EmailConfiguration": { + "additionalProperties": false, + "properties": { + "ConfigurationSet": { + "type": "string" + }, + "EmailSendingAccount": { + "type": "string" + }, + "From": { + "type": "string" + }, + "ReplyToEmailAddress": { + "type": "string" + }, + "SourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "InviteMessageTemplate": { + "additionalProperties": false, + "properties": { + "EmailMessage": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "SMSMessage": { + "type": "string" + } + }, + "type": "object" + }, + "LambdaConfig": { + "additionalProperties": false, + "properties": { + "CreateAuthChallenge": { + "type": "string" + }, + "CustomEmailSender": { + "$ref": "#/definitions/CustomEmailSender" + }, + "CustomMessage": { + "type": "string" + }, + "CustomSMSSender": { + "$ref": "#/definitions/CustomSMSSender" + }, + "DefineAuthChallenge": { + "type": "string" + }, + "KMSKeyID": { + "type": "string" + }, + "PostAuthentication": { + "type": "string" + }, + "PostConfirmation": { + "type": "string" + }, + "PreAuthentication": { + "type": "string" + }, + "PreSignUp": { + "type": "string" + }, + "PreTokenGeneration": { + "type": "string" + }, + "PreTokenGenerationConfig": { + "$ref": "#/definitions/PreTokenGenerationConfig" + }, + "UserMigration": { + "type": "string" + }, + "VerifyAuthChallengeResponse": { + "type": "string" + } + }, + "type": "object" + }, + "NumberAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxValue": { + "type": "string" + }, + "MinValue": { + "type": "string" + } + }, + "type": "object" + }, + "PasswordPolicy": { + "additionalProperties": false, + "properties": { + "MinimumLength": { + "type": "integer" + }, + "PasswordHistorySize": { + "type": "integer" + }, + "RequireLowercase": { + "type": "boolean" + }, + "RequireNumbers": { + "type": "boolean" + }, + "RequireSymbols": { + "type": "boolean" + }, + "RequireUppercase": { + "type": "boolean" + }, + "TemporaryPasswordValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "Policies": { + "additionalProperties": false, + "properties": { + "PasswordPolicy": { + "$ref": "#/definitions/PasswordPolicy" + } + }, + "type": "object" + }, + "PreTokenGenerationConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "RecoveryOption": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Priority": { + "type": "integer" + } + }, + "type": "object" + }, + "SchemaAttribute": { + "additionalProperties": false, + "properties": { + "AttributeDataType": { + "type": "string" + }, + "DeveloperOnlyAttribute": { + "type": "boolean" + }, + "Mutable": { + "type": "boolean" + }, + "Name": { + "type": "string" + }, + "NumberAttributeConstraints": { + "$ref": "#/definitions/NumberAttributeConstraints" + }, + "Required": { + "type": "boolean" + }, + "StringAttributeConstraints": { + "$ref": "#/definitions/StringAttributeConstraints" + } + }, + "type": "object" + }, + "SmsConfiguration": { + "additionalProperties": false, + "properties": { + "ExternalId": { + "type": "string" + }, + "SnsCallerArn": { + "type": "string" + }, + "SnsRegion": { + "type": "string" + } + }, + "type": "object" + }, + "StringAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxLength": { + "type": "string" + }, + "MinLength": { + "type": "string" + } + }, + "type": "object" + }, + "UserAttributeUpdateSettings": { + "additionalProperties": false, + "properties": { + "AttributesRequireVerificationBeforeUpdate": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "AttributesRequireVerificationBeforeUpdate" + ], + "type": "object" + }, + "UserPoolAddOns": { + "additionalProperties": false, + "properties": { + "AdvancedSecurityAdditionalFlows": { + "$ref": "#/definitions/AdvancedSecurityAdditionalFlows" + }, + "AdvancedSecurityMode": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameConfiguration": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + } + }, + "type": "object" + }, + "VerificationMessageTemplate": { + "additionalProperties": false, + "properties": { + "DefaultEmailOption": { + "type": "string" + }, + "EmailMessage": { + "type": "string" + }, + "EmailMessageByLink": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "EmailSubjectByLink": { + "type": "string" + }, + "SmsMessage": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId" + ], + "properties": { + "AccountRecoverySetting": { + "$ref": "#/definitions/AccountRecoverySetting" + }, + "AdminCreateUserConfig": { + "$ref": "#/definitions/AdminCreateUserConfig" + }, + "AliasAttributes": { + "items": { + "enum": [ + "email", + "phone_number", + "preferred_username" + ], + "type": "string" + }, + "type": "array" + }, + "Arn": { + "type": "string" + }, + "AutoVerifiedAttributes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DeletionProtection": { + "type": "string" + }, + "DeviceConfiguration": { + "$ref": "#/definitions/DeviceConfiguration" + }, + "EmailConfiguration": { + "$ref": "#/definitions/EmailConfiguration" + }, + "EmailVerificationMessage": { + "maxLength": 20000, + "minLength": 6, + "type": "string" + }, + "EmailVerificationSubject": { + "maxLength": 140, + "minLength": 1, + "type": "string" + }, + "EnabledMfas": { + "items": { + "type": "string" + }, + "type": "array" + }, + "LambdaConfig": { + "$ref": "#/definitions/LambdaConfig" + }, + "MfaConfiguration": { + "enum": [ + "OFF", + "ON", + "OPTIONAL" + ], + "type": "string" + }, + "Policies": { + "$ref": "#/definitions/Policies" + }, + "ProviderName": { + "type": "string" + }, + "ProviderURL": { + "type": "string" + }, + "Schema": { + "items": { + "$ref": "#/definitions/SchemaAttribute" + }, + "type": "array" + }, + "SmsAuthenticationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "SmsConfiguration": { + "$ref": "#/definitions/SmsConfiguration" + }, + "SmsVerificationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "UserAttributeUpdateSettings": { + "$ref": "#/definitions/UserAttributeUpdateSettings" + }, + "UserPoolAddOns": { + "$ref": "#/definitions/UserPoolAddOns" + }, + "UserPoolId": { + "type": "string" + }, + "UserPoolName": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "UserPoolTags": { + "additionalProperties": false, + "patternProperties": { + "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameAttributes": { + "items": { + "enum": [ + "email", + "phone_number" + ], + "type": "string" + }, + "type": "array" + }, + "UsernameConfiguration": { + "$ref": "#/definitions/UsernameConfiguration" + }, + "VerificationMessageTemplate": { + "$ref": "#/definitions/VerificationMessageTemplate" + } + }, + "propertyTransform": { + "/properties/Schema/*/Name": "'custom:' & '' & Name" + }, + "readOnlyProperties": [ + "/properties/ProviderName", + "/properties/UserPoolId", + "/properties/ProviderURL", + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/UserPoolTags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Cognito::UserPool", + "writeOnlyProperties": [ + "/properties/EnabledMfas" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-securityhub-automationrule.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-securityhub-automationrule.json deleted file mode 100644 index 07eef12ca5..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_east_1/aws-securityhub-automationrule.json +++ /dev/null @@ -1,690 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AutomationRulesAction": { - "properties": { - "FindingFieldsUpdate": { - "$ref": "#/definitions/AutomationRulesFindingFieldsUpdate" - }, - "Type": { - "enum": [ - "FINDING_FIELDS_UPDATE" - ], - "type": "string" - } - }, - "required": [ - "Type", - "FindingFieldsUpdate" - ], - "type": "object" - }, - "AutomationRulesFindingFieldsUpdate": { - "properties": { - "Confidence": { - "$ref": "#/definitions/int100" - }, - "Criticality": { - "$ref": "#/definitions/int100" - }, - "Note": { - "$ref": "#/definitions/NoteUpdate", - "type": "object" - }, - "RelatedFindings": { - "items": { - "$ref": "#/definitions/RelatedFinding" - }, - "maxItems": 10, - "minItems": 1, - "type": "array" - }, - "Severity": { - "$ref": "#/definitions/SeverityUpdate", - "type": "object" - }, - "Types": { - "items": { - "pattern": "^([^/]+)(/[^/]+){0,2}$", - "type": "string" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UserDefinedFields": { - "$ref": "#/definitions/map" - }, - "VerificationState": { - "enum": [ - "UNKNOWN", - "TRUE_POSITIVE", - "FALSE_POSITIVE", - "BENIGN_POSITIVE" - ], - "type": "string" - }, - "Workflow": { - "$ref": "#/definitions/WorkflowUpdate", - "type": "object" - } - }, - "type": "object" - }, - "AutomationRulesFindingFilters": { - "additionalProperties": false, - "properties": { - "AwsAccountId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "CompanyName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceAssociatedStandardsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceSecurityControlId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Confidence": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "CreatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Criticality": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Description": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "FirstObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "GeneratorId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Id": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "LastObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteText": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedBy": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RecordState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceDetailsOther": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "ResourcePartition": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceRegion": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceTags": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceType": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SeverityLabel": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SourceUrl": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Title": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Type": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UserDefinedFields": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "VerificationState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "WorkflowStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - } - }, - "type": "object" - }, - "BooleanFilter": { - "additionalProperties": false, - "properties": { - "Value": { - "type": "boolean" - } - }, - "required": [ - "Value" - ], - "type": "object" - }, - "DateFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "DateRange" - ] - }, - { - "allOf": [ - { - "required": [ - "Start" - ] - }, - { - "required": [ - "End" - ] - } - ] - } - ], - "properties": { - "DateRange": { - "$ref": "#/definitions/DateRange" - }, - "End": { - "$ref": "#/definitions/ISO8601DateString" - }, - "Start": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "type": "object" - }, - "DateRange": { - "additionalProperties": false, - "properties": { - "Unit": { - "enum": [ - "DAYS" - ], - "type": "string" - }, - "Value": { - "type": "number" - } - }, - "required": [ - "Unit", - "Value" - ], - "type": "object" - }, - "ISO8601DateString": { - "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$", - "type": "string" - }, - "MapFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "enum": [ - "EQUALS", - "NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Key", - "Value" - ], - "type": "object" - }, - "NonEmptyString": { - "minLength": 1, - "type": "string" - }, - "NoteUpdate": { - "additionalProperties": false, - "properties": { - "Text": { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - "UpdatedBy": { - "$ref": "#/definitions/arnOrId" - } - }, - "required": [ - "Text", - "UpdatedBy" - ], - "type": "object" - }, - "NumberFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "Eq" - ] - }, - { - "anyOf": [ - { - "required": [ - "Gte" - ] - }, - { - "required": [ - "Lte" - ] - } - ] - } - ], - "properties": { - "Eq": { - "type": "number" - }, - "Gte": { - "type": "number" - }, - "Lte": { - "type": "number" - } - }, - "type": "object" - }, - "RelatedFinding": { - "additionalProperties": false, - "properties": { - "Id": { - "$ref": "#/definitions/arnOrId" - }, - "ProductArn": { - "$ref": "#/definitions/arn" - } - }, - "required": [ - "ProductArn", - "Id" - ], - "type": "object" - }, - "SeverityUpdate": { - "additionalProperties": false, - "properties": { - "Label": { - "enum": [ - "INFORMATIONAL", - "LOW", - "MEDIUM", - "HIGH", - "CRITICAL" - ], - "type": "string" - }, - "Normalized": { - "$ref": "#/definitions/int100" - }, - "Product": { - "type": "number" - } - }, - "type": "object" - }, - "StringFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "$ref": "#/definitions/StringFilterComparison" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Value" - ], - "type": "object" - }, - "StringFilterComparison": { - "enum": [ - "EQUALS", - "PREFIX", - "NOT_EQUALS", - "PREFIX_NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - "^[a-zA-Z0-9]{1,128}$": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "WorkflowUpdate": { - "additionalProperties": false, - "properties": { - "Status": { - "enum": [ - "NEW", - "NOTIFIED", - "RESOLVED", - "SUPPRESSED" - ], - "type": "string" - } - }, - "required": [ - "Status" - ], - "type": "object" - }, - "arn": { - "maxLength": 2048, - "minLength": 12, - "pattern": "^arn:(aws|aws-cn|aws-us-gov|aws-iso-?[a-z]{0,2}):[A-Za-z0-9]{1,63}:[a-z]+-([a-z]{1,10}-)?[a-z]+-[0-9]+:([0-9]{12})?:.+$", - "type": "string" - }, - "arnOrId": { - "anyOf": [ - { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - { - "$ref": "#/definitions/arn" - } - ] - }, - "int100": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "map": { - "additionalProperties": false, - "maxProperties": 50, - "minProperties": 1, - "patternProperties": { - "^[-_+=.:/@\\w\\s]{1,128}$": { - "maxLength": 1024, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "timestamp": { - "format": "date-time", - "pattern": "(\\d\\d\\d\\d)-[0-1](\\d)-[0-3](\\d)[Tt](?:[0-2](\\d):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?(?:[Zz]|[+-](\\d\\d)(?::?(\\d\\d))?)$", - "type": "string" - } - }, - "primaryIdentifier": [ - "/properties/RuleArn" - ], - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/AutomationRulesAction" - }, - "maxItems": 1, - "minItems": 1, - "type": "array" - }, - "CreatedAt": { - "$ref": "#/definitions/ISO8601DateString" - }, - "CreatedBy": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "Criteria": { - "$ref": "#/definitions/AutomationRulesFindingFilters" - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "IsTerminal": { - "type": "boolean" - }, - "RuleArn": { - "pattern": "arn:aws\\S*:securityhub:\\S*", - "type": "string" - }, - "RuleName": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "RuleOrder": { - "maximum": 1000, - "minimum": 1, - "type": "integer" - }, - "RuleStatus": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "Tags": { - "$ref": "#/definitions/Tags" - }, - "UpdatedAt": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "readOnlyProperties": [ - "/properties/RuleArn", - "/properties/CreatedAt", - "/properties/UpdatedAt", - "/properties/CreatedBy" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecurityHub::AutomationRule" -} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py b/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py index 71a001225b..1f4087ee4d 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py @@ -2468,13 +2468,11 @@ "aws-workspaces-workspace.json", "aws-workspaces-workspacespool.json", "aws-workspacesweb-browsersettings.json", - "aws-workspacesweb-identityprovider.json", "aws-workspacesweb-ipaccesssettings.json", "aws-workspacesweb-networksettings.json", "aws-workspacesweb-portal.json", "aws-workspacesweb-truststore.json", "aws-workspacesweb-useraccessloggingsettings.json", - "aws-workspacesweb-usersettings.json", "aws-xray-group.json", "aws-xray-resourcepolicy.json", "aws-xray-samplingrule.json", diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-workspacesweb-identityprovider.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-workspacesweb-identityprovider.json new file mode 100644 index 0000000000..ea188606fe --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-workspacesweb-identityprovider.json @@ -0,0 +1,111 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/PortalArn" + ], + "definitions": { + "IdentityProviderDetails": { + "additionalProperties": false, + "patternProperties": { + "^[\\s\\S]*$": { + "maxLength": 131072, + "minLength": 0, + "pattern": "^[\\s\\S]*$", + "type": "string" + } + }, + "type": "object" + }, + "IdentityProviderType": { + "enum": [ + "SAML", + "Facebook", + "Google", + "LoginWithAmazon", + "SignInWithApple", + "OIDC" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/IdentityProviderArn" + ], + "properties": { + "IdentityProviderArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36}){2,}$", + "type": "string" + }, + "IdentityProviderDetails": { + "$ref": "#/definitions/IdentityProviderDetails" + }, + "IdentityProviderName": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[^_][\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}][^_]+$", + "type": "string" + }, + "IdentityProviderType": { + "$ref": "#/definitions/IdentityProviderType" + }, + "PortalArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36})+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/IdentityProviderArn" + ], + "required": [ + "IdentityProviderDetails", + "IdentityProviderName", + "IdentityProviderType" + ], + "sourceUrl": "https://github.com/shivankgoel/aws-cloudformation-resource-providers-workspaces-web", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::WorkSpacesWeb::IdentityProvider", + "writeOnlyProperties": [ + "/properties/PortalArn" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-workspacesweb-usersettings.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-workspacesweb-usersettings.json new file mode 100644 index 0000000000..f69708baf1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-workspacesweb-usersettings.json @@ -0,0 +1,190 @@ +{ + "additionalProperties": false, + "definitions": { + "CookieSpecification": { + "additionalProperties": false, + "properties": { + "Domain": { + "maxLength": 253, + "minLength": 0, + "pattern": "^(\\.?)(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\\.)*[a-z0-9][a-z0-9-]{0,61}[a-z0-9]$", + "type": "string" + }, + "Name": { + "maxLength": 4096, + "minLength": 0, + "type": "string" + }, + "Path": { + "maxLength": 2000, + "minLength": 0, + "pattern": "^/(\\S)*$", + "type": "string" + } + }, + "required": [ + "Domain" + ], + "type": "object" + }, + "CookieSynchronizationConfiguration": { + "additionalProperties": false, + "properties": { + "Allowlist": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CookieSpecification" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "Blocklist": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CookieSpecification" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "Allowlist" + ], + "type": "object" + }, + "EnabledType": { + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string" + }, + "EncryptionContextMap": { + "additionalProperties": false, + "patternProperties": { + "^[\\s\\S]*$": { + "maxLength": 131072, + "minLength": 0, + "pattern": "^[\\s\\S]*$", + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserSettingsArn" + ], + "properties": { + "AdditionalEncryptionContext": { + "$ref": "#/definitions/EncryptionContextMap" + }, + "AssociatedPortalArns": { + "insertionOrder": false, + "items": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36})+$", + "type": "string" + }, + "type": "array" + }, + "CookieSynchronizationConfiguration": { + "$ref": "#/definitions/CookieSynchronizationConfiguration" + }, + "CopyAllowed": { + "$ref": "#/definitions/EnabledType" + }, + "CustomerManagedKey": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:[\\w+=\\/,.@-]+:kms:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:key\\/[a-zA-Z0-9-]+$", + "type": "string" + }, + "DeepLinkAllowed": { + "$ref": "#/definitions/EnabledType" + }, + "DisconnectTimeoutInMinutes": { + "default": null, + "maximum": 600, + "minimum": 1, + "type": "number" + }, + "DownloadAllowed": { + "$ref": "#/definitions/EnabledType" + }, + "IdleDisconnectTimeoutInMinutes": { + "default": null, + "maximum": 60, + "minimum": 0, + "type": "number" + }, + "PasteAllowed": { + "$ref": "#/definitions/EnabledType" + }, + "PrintAllowed": { + "$ref": "#/definitions/EnabledType" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "UploadAllowed": { + "$ref": "#/definitions/EnabledType" + }, + "UserSettingsArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36})+$", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/AssociatedPortalArns", + "/properties/UserSettingsArn" + ], + "required": [ + "CopyAllowed", + "DownloadAllowed", + "PasteAllowed", + "PrintAllowed", + "UploadAllowed" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::WorkSpacesWeb::UserSettings" +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py b/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py index ffbded4a47..49eba5719e 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py @@ -806,6 +806,12 @@ "AWS::OSIS::Pipeline", "AWS::Oam::Link", "AWS::Oam::Sink", + "AWS::OpenSearchServerless::AccessPolicy", + "AWS::OpenSearchServerless::Collection", + "AWS::OpenSearchServerless::LifecyclePolicy", + "AWS::OpenSearchServerless::SecurityConfig", + "AWS::OpenSearchServerless::SecurityPolicy", + "AWS::OpenSearchServerless::VpcEndpoint", "AWS::OpenSearchService::Domain", "AWS::OpsWorks::App", "AWS::OpsWorks::ElasticLoadBalancerAttachment", @@ -1146,7 +1152,6 @@ "aws-acmpca-certificateauthorityactivation.json", "aws-acmpca-permission.json", "aws-amazonmq-broker.json", - "aws-amazonmq-configuration.json", "aws-amazonmq-configurationassociation.json", "aws-amplify-app.json", "aws-amplify-branch.json", @@ -1343,7 +1348,6 @@ "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", "aws-cognito-logdeliveryconfiguration.json", - "aws-cognito-userpool.json", "aws-cognito-userpoolclient.json", "aws-cognito-userpooldomain.json", "aws-cognito-userpoolgroup.json", @@ -1929,6 +1933,12 @@ "aws-networkmanager-vpcattachment.json", "aws-oam-link.json", "aws-oam-sink.json", + "aws-opensearchserverless-accesspolicy.json", + "aws-opensearchserverless-collection.json", + "aws-opensearchserverless-lifecyclepolicy.json", + "aws-opensearchserverless-securityconfig.json", + "aws-opensearchserverless-securitypolicy.json", + "aws-opensearchserverless-vpcendpoint.json", "aws-opensearchservice-domain.json", "aws-opsworks-app.json", "aws-opsworks-elasticloadbalancerattachment.json", @@ -2033,8 +2043,6 @@ "aws-route53-keysigningkey.json", "aws-route53-recordset.json", "aws-route53-recordsetgroup.json", - "aws-route53profiles-profile.json", - "aws-route53profiles-profileassociation.json", "aws-route53profiles-profileresourceassociation.json", "aws-route53resolver-firewalldomainlist.json", "aws-route53resolver-firewallrulegroup.json", @@ -2100,6 +2108,7 @@ "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", "aws-secretsmanager-secrettargetattachment.json", + "aws-securityhub-automationrule.json", "aws-securityhub-configurationpolicy.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-findingaggregator.json", diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-amazonmq-configuration.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-amazonmq-configuration.json similarity index 59% rename from src/cfnlint/data/schemas/providers/cn_north_1/aws-amazonmq-configuration.json rename to src/cfnlint/data/schemas/providers/ap_northeast_2/aws-amazonmq-configuration.json index 37e9f26873..81cc7369f7 100644 --- a/src/cfnlint/data/schemas/providers/cn_north_1/aws-amazonmq-configuration.json +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-amazonmq-configuration.json @@ -1,10 +1,10 @@ { "additionalProperties": false, "createOnlyProperties": [ - "/properties/AuthenticationStrategy", "/properties/EngineType", - "/properties/EngineVersion", - "/properties/Name" + "/properties/Name", + "/properties/AuthenticationStrategy", + "/properties/EngineVersion" ], "definitions": { "TagsEntry": { @@ -53,40 +53,25 @@ "type": "string" }, "Revision": { - "type": "string" + "type": "integer" }, "Tags": { - "insertionOrder": false, "items": { "$ref": "#/definitions/TagsEntry" }, - "type": "array" + "type": "array", + "uniqueItems": false } }, - "propertyTransform": { - "/properties/AuthenticationStrategy": "$uppercase(AuthenticationStrategy)", - "/properties/EngineType": "$uppercase(EngineType)" - }, "readOnlyProperties": [ - "/properties/Arn", + "/properties/Revision", "/properties/Id", - "/properties/Revision" + "/properties/Arn" ], "required": [ "EngineType", "Data", "Name" ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::AmazonMQ::Configuration", - "writeOnlyProperties": [ - "/properties/Data" - ] + "typeName": "AWS::AmazonMQ::Configuration" } diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-cognito-userpool.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-cognito-userpool.json new file mode 100644 index 0000000000..be46ed5eb0 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-cognito-userpool.json @@ -0,0 +1,502 @@ +{ + "additionalProperties": false, + "definitions": { + "AccountRecoverySetting": { + "additionalProperties": false, + "properties": { + "RecoveryMechanisms": { + "items": { + "$ref": "#/definitions/RecoveryOption" + }, + "type": "array" + } + }, + "type": "object" + }, + "AdminCreateUserConfig": { + "additionalProperties": false, + "properties": { + "AllowAdminCreateUserOnly": { + "type": "boolean" + }, + "InviteMessageTemplate": { + "$ref": "#/definitions/InviteMessageTemplate" + }, + "UnusedAccountValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "AdvancedSecurityAdditionalFlows": { + "additionalProperties": false, + "properties": { + "CustomAuthMode": { + "type": "string" + } + }, + "type": "object" + }, + "CustomEmailSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "CustomSMSSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "DeviceConfiguration": { + "additionalProperties": false, + "properties": { + "ChallengeRequiredOnNewDevice": { + "type": "boolean" + }, + "DeviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + }, + "type": "object" + }, + "EmailConfiguration": { + "additionalProperties": false, + "properties": { + "ConfigurationSet": { + "type": "string" + }, + "EmailSendingAccount": { + "type": "string" + }, + "From": { + "type": "string" + }, + "ReplyToEmailAddress": { + "type": "string" + }, + "SourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "InviteMessageTemplate": { + "additionalProperties": false, + "properties": { + "EmailMessage": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "SMSMessage": { + "type": "string" + } + }, + "type": "object" + }, + "LambdaConfig": { + "additionalProperties": false, + "properties": { + "CreateAuthChallenge": { + "type": "string" + }, + "CustomEmailSender": { + "$ref": "#/definitions/CustomEmailSender" + }, + "CustomMessage": { + "type": "string" + }, + "CustomSMSSender": { + "$ref": "#/definitions/CustomSMSSender" + }, + "DefineAuthChallenge": { + "type": "string" + }, + "KMSKeyID": { + "type": "string" + }, + "PostAuthentication": { + "type": "string" + }, + "PostConfirmation": { + "type": "string" + }, + "PreAuthentication": { + "type": "string" + }, + "PreSignUp": { + "type": "string" + }, + "PreTokenGeneration": { + "type": "string" + }, + "PreTokenGenerationConfig": { + "$ref": "#/definitions/PreTokenGenerationConfig" + }, + "UserMigration": { + "type": "string" + }, + "VerifyAuthChallengeResponse": { + "type": "string" + } + }, + "type": "object" + }, + "NumberAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxValue": { + "type": "string" + }, + "MinValue": { + "type": "string" + } + }, + "type": "object" + }, + "PasswordPolicy": { + "additionalProperties": false, + "properties": { + "MinimumLength": { + "type": "integer" + }, + "PasswordHistorySize": { + "type": "integer" + }, + "RequireLowercase": { + "type": "boolean" + }, + "RequireNumbers": { + "type": "boolean" + }, + "RequireSymbols": { + "type": "boolean" + }, + "RequireUppercase": { + "type": "boolean" + }, + "TemporaryPasswordValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "Policies": { + "additionalProperties": false, + "properties": { + "PasswordPolicy": { + "$ref": "#/definitions/PasswordPolicy" + } + }, + "type": "object" + }, + "PreTokenGenerationConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "RecoveryOption": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Priority": { + "type": "integer" + } + }, + "type": "object" + }, + "SchemaAttribute": { + "additionalProperties": false, + "properties": { + "AttributeDataType": { + "type": "string" + }, + "DeveloperOnlyAttribute": { + "type": "boolean" + }, + "Mutable": { + "type": "boolean" + }, + "Name": { + "type": "string" + }, + "NumberAttributeConstraints": { + "$ref": "#/definitions/NumberAttributeConstraints" + }, + "Required": { + "type": "boolean" + }, + "StringAttributeConstraints": { + "$ref": "#/definitions/StringAttributeConstraints" + } + }, + "type": "object" + }, + "SmsConfiguration": { + "additionalProperties": false, + "properties": { + "ExternalId": { + "type": "string" + }, + "SnsCallerArn": { + "type": "string" + }, + "SnsRegion": { + "type": "string" + } + }, + "type": "object" + }, + "StringAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxLength": { + "type": "string" + }, + "MinLength": { + "type": "string" + } + }, + "type": "object" + }, + "UserAttributeUpdateSettings": { + "additionalProperties": false, + "properties": { + "AttributesRequireVerificationBeforeUpdate": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "AttributesRequireVerificationBeforeUpdate" + ], + "type": "object" + }, + "UserPoolAddOns": { + "additionalProperties": false, + "properties": { + "AdvancedSecurityAdditionalFlows": { + "$ref": "#/definitions/AdvancedSecurityAdditionalFlows" + }, + "AdvancedSecurityMode": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameConfiguration": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + } + }, + "type": "object" + }, + "VerificationMessageTemplate": { + "additionalProperties": false, + "properties": { + "DefaultEmailOption": { + "type": "string" + }, + "EmailMessage": { + "type": "string" + }, + "EmailMessageByLink": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "EmailSubjectByLink": { + "type": "string" + }, + "SmsMessage": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId" + ], + "properties": { + "AccountRecoverySetting": { + "$ref": "#/definitions/AccountRecoverySetting" + }, + "AdminCreateUserConfig": { + "$ref": "#/definitions/AdminCreateUserConfig" + }, + "AliasAttributes": { + "items": { + "enum": [ + "email", + "phone_number", + "preferred_username" + ], + "type": "string" + }, + "type": "array" + }, + "Arn": { + "type": "string" + }, + "AutoVerifiedAttributes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DeletionProtection": { + "type": "string" + }, + "DeviceConfiguration": { + "$ref": "#/definitions/DeviceConfiguration" + }, + "EmailConfiguration": { + "$ref": "#/definitions/EmailConfiguration" + }, + "EmailVerificationMessage": { + "maxLength": 20000, + "minLength": 6, + "type": "string" + }, + "EmailVerificationSubject": { + "maxLength": 140, + "minLength": 1, + "type": "string" + }, + "EnabledMfas": { + "items": { + "type": "string" + }, + "type": "array" + }, + "LambdaConfig": { + "$ref": "#/definitions/LambdaConfig" + }, + "MfaConfiguration": { + "enum": [ + "OFF", + "ON", + "OPTIONAL" + ], + "type": "string" + }, + "Policies": { + "$ref": "#/definitions/Policies" + }, + "ProviderName": { + "type": "string" + }, + "ProviderURL": { + "type": "string" + }, + "Schema": { + "items": { + "$ref": "#/definitions/SchemaAttribute" + }, + "type": "array" + }, + "SmsAuthenticationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "SmsConfiguration": { + "$ref": "#/definitions/SmsConfiguration" + }, + "SmsVerificationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "UserAttributeUpdateSettings": { + "$ref": "#/definitions/UserAttributeUpdateSettings" + }, + "UserPoolAddOns": { + "$ref": "#/definitions/UserPoolAddOns" + }, + "UserPoolId": { + "type": "string" + }, + "UserPoolName": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "UserPoolTags": { + "additionalProperties": false, + "patternProperties": { + "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameAttributes": { + "items": { + "enum": [ + "email", + "phone_number" + ], + "type": "string" + }, + "type": "array" + }, + "UsernameConfiguration": { + "$ref": "#/definitions/UsernameConfiguration" + }, + "VerificationMessageTemplate": { + "$ref": "#/definitions/VerificationMessageTemplate" + } + }, + "propertyTransform": { + "/properties/Schema/*/Name": "'custom:' & '' & Name" + }, + "readOnlyProperties": [ + "/properties/ProviderName", + "/properties/UserPoolId", + "/properties/ProviderURL", + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/UserPoolTags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Cognito::UserPool", + "writeOnlyProperties": [ + "/properties/EnabledMfas" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-route53profiles-profile.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-route53profiles-profile.json new file mode 100644 index 0000000000..123295aef9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-route53profiles-profile.json @@ -0,0 +1,76 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "ClientToken": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Id", + "/properties/ClientToken" + ], + "required": [ + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Profiles::Profile", + "writeOnlyProperties": [ + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-route53profiles-profileassociation.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-route53profiles-profileassociation.json new file mode 100644 index 0000000000..b1857370f9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-route53profiles-profileassociation.json @@ -0,0 +1,78 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name", + "/properties/ResourceId", + "/properties/ProfileId" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "ProfileId": { + "type": "string" + }, + "ResourceId": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "ResourceId", + "ProfileId", + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Profiles::ProfileAssociation", + "writeOnlyProperties": [ + "/properties/Arn", + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-securityhub-automationrule.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-securityhub-automationrule.json deleted file mode 100644 index 07eef12ca5..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-securityhub-automationrule.json +++ /dev/null @@ -1,690 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AutomationRulesAction": { - "properties": { - "FindingFieldsUpdate": { - "$ref": "#/definitions/AutomationRulesFindingFieldsUpdate" - }, - "Type": { - "enum": [ - "FINDING_FIELDS_UPDATE" - ], - "type": "string" - } - }, - "required": [ - "Type", - "FindingFieldsUpdate" - ], - "type": "object" - }, - "AutomationRulesFindingFieldsUpdate": { - "properties": { - "Confidence": { - "$ref": "#/definitions/int100" - }, - "Criticality": { - "$ref": "#/definitions/int100" - }, - "Note": { - "$ref": "#/definitions/NoteUpdate", - "type": "object" - }, - "RelatedFindings": { - "items": { - "$ref": "#/definitions/RelatedFinding" - }, - "maxItems": 10, - "minItems": 1, - "type": "array" - }, - "Severity": { - "$ref": "#/definitions/SeverityUpdate", - "type": "object" - }, - "Types": { - "items": { - "pattern": "^([^/]+)(/[^/]+){0,2}$", - "type": "string" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UserDefinedFields": { - "$ref": "#/definitions/map" - }, - "VerificationState": { - "enum": [ - "UNKNOWN", - "TRUE_POSITIVE", - "FALSE_POSITIVE", - "BENIGN_POSITIVE" - ], - "type": "string" - }, - "Workflow": { - "$ref": "#/definitions/WorkflowUpdate", - "type": "object" - } - }, - "type": "object" - }, - "AutomationRulesFindingFilters": { - "additionalProperties": false, - "properties": { - "AwsAccountId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "CompanyName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceAssociatedStandardsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceSecurityControlId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Confidence": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "CreatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Criticality": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Description": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "FirstObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "GeneratorId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Id": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "LastObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteText": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedBy": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RecordState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceDetailsOther": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "ResourcePartition": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceRegion": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceTags": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceType": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SeverityLabel": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SourceUrl": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Title": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Type": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UserDefinedFields": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "VerificationState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "WorkflowStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - } - }, - "type": "object" - }, - "BooleanFilter": { - "additionalProperties": false, - "properties": { - "Value": { - "type": "boolean" - } - }, - "required": [ - "Value" - ], - "type": "object" - }, - "DateFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "DateRange" - ] - }, - { - "allOf": [ - { - "required": [ - "Start" - ] - }, - { - "required": [ - "End" - ] - } - ] - } - ], - "properties": { - "DateRange": { - "$ref": "#/definitions/DateRange" - }, - "End": { - "$ref": "#/definitions/ISO8601DateString" - }, - "Start": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "type": "object" - }, - "DateRange": { - "additionalProperties": false, - "properties": { - "Unit": { - "enum": [ - "DAYS" - ], - "type": "string" - }, - "Value": { - "type": "number" - } - }, - "required": [ - "Unit", - "Value" - ], - "type": "object" - }, - "ISO8601DateString": { - "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$", - "type": "string" - }, - "MapFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "enum": [ - "EQUALS", - "NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Key", - "Value" - ], - "type": "object" - }, - "NonEmptyString": { - "minLength": 1, - "type": "string" - }, - "NoteUpdate": { - "additionalProperties": false, - "properties": { - "Text": { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - "UpdatedBy": { - "$ref": "#/definitions/arnOrId" - } - }, - "required": [ - "Text", - "UpdatedBy" - ], - "type": "object" - }, - "NumberFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "Eq" - ] - }, - { - "anyOf": [ - { - "required": [ - "Gte" - ] - }, - { - "required": [ - "Lte" - ] - } - ] - } - ], - "properties": { - "Eq": { - "type": "number" - }, - "Gte": { - "type": "number" - }, - "Lte": { - "type": "number" - } - }, - "type": "object" - }, - "RelatedFinding": { - "additionalProperties": false, - "properties": { - "Id": { - "$ref": "#/definitions/arnOrId" - }, - "ProductArn": { - "$ref": "#/definitions/arn" - } - }, - "required": [ - "ProductArn", - "Id" - ], - "type": "object" - }, - "SeverityUpdate": { - "additionalProperties": false, - "properties": { - "Label": { - "enum": [ - "INFORMATIONAL", - "LOW", - "MEDIUM", - "HIGH", - "CRITICAL" - ], - "type": "string" - }, - "Normalized": { - "$ref": "#/definitions/int100" - }, - "Product": { - "type": "number" - } - }, - "type": "object" - }, - "StringFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "$ref": "#/definitions/StringFilterComparison" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Value" - ], - "type": "object" - }, - "StringFilterComparison": { - "enum": [ - "EQUALS", - "PREFIX", - "NOT_EQUALS", - "PREFIX_NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - "^[a-zA-Z0-9]{1,128}$": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "WorkflowUpdate": { - "additionalProperties": false, - "properties": { - "Status": { - "enum": [ - "NEW", - "NOTIFIED", - "RESOLVED", - "SUPPRESSED" - ], - "type": "string" - } - }, - "required": [ - "Status" - ], - "type": "object" - }, - "arn": { - "maxLength": 2048, - "minLength": 12, - "pattern": "^arn:(aws|aws-cn|aws-us-gov|aws-iso-?[a-z]{0,2}):[A-Za-z0-9]{1,63}:[a-z]+-([a-z]{1,10}-)?[a-z]+-[0-9]+:([0-9]{12})?:.+$", - "type": "string" - }, - "arnOrId": { - "anyOf": [ - { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - { - "$ref": "#/definitions/arn" - } - ] - }, - "int100": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "map": { - "additionalProperties": false, - "maxProperties": 50, - "minProperties": 1, - "patternProperties": { - "^[-_+=.:/@\\w\\s]{1,128}$": { - "maxLength": 1024, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "timestamp": { - "format": "date-time", - "pattern": "(\\d\\d\\d\\d)-[0-1](\\d)-[0-3](\\d)[Tt](?:[0-2](\\d):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?(?:[Zz]|[+-](\\d\\d)(?::?(\\d\\d))?)$", - "type": "string" - } - }, - "primaryIdentifier": [ - "/properties/RuleArn" - ], - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/AutomationRulesAction" - }, - "maxItems": 1, - "minItems": 1, - "type": "array" - }, - "CreatedAt": { - "$ref": "#/definitions/ISO8601DateString" - }, - "CreatedBy": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "Criteria": { - "$ref": "#/definitions/AutomationRulesFindingFilters" - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "IsTerminal": { - "type": "boolean" - }, - "RuleArn": { - "pattern": "arn:aws\\S*:securityhub:\\S*", - "type": "string" - }, - "RuleName": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "RuleOrder": { - "maximum": 1000, - "minimum": 1, - "type": "integer" - }, - "RuleStatus": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "Tags": { - "$ref": "#/definitions/Tags" - }, - "UpdatedAt": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "readOnlyProperties": [ - "/properties/RuleArn", - "/properties/CreatedAt", - "/properties/UpdatedAt", - "/properties/CreatedBy" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecurityHub::AutomationRule" -} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py b/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py index 870fec569e..523d2ec204 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py @@ -947,7 +947,6 @@ "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", "aws-cognito-logdeliveryconfiguration.json", - "aws-cognito-userpool.json", "aws-cognito-userpoolclient.json", "aws-cognito-userpooldomain.json", "aws-cognito-userpoolgroup.json", @@ -1440,6 +1439,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-securityhub-automationrule.json", "aws-securityhub-configurationpolicy.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-findingaggregator.json", diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-cognito-userpool.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-cognito-userpool.json new file mode 100644 index 0000000000..be46ed5eb0 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-cognito-userpool.json @@ -0,0 +1,502 @@ +{ + "additionalProperties": false, + "definitions": { + "AccountRecoverySetting": { + "additionalProperties": false, + "properties": { + "RecoveryMechanisms": { + "items": { + "$ref": "#/definitions/RecoveryOption" + }, + "type": "array" + } + }, + "type": "object" + }, + "AdminCreateUserConfig": { + "additionalProperties": false, + "properties": { + "AllowAdminCreateUserOnly": { + "type": "boolean" + }, + "InviteMessageTemplate": { + "$ref": "#/definitions/InviteMessageTemplate" + }, + "UnusedAccountValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "AdvancedSecurityAdditionalFlows": { + "additionalProperties": false, + "properties": { + "CustomAuthMode": { + "type": "string" + } + }, + "type": "object" + }, + "CustomEmailSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "CustomSMSSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "DeviceConfiguration": { + "additionalProperties": false, + "properties": { + "ChallengeRequiredOnNewDevice": { + "type": "boolean" + }, + "DeviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + }, + "type": "object" + }, + "EmailConfiguration": { + "additionalProperties": false, + "properties": { + "ConfigurationSet": { + "type": "string" + }, + "EmailSendingAccount": { + "type": "string" + }, + "From": { + "type": "string" + }, + "ReplyToEmailAddress": { + "type": "string" + }, + "SourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "InviteMessageTemplate": { + "additionalProperties": false, + "properties": { + "EmailMessage": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "SMSMessage": { + "type": "string" + } + }, + "type": "object" + }, + "LambdaConfig": { + "additionalProperties": false, + "properties": { + "CreateAuthChallenge": { + "type": "string" + }, + "CustomEmailSender": { + "$ref": "#/definitions/CustomEmailSender" + }, + "CustomMessage": { + "type": "string" + }, + "CustomSMSSender": { + "$ref": "#/definitions/CustomSMSSender" + }, + "DefineAuthChallenge": { + "type": "string" + }, + "KMSKeyID": { + "type": "string" + }, + "PostAuthentication": { + "type": "string" + }, + "PostConfirmation": { + "type": "string" + }, + "PreAuthentication": { + "type": "string" + }, + "PreSignUp": { + "type": "string" + }, + "PreTokenGeneration": { + "type": "string" + }, + "PreTokenGenerationConfig": { + "$ref": "#/definitions/PreTokenGenerationConfig" + }, + "UserMigration": { + "type": "string" + }, + "VerifyAuthChallengeResponse": { + "type": "string" + } + }, + "type": "object" + }, + "NumberAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxValue": { + "type": "string" + }, + "MinValue": { + "type": "string" + } + }, + "type": "object" + }, + "PasswordPolicy": { + "additionalProperties": false, + "properties": { + "MinimumLength": { + "type": "integer" + }, + "PasswordHistorySize": { + "type": "integer" + }, + "RequireLowercase": { + "type": "boolean" + }, + "RequireNumbers": { + "type": "boolean" + }, + "RequireSymbols": { + "type": "boolean" + }, + "RequireUppercase": { + "type": "boolean" + }, + "TemporaryPasswordValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "Policies": { + "additionalProperties": false, + "properties": { + "PasswordPolicy": { + "$ref": "#/definitions/PasswordPolicy" + } + }, + "type": "object" + }, + "PreTokenGenerationConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "RecoveryOption": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Priority": { + "type": "integer" + } + }, + "type": "object" + }, + "SchemaAttribute": { + "additionalProperties": false, + "properties": { + "AttributeDataType": { + "type": "string" + }, + "DeveloperOnlyAttribute": { + "type": "boolean" + }, + "Mutable": { + "type": "boolean" + }, + "Name": { + "type": "string" + }, + "NumberAttributeConstraints": { + "$ref": "#/definitions/NumberAttributeConstraints" + }, + "Required": { + "type": "boolean" + }, + "StringAttributeConstraints": { + "$ref": "#/definitions/StringAttributeConstraints" + } + }, + "type": "object" + }, + "SmsConfiguration": { + "additionalProperties": false, + "properties": { + "ExternalId": { + "type": "string" + }, + "SnsCallerArn": { + "type": "string" + }, + "SnsRegion": { + "type": "string" + } + }, + "type": "object" + }, + "StringAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxLength": { + "type": "string" + }, + "MinLength": { + "type": "string" + } + }, + "type": "object" + }, + "UserAttributeUpdateSettings": { + "additionalProperties": false, + "properties": { + "AttributesRequireVerificationBeforeUpdate": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "AttributesRequireVerificationBeforeUpdate" + ], + "type": "object" + }, + "UserPoolAddOns": { + "additionalProperties": false, + "properties": { + "AdvancedSecurityAdditionalFlows": { + "$ref": "#/definitions/AdvancedSecurityAdditionalFlows" + }, + "AdvancedSecurityMode": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameConfiguration": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + } + }, + "type": "object" + }, + "VerificationMessageTemplate": { + "additionalProperties": false, + "properties": { + "DefaultEmailOption": { + "type": "string" + }, + "EmailMessage": { + "type": "string" + }, + "EmailMessageByLink": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "EmailSubjectByLink": { + "type": "string" + }, + "SmsMessage": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId" + ], + "properties": { + "AccountRecoverySetting": { + "$ref": "#/definitions/AccountRecoverySetting" + }, + "AdminCreateUserConfig": { + "$ref": "#/definitions/AdminCreateUserConfig" + }, + "AliasAttributes": { + "items": { + "enum": [ + "email", + "phone_number", + "preferred_username" + ], + "type": "string" + }, + "type": "array" + }, + "Arn": { + "type": "string" + }, + "AutoVerifiedAttributes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DeletionProtection": { + "type": "string" + }, + "DeviceConfiguration": { + "$ref": "#/definitions/DeviceConfiguration" + }, + "EmailConfiguration": { + "$ref": "#/definitions/EmailConfiguration" + }, + "EmailVerificationMessage": { + "maxLength": 20000, + "minLength": 6, + "type": "string" + }, + "EmailVerificationSubject": { + "maxLength": 140, + "minLength": 1, + "type": "string" + }, + "EnabledMfas": { + "items": { + "type": "string" + }, + "type": "array" + }, + "LambdaConfig": { + "$ref": "#/definitions/LambdaConfig" + }, + "MfaConfiguration": { + "enum": [ + "OFF", + "ON", + "OPTIONAL" + ], + "type": "string" + }, + "Policies": { + "$ref": "#/definitions/Policies" + }, + "ProviderName": { + "type": "string" + }, + "ProviderURL": { + "type": "string" + }, + "Schema": { + "items": { + "$ref": "#/definitions/SchemaAttribute" + }, + "type": "array" + }, + "SmsAuthenticationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "SmsConfiguration": { + "$ref": "#/definitions/SmsConfiguration" + }, + "SmsVerificationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "UserAttributeUpdateSettings": { + "$ref": "#/definitions/UserAttributeUpdateSettings" + }, + "UserPoolAddOns": { + "$ref": "#/definitions/UserPoolAddOns" + }, + "UserPoolId": { + "type": "string" + }, + "UserPoolName": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "UserPoolTags": { + "additionalProperties": false, + "patternProperties": { + "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameAttributes": { + "items": { + "enum": [ + "email", + "phone_number" + ], + "type": "string" + }, + "type": "array" + }, + "UsernameConfiguration": { + "$ref": "#/definitions/UsernameConfiguration" + }, + "VerificationMessageTemplate": { + "$ref": "#/definitions/VerificationMessageTemplate" + } + }, + "propertyTransform": { + "/properties/Schema/*/Name": "'custom:' & '' & Name" + }, + "readOnlyProperties": [ + "/properties/ProviderName", + "/properties/UserPoolId", + "/properties/ProviderURL", + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/UserPoolTags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Cognito::UserPool", + "writeOnlyProperties": [ + "/properties/EnabledMfas" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-securityhub-automationrule.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-securityhub-automationrule.json deleted file mode 100644 index 07eef12ca5..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-securityhub-automationrule.json +++ /dev/null @@ -1,690 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AutomationRulesAction": { - "properties": { - "FindingFieldsUpdate": { - "$ref": "#/definitions/AutomationRulesFindingFieldsUpdate" - }, - "Type": { - "enum": [ - "FINDING_FIELDS_UPDATE" - ], - "type": "string" - } - }, - "required": [ - "Type", - "FindingFieldsUpdate" - ], - "type": "object" - }, - "AutomationRulesFindingFieldsUpdate": { - "properties": { - "Confidence": { - "$ref": "#/definitions/int100" - }, - "Criticality": { - "$ref": "#/definitions/int100" - }, - "Note": { - "$ref": "#/definitions/NoteUpdate", - "type": "object" - }, - "RelatedFindings": { - "items": { - "$ref": "#/definitions/RelatedFinding" - }, - "maxItems": 10, - "minItems": 1, - "type": "array" - }, - "Severity": { - "$ref": "#/definitions/SeverityUpdate", - "type": "object" - }, - "Types": { - "items": { - "pattern": "^([^/]+)(/[^/]+){0,2}$", - "type": "string" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UserDefinedFields": { - "$ref": "#/definitions/map" - }, - "VerificationState": { - "enum": [ - "UNKNOWN", - "TRUE_POSITIVE", - "FALSE_POSITIVE", - "BENIGN_POSITIVE" - ], - "type": "string" - }, - "Workflow": { - "$ref": "#/definitions/WorkflowUpdate", - "type": "object" - } - }, - "type": "object" - }, - "AutomationRulesFindingFilters": { - "additionalProperties": false, - "properties": { - "AwsAccountId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "CompanyName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceAssociatedStandardsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceSecurityControlId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Confidence": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "CreatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Criticality": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Description": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "FirstObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "GeneratorId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Id": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "LastObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteText": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedBy": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RecordState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceDetailsOther": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "ResourcePartition": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceRegion": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceTags": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceType": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SeverityLabel": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SourceUrl": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Title": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Type": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UserDefinedFields": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "VerificationState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "WorkflowStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - } - }, - "type": "object" - }, - "BooleanFilter": { - "additionalProperties": false, - "properties": { - "Value": { - "type": "boolean" - } - }, - "required": [ - "Value" - ], - "type": "object" - }, - "DateFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "DateRange" - ] - }, - { - "allOf": [ - { - "required": [ - "Start" - ] - }, - { - "required": [ - "End" - ] - } - ] - } - ], - "properties": { - "DateRange": { - "$ref": "#/definitions/DateRange" - }, - "End": { - "$ref": "#/definitions/ISO8601DateString" - }, - "Start": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "type": "object" - }, - "DateRange": { - "additionalProperties": false, - "properties": { - "Unit": { - "enum": [ - "DAYS" - ], - "type": "string" - }, - "Value": { - "type": "number" - } - }, - "required": [ - "Unit", - "Value" - ], - "type": "object" - }, - "ISO8601DateString": { - "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$", - "type": "string" - }, - "MapFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "enum": [ - "EQUALS", - "NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Key", - "Value" - ], - "type": "object" - }, - "NonEmptyString": { - "minLength": 1, - "type": "string" - }, - "NoteUpdate": { - "additionalProperties": false, - "properties": { - "Text": { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - "UpdatedBy": { - "$ref": "#/definitions/arnOrId" - } - }, - "required": [ - "Text", - "UpdatedBy" - ], - "type": "object" - }, - "NumberFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "Eq" - ] - }, - { - "anyOf": [ - { - "required": [ - "Gte" - ] - }, - { - "required": [ - "Lte" - ] - } - ] - } - ], - "properties": { - "Eq": { - "type": "number" - }, - "Gte": { - "type": "number" - }, - "Lte": { - "type": "number" - } - }, - "type": "object" - }, - "RelatedFinding": { - "additionalProperties": false, - "properties": { - "Id": { - "$ref": "#/definitions/arnOrId" - }, - "ProductArn": { - "$ref": "#/definitions/arn" - } - }, - "required": [ - "ProductArn", - "Id" - ], - "type": "object" - }, - "SeverityUpdate": { - "additionalProperties": false, - "properties": { - "Label": { - "enum": [ - "INFORMATIONAL", - "LOW", - "MEDIUM", - "HIGH", - "CRITICAL" - ], - "type": "string" - }, - "Normalized": { - "$ref": "#/definitions/int100" - }, - "Product": { - "type": "number" - } - }, - "type": "object" - }, - "StringFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "$ref": "#/definitions/StringFilterComparison" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Value" - ], - "type": "object" - }, - "StringFilterComparison": { - "enum": [ - "EQUALS", - "PREFIX", - "NOT_EQUALS", - "PREFIX_NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - "^[a-zA-Z0-9]{1,128}$": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "WorkflowUpdate": { - "additionalProperties": false, - "properties": { - "Status": { - "enum": [ - "NEW", - "NOTIFIED", - "RESOLVED", - "SUPPRESSED" - ], - "type": "string" - } - }, - "required": [ - "Status" - ], - "type": "object" - }, - "arn": { - "maxLength": 2048, - "minLength": 12, - "pattern": "^arn:(aws|aws-cn|aws-us-gov|aws-iso-?[a-z]{0,2}):[A-Za-z0-9]{1,63}:[a-z]+-([a-z]{1,10}-)?[a-z]+-[0-9]+:([0-9]{12})?:.+$", - "type": "string" - }, - "arnOrId": { - "anyOf": [ - { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - { - "$ref": "#/definitions/arn" - } - ] - }, - "int100": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "map": { - "additionalProperties": false, - "maxProperties": 50, - "minProperties": 1, - "patternProperties": { - "^[-_+=.:/@\\w\\s]{1,128}$": { - "maxLength": 1024, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "timestamp": { - "format": "date-time", - "pattern": "(\\d\\d\\d\\d)-[0-1](\\d)-[0-3](\\d)[Tt](?:[0-2](\\d):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?(?:[Zz]|[+-](\\d\\d)(?::?(\\d\\d))?)$", - "type": "string" - } - }, - "primaryIdentifier": [ - "/properties/RuleArn" - ], - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/AutomationRulesAction" - }, - "maxItems": 1, - "minItems": 1, - "type": "array" - }, - "CreatedAt": { - "$ref": "#/definitions/ISO8601DateString" - }, - "CreatedBy": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "Criteria": { - "$ref": "#/definitions/AutomationRulesFindingFilters" - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "IsTerminal": { - "type": "boolean" - }, - "RuleArn": { - "pattern": "arn:aws\\S*:securityhub:\\S*", - "type": "string" - }, - "RuleName": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "RuleOrder": { - "maximum": 1000, - "minimum": 1, - "type": "integer" - }, - "RuleStatus": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "Tags": { - "$ref": "#/definitions/Tags" - }, - "UpdatedAt": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "readOnlyProperties": [ - "/properties/RuleArn", - "/properties/CreatedAt", - "/properties/UpdatedAt", - "/properties/CreatedBy" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecurityHub::AutomationRule" -} diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py b/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py index 829d81fe70..d33fc4b04c 100644 --- a/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py @@ -1205,7 +1205,6 @@ "aws-appconfig-extension.json", "aws-appconfig-extensionassociation.json", "aws-appconfig-hostedconfigurationversion.json", - "aws-appflow-connector.json", "aws-appflow-connectorprofile.json", "aws-appflow-flow.json", "aws-appintegrations-application.json", @@ -1363,7 +1362,6 @@ "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", "aws-cognito-logdeliveryconfiguration.json", - "aws-cognito-userpool.json", "aws-cognito-userpoolclient.json", "aws-cognito-userpooldomain.json", "aws-cognito-userpoolgroup.json", diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-appflow-connector.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-appflow-connector.json new file mode 100644 index 0000000000..347bc05555 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_1/aws-appflow-connector.json @@ -0,0 +1,75 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/ConnectorLabel" + ], + "definitions": { + "ConnectorProvisioningConfig": { + "additionalProperties": false, + "properties": { + "Lambda": { + "$ref": "#/definitions/LambdaConnectorProvisioningConfig" + } + }, + "type": "object" + }, + "LambdaConnectorProvisioningConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "maxLength": 512, + "pattern": "arn:*:.*:.*:[0-9]+:.*", + "type": "string" + } + }, + "required": [ + "LambdaArn" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ConnectorLabel" + ], + "properties": { + "ConnectorArn": { + "maxLength": 512, + "pattern": "arn:.*:appflow:.*:[0-9]+:.*", + "type": "string" + }, + "ConnectorLabel": { + "maxLength": 512, + "pattern": "[a-zA-Z0-9][\\w!@#.-]+", + "type": "string" + }, + "ConnectorProvisioningConfig": { + "$ref": "#/definitions/ConnectorProvisioningConfig" + }, + "ConnectorProvisioningType": { + "maxLength": 256, + "minLength": 1, + "pattern": "[a-zA-Z0-9][\\w!@#.-]+", + "type": "string" + }, + "Description": { + "maxLength": 2048, + "pattern": "[\\s\\w/!@#+=.-]*", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/ConnectorArn" + ], + "required": [ + "ConnectorProvisioningType", + "ConnectorProvisioningConfig" + ], + "sourceUrl": "https://docs.aws.amazon.com/appflow/latest/userguide/what-is-appflow.html", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": false, + "tagUpdatable": false, + "taggable": false + }, + "typeName": "AWS::AppFlow::Connector" +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-cognito-userpool.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-cognito-userpool.json new file mode 100644 index 0000000000..be46ed5eb0 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_1/aws-cognito-userpool.json @@ -0,0 +1,502 @@ +{ + "additionalProperties": false, + "definitions": { + "AccountRecoverySetting": { + "additionalProperties": false, + "properties": { + "RecoveryMechanisms": { + "items": { + "$ref": "#/definitions/RecoveryOption" + }, + "type": "array" + } + }, + "type": "object" + }, + "AdminCreateUserConfig": { + "additionalProperties": false, + "properties": { + "AllowAdminCreateUserOnly": { + "type": "boolean" + }, + "InviteMessageTemplate": { + "$ref": "#/definitions/InviteMessageTemplate" + }, + "UnusedAccountValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "AdvancedSecurityAdditionalFlows": { + "additionalProperties": false, + "properties": { + "CustomAuthMode": { + "type": "string" + } + }, + "type": "object" + }, + "CustomEmailSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "CustomSMSSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "DeviceConfiguration": { + "additionalProperties": false, + "properties": { + "ChallengeRequiredOnNewDevice": { + "type": "boolean" + }, + "DeviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + }, + "type": "object" + }, + "EmailConfiguration": { + "additionalProperties": false, + "properties": { + "ConfigurationSet": { + "type": "string" + }, + "EmailSendingAccount": { + "type": "string" + }, + "From": { + "type": "string" + }, + "ReplyToEmailAddress": { + "type": "string" + }, + "SourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "InviteMessageTemplate": { + "additionalProperties": false, + "properties": { + "EmailMessage": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "SMSMessage": { + "type": "string" + } + }, + "type": "object" + }, + "LambdaConfig": { + "additionalProperties": false, + "properties": { + "CreateAuthChallenge": { + "type": "string" + }, + "CustomEmailSender": { + "$ref": "#/definitions/CustomEmailSender" + }, + "CustomMessage": { + "type": "string" + }, + "CustomSMSSender": { + "$ref": "#/definitions/CustomSMSSender" + }, + "DefineAuthChallenge": { + "type": "string" + }, + "KMSKeyID": { + "type": "string" + }, + "PostAuthentication": { + "type": "string" + }, + "PostConfirmation": { + "type": "string" + }, + "PreAuthentication": { + "type": "string" + }, + "PreSignUp": { + "type": "string" + }, + "PreTokenGeneration": { + "type": "string" + }, + "PreTokenGenerationConfig": { + "$ref": "#/definitions/PreTokenGenerationConfig" + }, + "UserMigration": { + "type": "string" + }, + "VerifyAuthChallengeResponse": { + "type": "string" + } + }, + "type": "object" + }, + "NumberAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxValue": { + "type": "string" + }, + "MinValue": { + "type": "string" + } + }, + "type": "object" + }, + "PasswordPolicy": { + "additionalProperties": false, + "properties": { + "MinimumLength": { + "type": "integer" + }, + "PasswordHistorySize": { + "type": "integer" + }, + "RequireLowercase": { + "type": "boolean" + }, + "RequireNumbers": { + "type": "boolean" + }, + "RequireSymbols": { + "type": "boolean" + }, + "RequireUppercase": { + "type": "boolean" + }, + "TemporaryPasswordValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "Policies": { + "additionalProperties": false, + "properties": { + "PasswordPolicy": { + "$ref": "#/definitions/PasswordPolicy" + } + }, + "type": "object" + }, + "PreTokenGenerationConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "RecoveryOption": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Priority": { + "type": "integer" + } + }, + "type": "object" + }, + "SchemaAttribute": { + "additionalProperties": false, + "properties": { + "AttributeDataType": { + "type": "string" + }, + "DeveloperOnlyAttribute": { + "type": "boolean" + }, + "Mutable": { + "type": "boolean" + }, + "Name": { + "type": "string" + }, + "NumberAttributeConstraints": { + "$ref": "#/definitions/NumberAttributeConstraints" + }, + "Required": { + "type": "boolean" + }, + "StringAttributeConstraints": { + "$ref": "#/definitions/StringAttributeConstraints" + } + }, + "type": "object" + }, + "SmsConfiguration": { + "additionalProperties": false, + "properties": { + "ExternalId": { + "type": "string" + }, + "SnsCallerArn": { + "type": "string" + }, + "SnsRegion": { + "type": "string" + } + }, + "type": "object" + }, + "StringAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxLength": { + "type": "string" + }, + "MinLength": { + "type": "string" + } + }, + "type": "object" + }, + "UserAttributeUpdateSettings": { + "additionalProperties": false, + "properties": { + "AttributesRequireVerificationBeforeUpdate": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "AttributesRequireVerificationBeforeUpdate" + ], + "type": "object" + }, + "UserPoolAddOns": { + "additionalProperties": false, + "properties": { + "AdvancedSecurityAdditionalFlows": { + "$ref": "#/definitions/AdvancedSecurityAdditionalFlows" + }, + "AdvancedSecurityMode": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameConfiguration": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + } + }, + "type": "object" + }, + "VerificationMessageTemplate": { + "additionalProperties": false, + "properties": { + "DefaultEmailOption": { + "type": "string" + }, + "EmailMessage": { + "type": "string" + }, + "EmailMessageByLink": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "EmailSubjectByLink": { + "type": "string" + }, + "SmsMessage": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId" + ], + "properties": { + "AccountRecoverySetting": { + "$ref": "#/definitions/AccountRecoverySetting" + }, + "AdminCreateUserConfig": { + "$ref": "#/definitions/AdminCreateUserConfig" + }, + "AliasAttributes": { + "items": { + "enum": [ + "email", + "phone_number", + "preferred_username" + ], + "type": "string" + }, + "type": "array" + }, + "Arn": { + "type": "string" + }, + "AutoVerifiedAttributes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DeletionProtection": { + "type": "string" + }, + "DeviceConfiguration": { + "$ref": "#/definitions/DeviceConfiguration" + }, + "EmailConfiguration": { + "$ref": "#/definitions/EmailConfiguration" + }, + "EmailVerificationMessage": { + "maxLength": 20000, + "minLength": 6, + "type": "string" + }, + "EmailVerificationSubject": { + "maxLength": 140, + "minLength": 1, + "type": "string" + }, + "EnabledMfas": { + "items": { + "type": "string" + }, + "type": "array" + }, + "LambdaConfig": { + "$ref": "#/definitions/LambdaConfig" + }, + "MfaConfiguration": { + "enum": [ + "OFF", + "ON", + "OPTIONAL" + ], + "type": "string" + }, + "Policies": { + "$ref": "#/definitions/Policies" + }, + "ProviderName": { + "type": "string" + }, + "ProviderURL": { + "type": "string" + }, + "Schema": { + "items": { + "$ref": "#/definitions/SchemaAttribute" + }, + "type": "array" + }, + "SmsAuthenticationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "SmsConfiguration": { + "$ref": "#/definitions/SmsConfiguration" + }, + "SmsVerificationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "UserAttributeUpdateSettings": { + "$ref": "#/definitions/UserAttributeUpdateSettings" + }, + "UserPoolAddOns": { + "$ref": "#/definitions/UserPoolAddOns" + }, + "UserPoolId": { + "type": "string" + }, + "UserPoolName": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "UserPoolTags": { + "additionalProperties": false, + "patternProperties": { + "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameAttributes": { + "items": { + "enum": [ + "email", + "phone_number" + ], + "type": "string" + }, + "type": "array" + }, + "UsernameConfiguration": { + "$ref": "#/definitions/UsernameConfiguration" + }, + "VerificationMessageTemplate": { + "$ref": "#/definitions/VerificationMessageTemplate" + } + }, + "propertyTransform": { + "/properties/Schema/*/Name": "'custom:' & '' & Name" + }, + "readOnlyProperties": [ + "/properties/ProviderName", + "/properties/UserPoolId", + "/properties/ProviderURL", + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/UserPoolTags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Cognito::UserPool", + "writeOnlyProperties": [ + "/properties/EnabledMfas" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py b/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py index a10bb3b6e8..751b995a48 100644 --- a/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py @@ -646,8 +646,8 @@ "aws-acmpca-certificateauthorityactivation.json", "aws-acmpca-permission.json", "aws-amazonmq-broker.json", - "aws-amazonmq-configuration.json", "aws-apigateway-vpclink.json", + "aws-apigatewayv2-api.json", "aws-apigatewayv2-apimapping.json", "aws-apigatewayv2-authorizer.json", "aws-apigatewayv2-deployment.json", @@ -749,7 +749,6 @@ "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", "aws-cognito-logdeliveryconfiguration.json", - "aws-cognito-userpool.json", "aws-cognito-userpoolclient.json", "aws-cognito-userpoolgroup.json", "aws-cognito-userpoolresourceserver.json", @@ -1094,8 +1093,6 @@ "aws-route53-keysigningkey.json", "aws-route53-recordset.json", "aws-route53-recordsetgroup.json", - "aws-route53profiles-profile.json", - "aws-route53profiles-profileassociation.json", "aws-route53profiles-profileresourceassociation.json", "aws-route53resolver-firewalldomainlist.json", "aws-route53resolver-firewallrulegroup.json", @@ -1124,6 +1121,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-securityhub-automationrule.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-hub.json", "aws-securityhub-insight.json", diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/aws-amazonmq-configuration.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-amazonmq-configuration.json new file mode 100644 index 0000000000..81cc7369f7 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_2/aws-amazonmq-configuration.json @@ -0,0 +1,77 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/EngineType", + "/properties/Name", + "/properties/AuthenticationStrategy", + "/properties/EngineVersion" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AuthenticationStrategy": { + "type": "string" + }, + "Data": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "EngineType": { + "type": "string" + }, + "EngineVersion": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Revision": { + "type": "integer" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Revision", + "/properties/Id", + "/properties/Arn" + ], + "required": [ + "EngineType", + "Data", + "Name" + ], + "typeName": "AWS::AmazonMQ::Configuration" +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/aws-apigatewayv2-api.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-apigatewayv2-api.json deleted file mode 100644 index 85210f6a4e..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_south_2/aws-apigatewayv2-api.json +++ /dev/null @@ -1,165 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ProtocolType" - ], - "definitions": { - "BodyS3Location": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" - }, - "Etag": { - "type": "string" - }, - "Key": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "type": "object" - }, - "Cors": { - "additionalProperties": false, - "properties": { - "AllowCredentials": { - "type": "boolean" - }, - "AllowHeaders": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "AllowMethods": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "AllowOrigins": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "ExposeHeaders": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "MaxAge": { - "type": "integer" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/ApiId" - ], - "properties": { - "ApiEndpoint": { - "type": "string" - }, - "ApiId": { - "type": "string" - }, - "ApiKeySelectionExpression": { - "type": "string" - }, - "BasePath": { - "type": "string" - }, - "Body": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "BodyS3Location": { - "$ref": "#/definitions/BodyS3Location" - }, - "CorsConfiguration": { - "$ref": "#/definitions/Cors" - }, - "CredentialsArn": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "DisableExecuteApiEndpoint": { - "type": "boolean" - }, - "DisableSchemaValidation": { - "type": "boolean" - }, - "FailOnWarnings": { - "type": "boolean" - }, - "Name": { - "type": "string" - }, - "ProtocolType": { - "type": "string" - }, - "RouteKey": { - "type": "string" - }, - "RouteSelectionExpression": { - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - ".*": { - "type": "string" - } - }, - "type": "object" - }, - "Target": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/ApiId", - "/properties/ApiEndpoint" - ], - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::ApiGatewayV2::Api", - "writeOnlyProperties": [ - "/properties/ApiKeySelectionExpression", - "/properties/BasePath", - "/properties/Body", - "/properties/BodyS3Location", - "/properties/BodyS3Location/Etag", - "/properties/BodyS3Location/Bucket", - "/properties/BodyS3Location/Version", - "/properties/BodyS3Location/Key", - "/properties/CredentialsArn", - "/properties/FailOnWarnings", - "/properties/RouteKey", - "/properties/Target", - "/properties/DisableSchemaValidation" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/aws-cognito-userpool.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-cognito-userpool.json new file mode 100644 index 0000000000..be46ed5eb0 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_2/aws-cognito-userpool.json @@ -0,0 +1,502 @@ +{ + "additionalProperties": false, + "definitions": { + "AccountRecoverySetting": { + "additionalProperties": false, + "properties": { + "RecoveryMechanisms": { + "items": { + "$ref": "#/definitions/RecoveryOption" + }, + "type": "array" + } + }, + "type": "object" + }, + "AdminCreateUserConfig": { + "additionalProperties": false, + "properties": { + "AllowAdminCreateUserOnly": { + "type": "boolean" + }, + "InviteMessageTemplate": { + "$ref": "#/definitions/InviteMessageTemplate" + }, + "UnusedAccountValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "AdvancedSecurityAdditionalFlows": { + "additionalProperties": false, + "properties": { + "CustomAuthMode": { + "type": "string" + } + }, + "type": "object" + }, + "CustomEmailSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "CustomSMSSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "DeviceConfiguration": { + "additionalProperties": false, + "properties": { + "ChallengeRequiredOnNewDevice": { + "type": "boolean" + }, + "DeviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + }, + "type": "object" + }, + "EmailConfiguration": { + "additionalProperties": false, + "properties": { + "ConfigurationSet": { + "type": "string" + }, + "EmailSendingAccount": { + "type": "string" + }, + "From": { + "type": "string" + }, + "ReplyToEmailAddress": { + "type": "string" + }, + "SourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "InviteMessageTemplate": { + "additionalProperties": false, + "properties": { + "EmailMessage": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "SMSMessage": { + "type": "string" + } + }, + "type": "object" + }, + "LambdaConfig": { + "additionalProperties": false, + "properties": { + "CreateAuthChallenge": { + "type": "string" + }, + "CustomEmailSender": { + "$ref": "#/definitions/CustomEmailSender" + }, + "CustomMessage": { + "type": "string" + }, + "CustomSMSSender": { + "$ref": "#/definitions/CustomSMSSender" + }, + "DefineAuthChallenge": { + "type": "string" + }, + "KMSKeyID": { + "type": "string" + }, + "PostAuthentication": { + "type": "string" + }, + "PostConfirmation": { + "type": "string" + }, + "PreAuthentication": { + "type": "string" + }, + "PreSignUp": { + "type": "string" + }, + "PreTokenGeneration": { + "type": "string" + }, + "PreTokenGenerationConfig": { + "$ref": "#/definitions/PreTokenGenerationConfig" + }, + "UserMigration": { + "type": "string" + }, + "VerifyAuthChallengeResponse": { + "type": "string" + } + }, + "type": "object" + }, + "NumberAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxValue": { + "type": "string" + }, + "MinValue": { + "type": "string" + } + }, + "type": "object" + }, + "PasswordPolicy": { + "additionalProperties": false, + "properties": { + "MinimumLength": { + "type": "integer" + }, + "PasswordHistorySize": { + "type": "integer" + }, + "RequireLowercase": { + "type": "boolean" + }, + "RequireNumbers": { + "type": "boolean" + }, + "RequireSymbols": { + "type": "boolean" + }, + "RequireUppercase": { + "type": "boolean" + }, + "TemporaryPasswordValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "Policies": { + "additionalProperties": false, + "properties": { + "PasswordPolicy": { + "$ref": "#/definitions/PasswordPolicy" + } + }, + "type": "object" + }, + "PreTokenGenerationConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "RecoveryOption": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Priority": { + "type": "integer" + } + }, + "type": "object" + }, + "SchemaAttribute": { + "additionalProperties": false, + "properties": { + "AttributeDataType": { + "type": "string" + }, + "DeveloperOnlyAttribute": { + "type": "boolean" + }, + "Mutable": { + "type": "boolean" + }, + "Name": { + "type": "string" + }, + "NumberAttributeConstraints": { + "$ref": "#/definitions/NumberAttributeConstraints" + }, + "Required": { + "type": "boolean" + }, + "StringAttributeConstraints": { + "$ref": "#/definitions/StringAttributeConstraints" + } + }, + "type": "object" + }, + "SmsConfiguration": { + "additionalProperties": false, + "properties": { + "ExternalId": { + "type": "string" + }, + "SnsCallerArn": { + "type": "string" + }, + "SnsRegion": { + "type": "string" + } + }, + "type": "object" + }, + "StringAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxLength": { + "type": "string" + }, + "MinLength": { + "type": "string" + } + }, + "type": "object" + }, + "UserAttributeUpdateSettings": { + "additionalProperties": false, + "properties": { + "AttributesRequireVerificationBeforeUpdate": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "AttributesRequireVerificationBeforeUpdate" + ], + "type": "object" + }, + "UserPoolAddOns": { + "additionalProperties": false, + "properties": { + "AdvancedSecurityAdditionalFlows": { + "$ref": "#/definitions/AdvancedSecurityAdditionalFlows" + }, + "AdvancedSecurityMode": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameConfiguration": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + } + }, + "type": "object" + }, + "VerificationMessageTemplate": { + "additionalProperties": false, + "properties": { + "DefaultEmailOption": { + "type": "string" + }, + "EmailMessage": { + "type": "string" + }, + "EmailMessageByLink": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "EmailSubjectByLink": { + "type": "string" + }, + "SmsMessage": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId" + ], + "properties": { + "AccountRecoverySetting": { + "$ref": "#/definitions/AccountRecoverySetting" + }, + "AdminCreateUserConfig": { + "$ref": "#/definitions/AdminCreateUserConfig" + }, + "AliasAttributes": { + "items": { + "enum": [ + "email", + "phone_number", + "preferred_username" + ], + "type": "string" + }, + "type": "array" + }, + "Arn": { + "type": "string" + }, + "AutoVerifiedAttributes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DeletionProtection": { + "type": "string" + }, + "DeviceConfiguration": { + "$ref": "#/definitions/DeviceConfiguration" + }, + "EmailConfiguration": { + "$ref": "#/definitions/EmailConfiguration" + }, + "EmailVerificationMessage": { + "maxLength": 20000, + "minLength": 6, + "type": "string" + }, + "EmailVerificationSubject": { + "maxLength": 140, + "minLength": 1, + "type": "string" + }, + "EnabledMfas": { + "items": { + "type": "string" + }, + "type": "array" + }, + "LambdaConfig": { + "$ref": "#/definitions/LambdaConfig" + }, + "MfaConfiguration": { + "enum": [ + "OFF", + "ON", + "OPTIONAL" + ], + "type": "string" + }, + "Policies": { + "$ref": "#/definitions/Policies" + }, + "ProviderName": { + "type": "string" + }, + "ProviderURL": { + "type": "string" + }, + "Schema": { + "items": { + "$ref": "#/definitions/SchemaAttribute" + }, + "type": "array" + }, + "SmsAuthenticationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "SmsConfiguration": { + "$ref": "#/definitions/SmsConfiguration" + }, + "SmsVerificationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "UserAttributeUpdateSettings": { + "$ref": "#/definitions/UserAttributeUpdateSettings" + }, + "UserPoolAddOns": { + "$ref": "#/definitions/UserPoolAddOns" + }, + "UserPoolId": { + "type": "string" + }, + "UserPoolName": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "UserPoolTags": { + "additionalProperties": false, + "patternProperties": { + "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameAttributes": { + "items": { + "enum": [ + "email", + "phone_number" + ], + "type": "string" + }, + "type": "array" + }, + "UsernameConfiguration": { + "$ref": "#/definitions/UsernameConfiguration" + }, + "VerificationMessageTemplate": { + "$ref": "#/definitions/VerificationMessageTemplate" + } + }, + "propertyTransform": { + "/properties/Schema/*/Name": "'custom:' & '' & Name" + }, + "readOnlyProperties": [ + "/properties/ProviderName", + "/properties/UserPoolId", + "/properties/ProviderURL", + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/UserPoolTags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Cognito::UserPool", + "writeOnlyProperties": [ + "/properties/EnabledMfas" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/aws-route53profiles-profile.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-route53profiles-profile.json new file mode 100644 index 0000000000..123295aef9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_2/aws-route53profiles-profile.json @@ -0,0 +1,76 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "ClientToken": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Id", + "/properties/ClientToken" + ], + "required": [ + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Profiles::Profile", + "writeOnlyProperties": [ + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/aws-route53profiles-profileassociation.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-route53profiles-profileassociation.json new file mode 100644 index 0000000000..b1857370f9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_2/aws-route53profiles-profileassociation.json @@ -0,0 +1,78 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name", + "/properties/ResourceId", + "/properties/ProfileId" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "ProfileId": { + "type": "string" + }, + "ResourceId": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "ResourceId", + "ProfileId", + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Profiles::ProfileAssociation", + "writeOnlyProperties": [ + "/properties/Arn", + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/aws-securityhub-automationrule.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-securityhub-automationrule.json deleted file mode 100644 index 07eef12ca5..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_south_2/aws-securityhub-automationrule.json +++ /dev/null @@ -1,690 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AutomationRulesAction": { - "properties": { - "FindingFieldsUpdate": { - "$ref": "#/definitions/AutomationRulesFindingFieldsUpdate" - }, - "Type": { - "enum": [ - "FINDING_FIELDS_UPDATE" - ], - "type": "string" - } - }, - "required": [ - "Type", - "FindingFieldsUpdate" - ], - "type": "object" - }, - "AutomationRulesFindingFieldsUpdate": { - "properties": { - "Confidence": { - "$ref": "#/definitions/int100" - }, - "Criticality": { - "$ref": "#/definitions/int100" - }, - "Note": { - "$ref": "#/definitions/NoteUpdate", - "type": "object" - }, - "RelatedFindings": { - "items": { - "$ref": "#/definitions/RelatedFinding" - }, - "maxItems": 10, - "minItems": 1, - "type": "array" - }, - "Severity": { - "$ref": "#/definitions/SeverityUpdate", - "type": "object" - }, - "Types": { - "items": { - "pattern": "^([^/]+)(/[^/]+){0,2}$", - "type": "string" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UserDefinedFields": { - "$ref": "#/definitions/map" - }, - "VerificationState": { - "enum": [ - "UNKNOWN", - "TRUE_POSITIVE", - "FALSE_POSITIVE", - "BENIGN_POSITIVE" - ], - "type": "string" - }, - "Workflow": { - "$ref": "#/definitions/WorkflowUpdate", - "type": "object" - } - }, - "type": "object" - }, - "AutomationRulesFindingFilters": { - "additionalProperties": false, - "properties": { - "AwsAccountId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "CompanyName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceAssociatedStandardsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceSecurityControlId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Confidence": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "CreatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Criticality": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Description": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "FirstObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "GeneratorId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Id": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "LastObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteText": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedBy": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RecordState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceDetailsOther": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "ResourcePartition": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceRegion": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceTags": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceType": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SeverityLabel": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SourceUrl": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Title": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Type": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UserDefinedFields": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "VerificationState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "WorkflowStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - } - }, - "type": "object" - }, - "BooleanFilter": { - "additionalProperties": false, - "properties": { - "Value": { - "type": "boolean" - } - }, - "required": [ - "Value" - ], - "type": "object" - }, - "DateFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "DateRange" - ] - }, - { - "allOf": [ - { - "required": [ - "Start" - ] - }, - { - "required": [ - "End" - ] - } - ] - } - ], - "properties": { - "DateRange": { - "$ref": "#/definitions/DateRange" - }, - "End": { - "$ref": "#/definitions/ISO8601DateString" - }, - "Start": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "type": "object" - }, - "DateRange": { - "additionalProperties": false, - "properties": { - "Unit": { - "enum": [ - "DAYS" - ], - "type": "string" - }, - "Value": { - "type": "number" - } - }, - "required": [ - "Unit", - "Value" - ], - "type": "object" - }, - "ISO8601DateString": { - "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$", - "type": "string" - }, - "MapFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "enum": [ - "EQUALS", - "NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Key", - "Value" - ], - "type": "object" - }, - "NonEmptyString": { - "minLength": 1, - "type": "string" - }, - "NoteUpdate": { - "additionalProperties": false, - "properties": { - "Text": { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - "UpdatedBy": { - "$ref": "#/definitions/arnOrId" - } - }, - "required": [ - "Text", - "UpdatedBy" - ], - "type": "object" - }, - "NumberFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "Eq" - ] - }, - { - "anyOf": [ - { - "required": [ - "Gte" - ] - }, - { - "required": [ - "Lte" - ] - } - ] - } - ], - "properties": { - "Eq": { - "type": "number" - }, - "Gte": { - "type": "number" - }, - "Lte": { - "type": "number" - } - }, - "type": "object" - }, - "RelatedFinding": { - "additionalProperties": false, - "properties": { - "Id": { - "$ref": "#/definitions/arnOrId" - }, - "ProductArn": { - "$ref": "#/definitions/arn" - } - }, - "required": [ - "ProductArn", - "Id" - ], - "type": "object" - }, - "SeverityUpdate": { - "additionalProperties": false, - "properties": { - "Label": { - "enum": [ - "INFORMATIONAL", - "LOW", - "MEDIUM", - "HIGH", - "CRITICAL" - ], - "type": "string" - }, - "Normalized": { - "$ref": "#/definitions/int100" - }, - "Product": { - "type": "number" - } - }, - "type": "object" - }, - "StringFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "$ref": "#/definitions/StringFilterComparison" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Value" - ], - "type": "object" - }, - "StringFilterComparison": { - "enum": [ - "EQUALS", - "PREFIX", - "NOT_EQUALS", - "PREFIX_NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - "^[a-zA-Z0-9]{1,128}$": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "WorkflowUpdate": { - "additionalProperties": false, - "properties": { - "Status": { - "enum": [ - "NEW", - "NOTIFIED", - "RESOLVED", - "SUPPRESSED" - ], - "type": "string" - } - }, - "required": [ - "Status" - ], - "type": "object" - }, - "arn": { - "maxLength": 2048, - "minLength": 12, - "pattern": "^arn:(aws|aws-cn|aws-us-gov|aws-iso-?[a-z]{0,2}):[A-Za-z0-9]{1,63}:[a-z]+-([a-z]{1,10}-)?[a-z]+-[0-9]+:([0-9]{12})?:.+$", - "type": "string" - }, - "arnOrId": { - "anyOf": [ - { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - { - "$ref": "#/definitions/arn" - } - ] - }, - "int100": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "map": { - "additionalProperties": false, - "maxProperties": 50, - "minProperties": 1, - "patternProperties": { - "^[-_+=.:/@\\w\\s]{1,128}$": { - "maxLength": 1024, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "timestamp": { - "format": "date-time", - "pattern": "(\\d\\d\\d\\d)-[0-1](\\d)-[0-3](\\d)[Tt](?:[0-2](\\d):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?(?:[Zz]|[+-](\\d\\d)(?::?(\\d\\d))?)$", - "type": "string" - } - }, - "primaryIdentifier": [ - "/properties/RuleArn" - ], - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/AutomationRulesAction" - }, - "maxItems": 1, - "minItems": 1, - "type": "array" - }, - "CreatedAt": { - "$ref": "#/definitions/ISO8601DateString" - }, - "CreatedBy": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "Criteria": { - "$ref": "#/definitions/AutomationRulesFindingFilters" - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "IsTerminal": { - "type": "boolean" - }, - "RuleArn": { - "pattern": "arn:aws\\S*:securityhub:\\S*", - "type": "string" - }, - "RuleName": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "RuleOrder": { - "maximum": 1000, - "minimum": 1, - "type": "integer" - }, - "RuleStatus": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "Tags": { - "$ref": "#/definitions/Tags" - }, - "UpdatedAt": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "readOnlyProperties": [ - "/properties/RuleArn", - "/properties/CreatedAt", - "/properties/UpdatedAt", - "/properties/CreatedBy" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecurityHub::AutomationRule" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py b/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py index a0d334046a..df267e8afb 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py @@ -1352,7 +1352,6 @@ "aws-athena-namedquery.json", "aws-athena-preparedstatement.json", "aws-athena-workgroup.json", - "aws-auditmanager-assessment.json", "aws-autoscaling-autoscalinggroup.json", "aws-autoscaling-launchconfiguration.json", "aws-autoscaling-lifecyclehook.json", @@ -1470,7 +1469,6 @@ "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", "aws-cognito-logdeliveryconfiguration.json", - "aws-cognito-userpool.json", "aws-cognito-userpoolclient.json", "aws-cognito-userpooldomain.json", "aws-cognito-userpoolgroup.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-auditmanager-assessment.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-auditmanager-assessment.json new file mode 100644 index 0000000000..9b7ecb9d39 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-auditmanager-assessment.json @@ -0,0 +1,311 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FrameworkId", + "/properties/AwsAccount" + ], + "definitions": { + "AWSAccount": { + "additionalProperties": false, + "properties": { + "EmailAddress": { + "$ref": "#/definitions/EmailAddress" + }, + "Id": { + "$ref": "#/definitions/AccountId" + }, + "Name": { + "$ref": "#/definitions/AccountName" + } + }, + "type": "object" + }, + "AWSService": { + "additionalProperties": false, + "properties": { + "ServiceName": { + "$ref": "#/definitions/AWSServiceName" + } + }, + "type": "object" + }, + "AWSServiceName": { + "type": "string" + }, + "AccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^[0-9]{12}$", + "type": "string" + }, + "AccountName": { + "maxLength": 50, + "minLength": 1, + "pattern": "^[\\u0020-\\u007E]+$", + "type": "string" + }, + "AssessmentArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:.*:auditmanager:.*", + "type": "string" + }, + "AssessmentDescription": { + "type": "string" + }, + "AssessmentName": { + "maxLength": 127, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_\\.]+$", + "type": "string" + }, + "AssessmentReportDestinationType": { + "enum": [ + "S3" + ], + "type": "string" + }, + "AssessmentReportsDestination": { + "additionalProperties": false, + "properties": { + "Destination": { + "$ref": "#/definitions/S3Url" + }, + "DestinationType": { + "$ref": "#/definitions/AssessmentReportDestinationType" + } + }, + "type": "object" + }, + "AssessmentStatus": { + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "type": "string" + }, + "ControlSetId": { + "maxLength": 300, + "minLength": 1, + "pattern": "^[\\w\\W\\s\\S]*$", + "type": "string" + }, + "CreatedBy": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:.*:*:.*", + "type": "string" + }, + "Delegation": { + "additionalProperties": false, + "properties": { + "AssessmentId": { + "$ref": "#/definitions/UUID" + }, + "AssessmentName": { + "$ref": "#/definitions/AssessmentName" + }, + "Comment": { + "$ref": "#/definitions/DelegationComment" + }, + "ControlSetId": { + "$ref": "#/definitions/ControlSetId" + }, + "CreatedBy": { + "$ref": "#/definitions/CreatedBy" + }, + "CreationTime": { + "$ref": "#/definitions/Timestamp" + }, + "Id": { + "$ref": "#/definitions/UUID" + }, + "LastUpdated": { + "$ref": "#/definitions/Timestamp" + }, + "RoleArn": { + "$ref": "#/definitions/IamArn" + }, + "RoleType": { + "$ref": "#/definitions/RoleType" + }, + "Status": { + "$ref": "#/definitions/DelegationStatus" + } + }, + "type": "object" + }, + "DelegationComment": { + "maxLength": 350, + "pattern": "^[\\w\\W\\s\\S]*$", + "type": "string" + }, + "DelegationStatus": { + "enum": [ + "IN_PROGRESS", + "UNDER_REVIEW", + "COMPLETE" + ], + "type": "string" + }, + "EmailAddress": { + "maxLength": 320, + "minLength": 1, + "pattern": "^.*@.*$", + "type": "string" + }, + "FrameworkId": { + "maxLength": 36, + "minLength": 32, + "pattern": "^([a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}|.*\\S.*)$", + "type": "string" + }, + "IamArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:.*:iam:.*", + "type": "string" + }, + "Role": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "$ref": "#/definitions/IamArn" + }, + "RoleType": { + "$ref": "#/definitions/RoleType" + } + }, + "type": "object" + }, + "RoleType": { + "enum": [ + "PROCESS_OWNER", + "RESOURCE_OWNER" + ], + "type": "string" + }, + "S3Url": { + "type": "string" + }, + "Scope": { + "additionalProperties": false, + "properties": { + "AwsAccounts": { + "items": { + "$ref": "#/definitions/AWSAccount" + }, + "type": "array" + }, + "AwsServices": { + "items": { + "$ref": "#/definitions/AWSService" + }, + "type": "array" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "Timestamp": { + "type": "number" + }, + "UUID": { + "maxLength": 36, + "minLength": 36, + "pattern": "^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/AssessmentId" + ], + "properties": { + "Arn": { + "$ref": "#/definitions/AssessmentArn" + }, + "AssessmentId": { + "$ref": "#/definitions/UUID" + }, + "AssessmentReportsDestination": { + "$ref": "#/definitions/AssessmentReportsDestination" + }, + "AwsAccount": { + "$ref": "#/definitions/AWSAccount" + }, + "CreationTime": { + "$ref": "#/definitions/Timestamp" + }, + "Delegations": { + "items": { + "$ref": "#/definitions/Delegation" + }, + "type": "array" + }, + "Description": { + "$ref": "#/definitions/AssessmentDescription" + }, + "FrameworkId": { + "$ref": "#/definitions/FrameworkId" + }, + "Name": { + "$ref": "#/definitions/AssessmentName" + }, + "Roles": { + "items": { + "$ref": "#/definitions/Role" + }, + "type": "array" + }, + "Scope": { + "$ref": "#/definitions/Scope" + }, + "Status": { + "$ref": "#/definitions/AssessmentStatus" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/AssessmentId", + "/properties/Arn", + "/properties/CreationTime" + ], + "required": [], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::AuditManager::Assessment", + "writeOnlyProperties": [ + "/properties/Name", + "/properties/Description" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-cognito-userpool.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-cognito-userpool.json new file mode 100644 index 0000000000..be46ed5eb0 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-cognito-userpool.json @@ -0,0 +1,502 @@ +{ + "additionalProperties": false, + "definitions": { + "AccountRecoverySetting": { + "additionalProperties": false, + "properties": { + "RecoveryMechanisms": { + "items": { + "$ref": "#/definitions/RecoveryOption" + }, + "type": "array" + } + }, + "type": "object" + }, + "AdminCreateUserConfig": { + "additionalProperties": false, + "properties": { + "AllowAdminCreateUserOnly": { + "type": "boolean" + }, + "InviteMessageTemplate": { + "$ref": "#/definitions/InviteMessageTemplate" + }, + "UnusedAccountValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "AdvancedSecurityAdditionalFlows": { + "additionalProperties": false, + "properties": { + "CustomAuthMode": { + "type": "string" + } + }, + "type": "object" + }, + "CustomEmailSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "CustomSMSSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "DeviceConfiguration": { + "additionalProperties": false, + "properties": { + "ChallengeRequiredOnNewDevice": { + "type": "boolean" + }, + "DeviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + }, + "type": "object" + }, + "EmailConfiguration": { + "additionalProperties": false, + "properties": { + "ConfigurationSet": { + "type": "string" + }, + "EmailSendingAccount": { + "type": "string" + }, + "From": { + "type": "string" + }, + "ReplyToEmailAddress": { + "type": "string" + }, + "SourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "InviteMessageTemplate": { + "additionalProperties": false, + "properties": { + "EmailMessage": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "SMSMessage": { + "type": "string" + } + }, + "type": "object" + }, + "LambdaConfig": { + "additionalProperties": false, + "properties": { + "CreateAuthChallenge": { + "type": "string" + }, + "CustomEmailSender": { + "$ref": "#/definitions/CustomEmailSender" + }, + "CustomMessage": { + "type": "string" + }, + "CustomSMSSender": { + "$ref": "#/definitions/CustomSMSSender" + }, + "DefineAuthChallenge": { + "type": "string" + }, + "KMSKeyID": { + "type": "string" + }, + "PostAuthentication": { + "type": "string" + }, + "PostConfirmation": { + "type": "string" + }, + "PreAuthentication": { + "type": "string" + }, + "PreSignUp": { + "type": "string" + }, + "PreTokenGeneration": { + "type": "string" + }, + "PreTokenGenerationConfig": { + "$ref": "#/definitions/PreTokenGenerationConfig" + }, + "UserMigration": { + "type": "string" + }, + "VerifyAuthChallengeResponse": { + "type": "string" + } + }, + "type": "object" + }, + "NumberAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxValue": { + "type": "string" + }, + "MinValue": { + "type": "string" + } + }, + "type": "object" + }, + "PasswordPolicy": { + "additionalProperties": false, + "properties": { + "MinimumLength": { + "type": "integer" + }, + "PasswordHistorySize": { + "type": "integer" + }, + "RequireLowercase": { + "type": "boolean" + }, + "RequireNumbers": { + "type": "boolean" + }, + "RequireSymbols": { + "type": "boolean" + }, + "RequireUppercase": { + "type": "boolean" + }, + "TemporaryPasswordValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "Policies": { + "additionalProperties": false, + "properties": { + "PasswordPolicy": { + "$ref": "#/definitions/PasswordPolicy" + } + }, + "type": "object" + }, + "PreTokenGenerationConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "RecoveryOption": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Priority": { + "type": "integer" + } + }, + "type": "object" + }, + "SchemaAttribute": { + "additionalProperties": false, + "properties": { + "AttributeDataType": { + "type": "string" + }, + "DeveloperOnlyAttribute": { + "type": "boolean" + }, + "Mutable": { + "type": "boolean" + }, + "Name": { + "type": "string" + }, + "NumberAttributeConstraints": { + "$ref": "#/definitions/NumberAttributeConstraints" + }, + "Required": { + "type": "boolean" + }, + "StringAttributeConstraints": { + "$ref": "#/definitions/StringAttributeConstraints" + } + }, + "type": "object" + }, + "SmsConfiguration": { + "additionalProperties": false, + "properties": { + "ExternalId": { + "type": "string" + }, + "SnsCallerArn": { + "type": "string" + }, + "SnsRegion": { + "type": "string" + } + }, + "type": "object" + }, + "StringAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxLength": { + "type": "string" + }, + "MinLength": { + "type": "string" + } + }, + "type": "object" + }, + "UserAttributeUpdateSettings": { + "additionalProperties": false, + "properties": { + "AttributesRequireVerificationBeforeUpdate": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "AttributesRequireVerificationBeforeUpdate" + ], + "type": "object" + }, + "UserPoolAddOns": { + "additionalProperties": false, + "properties": { + "AdvancedSecurityAdditionalFlows": { + "$ref": "#/definitions/AdvancedSecurityAdditionalFlows" + }, + "AdvancedSecurityMode": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameConfiguration": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + } + }, + "type": "object" + }, + "VerificationMessageTemplate": { + "additionalProperties": false, + "properties": { + "DefaultEmailOption": { + "type": "string" + }, + "EmailMessage": { + "type": "string" + }, + "EmailMessageByLink": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "EmailSubjectByLink": { + "type": "string" + }, + "SmsMessage": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId" + ], + "properties": { + "AccountRecoverySetting": { + "$ref": "#/definitions/AccountRecoverySetting" + }, + "AdminCreateUserConfig": { + "$ref": "#/definitions/AdminCreateUserConfig" + }, + "AliasAttributes": { + "items": { + "enum": [ + "email", + "phone_number", + "preferred_username" + ], + "type": "string" + }, + "type": "array" + }, + "Arn": { + "type": "string" + }, + "AutoVerifiedAttributes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DeletionProtection": { + "type": "string" + }, + "DeviceConfiguration": { + "$ref": "#/definitions/DeviceConfiguration" + }, + "EmailConfiguration": { + "$ref": "#/definitions/EmailConfiguration" + }, + "EmailVerificationMessage": { + "maxLength": 20000, + "minLength": 6, + "type": "string" + }, + "EmailVerificationSubject": { + "maxLength": 140, + "minLength": 1, + "type": "string" + }, + "EnabledMfas": { + "items": { + "type": "string" + }, + "type": "array" + }, + "LambdaConfig": { + "$ref": "#/definitions/LambdaConfig" + }, + "MfaConfiguration": { + "enum": [ + "OFF", + "ON", + "OPTIONAL" + ], + "type": "string" + }, + "Policies": { + "$ref": "#/definitions/Policies" + }, + "ProviderName": { + "type": "string" + }, + "ProviderURL": { + "type": "string" + }, + "Schema": { + "items": { + "$ref": "#/definitions/SchemaAttribute" + }, + "type": "array" + }, + "SmsAuthenticationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "SmsConfiguration": { + "$ref": "#/definitions/SmsConfiguration" + }, + "SmsVerificationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "UserAttributeUpdateSettings": { + "$ref": "#/definitions/UserAttributeUpdateSettings" + }, + "UserPoolAddOns": { + "$ref": "#/definitions/UserPoolAddOns" + }, + "UserPoolId": { + "type": "string" + }, + "UserPoolName": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "UserPoolTags": { + "additionalProperties": false, + "patternProperties": { + "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameAttributes": { + "items": { + "enum": [ + "email", + "phone_number" + ], + "type": "string" + }, + "type": "array" + }, + "UsernameConfiguration": { + "$ref": "#/definitions/UsernameConfiguration" + }, + "VerificationMessageTemplate": { + "$ref": "#/definitions/VerificationMessageTemplate" + } + }, + "propertyTransform": { + "/properties/Schema/*/Name": "'custom:' & '' & Name" + }, + "readOnlyProperties": [ + "/properties/ProviderName", + "/properties/UserPoolId", + "/properties/ProviderURL", + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/UserPoolTags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Cognito::UserPool", + "writeOnlyProperties": [ + "/properties/EnabledMfas" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py b/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py index 9f56642d9a..53db7daa10 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py @@ -724,8 +724,8 @@ "aws-acmpca-certificateauthorityactivation.json", "aws-acmpca-permission.json", "aws-amazonmq-broker.json", - "aws-amazonmq-configuration.json", "aws-apigateway-vpclink.json", + "aws-apigatewayv2-api.json", "aws-apigatewayv2-apimapping.json", "aws-apigatewayv2-authorizer.json", "aws-apigatewayv2-deployment.json", @@ -837,7 +837,6 @@ "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", "aws-cognito-logdeliveryconfiguration.json", - "aws-cognito-userpool.json", "aws-cognito-userpoolclient.json", "aws-cognito-userpooldomain.json", "aws-cognito-userpoolgroup.json", @@ -1038,6 +1037,7 @@ "aws-glue-connection.json", "aws-glue-crawler.json", "aws-glue-customentitytype.json", + "aws-glue-database.json", "aws-glue-datacatalogencryptionsettings.json", "aws-glue-dataqualityruleset.json", "aws-glue-devendpoint.json", @@ -1218,8 +1218,6 @@ "aws-route53-keysigningkey.json", "aws-route53-recordset.json", "aws-route53-recordsetgroup.json", - "aws-route53profiles-profile.json", - "aws-route53profiles-profileassociation.json", "aws-route53profiles-profileresourceassociation.json", "aws-route53resolver-firewalldomainlist.json", "aws-route53resolver-firewallrulegroup.json", @@ -1272,6 +1270,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-securityhub-automationrule.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-hub.json", "aws-securityhub-insight.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-amazonmq-configuration.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-amazonmq-configuration.json new file mode 100644 index 0000000000..81cc7369f7 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-amazonmq-configuration.json @@ -0,0 +1,77 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/EngineType", + "/properties/Name", + "/properties/AuthenticationStrategy", + "/properties/EngineVersion" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AuthenticationStrategy": { + "type": "string" + }, + "Data": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "EngineType": { + "type": "string" + }, + "EngineVersion": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Revision": { + "type": "integer" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Revision", + "/properties/Id", + "/properties/Arn" + ], + "required": [ + "EngineType", + "Data", + "Name" + ], + "typeName": "AWS::AmazonMQ::Configuration" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigatewayv2-api.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigatewayv2-api.json deleted file mode 100644 index 85210f6a4e..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigatewayv2-api.json +++ /dev/null @@ -1,165 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ProtocolType" - ], - "definitions": { - "BodyS3Location": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" - }, - "Etag": { - "type": "string" - }, - "Key": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "type": "object" - }, - "Cors": { - "additionalProperties": false, - "properties": { - "AllowCredentials": { - "type": "boolean" - }, - "AllowHeaders": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "AllowMethods": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "AllowOrigins": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "ExposeHeaders": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "MaxAge": { - "type": "integer" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/ApiId" - ], - "properties": { - "ApiEndpoint": { - "type": "string" - }, - "ApiId": { - "type": "string" - }, - "ApiKeySelectionExpression": { - "type": "string" - }, - "BasePath": { - "type": "string" - }, - "Body": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "BodyS3Location": { - "$ref": "#/definitions/BodyS3Location" - }, - "CorsConfiguration": { - "$ref": "#/definitions/Cors" - }, - "CredentialsArn": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "DisableExecuteApiEndpoint": { - "type": "boolean" - }, - "DisableSchemaValidation": { - "type": "boolean" - }, - "FailOnWarnings": { - "type": "boolean" - }, - "Name": { - "type": "string" - }, - "ProtocolType": { - "type": "string" - }, - "RouteKey": { - "type": "string" - }, - "RouteSelectionExpression": { - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - ".*": { - "type": "string" - } - }, - "type": "object" - }, - "Target": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/ApiId", - "/properties/ApiEndpoint" - ], - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::ApiGatewayV2::Api", - "writeOnlyProperties": [ - "/properties/ApiKeySelectionExpression", - "/properties/BasePath", - "/properties/Body", - "/properties/BodyS3Location", - "/properties/BodyS3Location/Etag", - "/properties/BodyS3Location/Bucket", - "/properties/BodyS3Location/Version", - "/properties/BodyS3Location/Key", - "/properties/CredentialsArn", - "/properties/FailOnWarnings", - "/properties/RouteKey", - "/properties/Target", - "/properties/DisableSchemaValidation" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-cognito-userpool.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-cognito-userpool.json new file mode 100644 index 0000000000..be46ed5eb0 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-cognito-userpool.json @@ -0,0 +1,502 @@ +{ + "additionalProperties": false, + "definitions": { + "AccountRecoverySetting": { + "additionalProperties": false, + "properties": { + "RecoveryMechanisms": { + "items": { + "$ref": "#/definitions/RecoveryOption" + }, + "type": "array" + } + }, + "type": "object" + }, + "AdminCreateUserConfig": { + "additionalProperties": false, + "properties": { + "AllowAdminCreateUserOnly": { + "type": "boolean" + }, + "InviteMessageTemplate": { + "$ref": "#/definitions/InviteMessageTemplate" + }, + "UnusedAccountValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "AdvancedSecurityAdditionalFlows": { + "additionalProperties": false, + "properties": { + "CustomAuthMode": { + "type": "string" + } + }, + "type": "object" + }, + "CustomEmailSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "CustomSMSSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "DeviceConfiguration": { + "additionalProperties": false, + "properties": { + "ChallengeRequiredOnNewDevice": { + "type": "boolean" + }, + "DeviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + }, + "type": "object" + }, + "EmailConfiguration": { + "additionalProperties": false, + "properties": { + "ConfigurationSet": { + "type": "string" + }, + "EmailSendingAccount": { + "type": "string" + }, + "From": { + "type": "string" + }, + "ReplyToEmailAddress": { + "type": "string" + }, + "SourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "InviteMessageTemplate": { + "additionalProperties": false, + "properties": { + "EmailMessage": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "SMSMessage": { + "type": "string" + } + }, + "type": "object" + }, + "LambdaConfig": { + "additionalProperties": false, + "properties": { + "CreateAuthChallenge": { + "type": "string" + }, + "CustomEmailSender": { + "$ref": "#/definitions/CustomEmailSender" + }, + "CustomMessage": { + "type": "string" + }, + "CustomSMSSender": { + "$ref": "#/definitions/CustomSMSSender" + }, + "DefineAuthChallenge": { + "type": "string" + }, + "KMSKeyID": { + "type": "string" + }, + "PostAuthentication": { + "type": "string" + }, + "PostConfirmation": { + "type": "string" + }, + "PreAuthentication": { + "type": "string" + }, + "PreSignUp": { + "type": "string" + }, + "PreTokenGeneration": { + "type": "string" + }, + "PreTokenGenerationConfig": { + "$ref": "#/definitions/PreTokenGenerationConfig" + }, + "UserMigration": { + "type": "string" + }, + "VerifyAuthChallengeResponse": { + "type": "string" + } + }, + "type": "object" + }, + "NumberAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxValue": { + "type": "string" + }, + "MinValue": { + "type": "string" + } + }, + "type": "object" + }, + "PasswordPolicy": { + "additionalProperties": false, + "properties": { + "MinimumLength": { + "type": "integer" + }, + "PasswordHistorySize": { + "type": "integer" + }, + "RequireLowercase": { + "type": "boolean" + }, + "RequireNumbers": { + "type": "boolean" + }, + "RequireSymbols": { + "type": "boolean" + }, + "RequireUppercase": { + "type": "boolean" + }, + "TemporaryPasswordValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "Policies": { + "additionalProperties": false, + "properties": { + "PasswordPolicy": { + "$ref": "#/definitions/PasswordPolicy" + } + }, + "type": "object" + }, + "PreTokenGenerationConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "RecoveryOption": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Priority": { + "type": "integer" + } + }, + "type": "object" + }, + "SchemaAttribute": { + "additionalProperties": false, + "properties": { + "AttributeDataType": { + "type": "string" + }, + "DeveloperOnlyAttribute": { + "type": "boolean" + }, + "Mutable": { + "type": "boolean" + }, + "Name": { + "type": "string" + }, + "NumberAttributeConstraints": { + "$ref": "#/definitions/NumberAttributeConstraints" + }, + "Required": { + "type": "boolean" + }, + "StringAttributeConstraints": { + "$ref": "#/definitions/StringAttributeConstraints" + } + }, + "type": "object" + }, + "SmsConfiguration": { + "additionalProperties": false, + "properties": { + "ExternalId": { + "type": "string" + }, + "SnsCallerArn": { + "type": "string" + }, + "SnsRegion": { + "type": "string" + } + }, + "type": "object" + }, + "StringAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxLength": { + "type": "string" + }, + "MinLength": { + "type": "string" + } + }, + "type": "object" + }, + "UserAttributeUpdateSettings": { + "additionalProperties": false, + "properties": { + "AttributesRequireVerificationBeforeUpdate": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "AttributesRequireVerificationBeforeUpdate" + ], + "type": "object" + }, + "UserPoolAddOns": { + "additionalProperties": false, + "properties": { + "AdvancedSecurityAdditionalFlows": { + "$ref": "#/definitions/AdvancedSecurityAdditionalFlows" + }, + "AdvancedSecurityMode": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameConfiguration": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + } + }, + "type": "object" + }, + "VerificationMessageTemplate": { + "additionalProperties": false, + "properties": { + "DefaultEmailOption": { + "type": "string" + }, + "EmailMessage": { + "type": "string" + }, + "EmailMessageByLink": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "EmailSubjectByLink": { + "type": "string" + }, + "SmsMessage": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId" + ], + "properties": { + "AccountRecoverySetting": { + "$ref": "#/definitions/AccountRecoverySetting" + }, + "AdminCreateUserConfig": { + "$ref": "#/definitions/AdminCreateUserConfig" + }, + "AliasAttributes": { + "items": { + "enum": [ + "email", + "phone_number", + "preferred_username" + ], + "type": "string" + }, + "type": "array" + }, + "Arn": { + "type": "string" + }, + "AutoVerifiedAttributes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DeletionProtection": { + "type": "string" + }, + "DeviceConfiguration": { + "$ref": "#/definitions/DeviceConfiguration" + }, + "EmailConfiguration": { + "$ref": "#/definitions/EmailConfiguration" + }, + "EmailVerificationMessage": { + "maxLength": 20000, + "minLength": 6, + "type": "string" + }, + "EmailVerificationSubject": { + "maxLength": 140, + "minLength": 1, + "type": "string" + }, + "EnabledMfas": { + "items": { + "type": "string" + }, + "type": "array" + }, + "LambdaConfig": { + "$ref": "#/definitions/LambdaConfig" + }, + "MfaConfiguration": { + "enum": [ + "OFF", + "ON", + "OPTIONAL" + ], + "type": "string" + }, + "Policies": { + "$ref": "#/definitions/Policies" + }, + "ProviderName": { + "type": "string" + }, + "ProviderURL": { + "type": "string" + }, + "Schema": { + "items": { + "$ref": "#/definitions/SchemaAttribute" + }, + "type": "array" + }, + "SmsAuthenticationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "SmsConfiguration": { + "$ref": "#/definitions/SmsConfiguration" + }, + "SmsVerificationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "UserAttributeUpdateSettings": { + "$ref": "#/definitions/UserAttributeUpdateSettings" + }, + "UserPoolAddOns": { + "$ref": "#/definitions/UserPoolAddOns" + }, + "UserPoolId": { + "type": "string" + }, + "UserPoolName": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "UserPoolTags": { + "additionalProperties": false, + "patternProperties": { + "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameAttributes": { + "items": { + "enum": [ + "email", + "phone_number" + ], + "type": "string" + }, + "type": "array" + }, + "UsernameConfiguration": { + "$ref": "#/definitions/UsernameConfiguration" + }, + "VerificationMessageTemplate": { + "$ref": "#/definitions/VerificationMessageTemplate" + } + }, + "propertyTransform": { + "/properties/Schema/*/Name": "'custom:' & '' & Name" + }, + "readOnlyProperties": [ + "/properties/ProviderName", + "/properties/UserPoolId", + "/properties/ProviderURL", + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/UserPoolTags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Cognito::UserPool", + "writeOnlyProperties": [ + "/properties/EnabledMfas" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-glue-database.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-glue-database.json deleted file mode 100644 index 6e618ae270..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-glue-database.json +++ /dev/null @@ -1,117 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/CatalogId" - ], - "definitions": { - "DataLakePrincipal": { - "additionalProperties": false, - "properties": { - "DataLakePrincipalIdentifier": { - "type": "string" - } - }, - "type": "object" - }, - "DatabaseIdentifier": { - "additionalProperties": false, - "properties": { - "CatalogId": { - "type": "string" - }, - "DatabaseName": { - "type": "string" - }, - "Region": { - "type": "string" - } - }, - "type": "object" - }, - "DatabaseInput": { - "additionalProperties": false, - "properties": { - "CreateTableDefaultPermissions": { - "items": { - "$ref": "#/definitions/PrincipalPrivileges" - }, - "type": "array", - "uniqueItems": false - }, - "Description": { - "type": "string" - }, - "FederatedDatabase": { - "$ref": "#/definitions/FederatedDatabase" - }, - "LocationUri": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "Parameters": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "TargetDatabase": { - "$ref": "#/definitions/DatabaseIdentifier" - } - }, - "type": "object" - }, - "FederatedDatabase": { - "additionalProperties": false, - "properties": { - "ConnectionName": { - "type": "string" - }, - "Identifier": { - "type": "string" - } - }, - "type": "object" - }, - "PrincipalPrivileges": { - "additionalProperties": false, - "properties": { - "Permissions": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "Principal": { - "$ref": "#/definitions/DataLakePrincipal" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "CatalogId": { - "type": "string" - }, - "DatabaseInput": { - "$ref": "#/definitions/DatabaseInput" - }, - "Id": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "DatabaseInput", - "CatalogId" - ], - "typeName": "AWS::Glue::Database" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-route53profiles-profile.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-route53profiles-profile.json new file mode 100644 index 0000000000..123295aef9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-route53profiles-profile.json @@ -0,0 +1,76 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "ClientToken": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Id", + "/properties/ClientToken" + ], + "required": [ + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Profiles::Profile", + "writeOnlyProperties": [ + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-route53profiles-profileassociation.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-route53profiles-profileassociation.json new file mode 100644 index 0000000000..b1857370f9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-route53profiles-profileassociation.json @@ -0,0 +1,78 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name", + "/properties/ResourceId", + "/properties/ProfileId" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "ProfileId": { + "type": "string" + }, + "ResourceId": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "ResourceId", + "ProfileId", + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Profiles::ProfileAssociation", + "writeOnlyProperties": [ + "/properties/Arn", + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-securityhub-automationrule.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-securityhub-automationrule.json deleted file mode 100644 index 07eef12ca5..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-securityhub-automationrule.json +++ /dev/null @@ -1,690 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AutomationRulesAction": { - "properties": { - "FindingFieldsUpdate": { - "$ref": "#/definitions/AutomationRulesFindingFieldsUpdate" - }, - "Type": { - "enum": [ - "FINDING_FIELDS_UPDATE" - ], - "type": "string" - } - }, - "required": [ - "Type", - "FindingFieldsUpdate" - ], - "type": "object" - }, - "AutomationRulesFindingFieldsUpdate": { - "properties": { - "Confidence": { - "$ref": "#/definitions/int100" - }, - "Criticality": { - "$ref": "#/definitions/int100" - }, - "Note": { - "$ref": "#/definitions/NoteUpdate", - "type": "object" - }, - "RelatedFindings": { - "items": { - "$ref": "#/definitions/RelatedFinding" - }, - "maxItems": 10, - "minItems": 1, - "type": "array" - }, - "Severity": { - "$ref": "#/definitions/SeverityUpdate", - "type": "object" - }, - "Types": { - "items": { - "pattern": "^([^/]+)(/[^/]+){0,2}$", - "type": "string" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UserDefinedFields": { - "$ref": "#/definitions/map" - }, - "VerificationState": { - "enum": [ - "UNKNOWN", - "TRUE_POSITIVE", - "FALSE_POSITIVE", - "BENIGN_POSITIVE" - ], - "type": "string" - }, - "Workflow": { - "$ref": "#/definitions/WorkflowUpdate", - "type": "object" - } - }, - "type": "object" - }, - "AutomationRulesFindingFilters": { - "additionalProperties": false, - "properties": { - "AwsAccountId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "CompanyName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceAssociatedStandardsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceSecurityControlId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Confidence": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "CreatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Criticality": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Description": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "FirstObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "GeneratorId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Id": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "LastObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteText": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedBy": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RecordState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceDetailsOther": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "ResourcePartition": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceRegion": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceTags": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceType": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SeverityLabel": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SourceUrl": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Title": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Type": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UserDefinedFields": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "VerificationState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "WorkflowStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - } - }, - "type": "object" - }, - "BooleanFilter": { - "additionalProperties": false, - "properties": { - "Value": { - "type": "boolean" - } - }, - "required": [ - "Value" - ], - "type": "object" - }, - "DateFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "DateRange" - ] - }, - { - "allOf": [ - { - "required": [ - "Start" - ] - }, - { - "required": [ - "End" - ] - } - ] - } - ], - "properties": { - "DateRange": { - "$ref": "#/definitions/DateRange" - }, - "End": { - "$ref": "#/definitions/ISO8601DateString" - }, - "Start": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "type": "object" - }, - "DateRange": { - "additionalProperties": false, - "properties": { - "Unit": { - "enum": [ - "DAYS" - ], - "type": "string" - }, - "Value": { - "type": "number" - } - }, - "required": [ - "Unit", - "Value" - ], - "type": "object" - }, - "ISO8601DateString": { - "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$", - "type": "string" - }, - "MapFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "enum": [ - "EQUALS", - "NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Key", - "Value" - ], - "type": "object" - }, - "NonEmptyString": { - "minLength": 1, - "type": "string" - }, - "NoteUpdate": { - "additionalProperties": false, - "properties": { - "Text": { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - "UpdatedBy": { - "$ref": "#/definitions/arnOrId" - } - }, - "required": [ - "Text", - "UpdatedBy" - ], - "type": "object" - }, - "NumberFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "Eq" - ] - }, - { - "anyOf": [ - { - "required": [ - "Gte" - ] - }, - { - "required": [ - "Lte" - ] - } - ] - } - ], - "properties": { - "Eq": { - "type": "number" - }, - "Gte": { - "type": "number" - }, - "Lte": { - "type": "number" - } - }, - "type": "object" - }, - "RelatedFinding": { - "additionalProperties": false, - "properties": { - "Id": { - "$ref": "#/definitions/arnOrId" - }, - "ProductArn": { - "$ref": "#/definitions/arn" - } - }, - "required": [ - "ProductArn", - "Id" - ], - "type": "object" - }, - "SeverityUpdate": { - "additionalProperties": false, - "properties": { - "Label": { - "enum": [ - "INFORMATIONAL", - "LOW", - "MEDIUM", - "HIGH", - "CRITICAL" - ], - "type": "string" - }, - "Normalized": { - "$ref": "#/definitions/int100" - }, - "Product": { - "type": "number" - } - }, - "type": "object" - }, - "StringFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "$ref": "#/definitions/StringFilterComparison" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Value" - ], - "type": "object" - }, - "StringFilterComparison": { - "enum": [ - "EQUALS", - "PREFIX", - "NOT_EQUALS", - "PREFIX_NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - "^[a-zA-Z0-9]{1,128}$": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "WorkflowUpdate": { - "additionalProperties": false, - "properties": { - "Status": { - "enum": [ - "NEW", - "NOTIFIED", - "RESOLVED", - "SUPPRESSED" - ], - "type": "string" - } - }, - "required": [ - "Status" - ], - "type": "object" - }, - "arn": { - "maxLength": 2048, - "minLength": 12, - "pattern": "^arn:(aws|aws-cn|aws-us-gov|aws-iso-?[a-z]{0,2}):[A-Za-z0-9]{1,63}:[a-z]+-([a-z]{1,10}-)?[a-z]+-[0-9]+:([0-9]{12})?:.+$", - "type": "string" - }, - "arnOrId": { - "anyOf": [ - { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - { - "$ref": "#/definitions/arn" - } - ] - }, - "int100": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "map": { - "additionalProperties": false, - "maxProperties": 50, - "minProperties": 1, - "patternProperties": { - "^[-_+=.:/@\\w\\s]{1,128}$": { - "maxLength": 1024, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "timestamp": { - "format": "date-time", - "pattern": "(\\d\\d\\d\\d)-[0-1](\\d)-[0-3](\\d)[Tt](?:[0-2](\\d):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?(?:[Zz]|[+-](\\d\\d)(?::?(\\d\\d))?)$", - "type": "string" - } - }, - "primaryIdentifier": [ - "/properties/RuleArn" - ], - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/AutomationRulesAction" - }, - "maxItems": 1, - "minItems": 1, - "type": "array" - }, - "CreatedAt": { - "$ref": "#/definitions/ISO8601DateString" - }, - "CreatedBy": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "Criteria": { - "$ref": "#/definitions/AutomationRulesFindingFilters" - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "IsTerminal": { - "type": "boolean" - }, - "RuleArn": { - "pattern": "arn:aws\\S*:securityhub:\\S*", - "type": "string" - }, - "RuleName": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "RuleOrder": { - "maximum": 1000, - "minimum": 1, - "type": "integer" - }, - "RuleStatus": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "Tags": { - "$ref": "#/definitions/Tags" - }, - "UpdatedAt": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "readOnlyProperties": [ - "/properties/RuleArn", - "/properties/CreatedAt", - "/properties/UpdatedAt", - "/properties/CreatedBy" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecurityHub::AutomationRule" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py b/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py index a872aaef53..4847fdc5b1 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py @@ -647,8 +647,8 @@ "aws-acmpca-certificateauthorityactivation.json", "aws-acmpca-permission.json", "aws-amazonmq-broker.json", - "aws-amazonmq-configuration.json", "aws-apigateway-vpclink.json", + "aws-apigatewayv2-api.json", "aws-apigatewayv2-apimapping.json", "aws-apigatewayv2-authorizer.json", "aws-apigatewayv2-deployment.json", @@ -745,7 +745,6 @@ "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", "aws-cognito-logdeliveryconfiguration.json", - "aws-cognito-userpool.json", "aws-cognito-userpoolclient.json", "aws-cognito-userpoolgroup.json", "aws-cognito-userpoolresourceserver.json", @@ -847,6 +846,7 @@ "aws-ec2-volumeattachment.json", "aws-ec2-vpc.json", "aws-ec2-vpcdhcpoptionsassociation.json", + "aws-ec2-vpcendpoint.json", "aws-ec2-vpcendpointconnectionnotification.json", "aws-ec2-vpcendpointservice.json", "aws-ec2-vpcendpointservicepermissions.json", @@ -1090,8 +1090,6 @@ "aws-route53-keysigningkey.json", "aws-route53-recordset.json", "aws-route53-recordsetgroup.json", - "aws-route53profiles-profile.json", - "aws-route53profiles-profileassociation.json", "aws-route53profiles-profileresourceassociation.json", "aws-route53resolver-firewalldomainlist.json", "aws-route53resolver-firewallrulegroup.json", @@ -1120,6 +1118,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-securityhub-automationrule.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-hub.json", "aws-securityhub-insight.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-amazonmq-configuration.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-amazonmq-configuration.json new file mode 100644 index 0000000000..81cc7369f7 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-amazonmq-configuration.json @@ -0,0 +1,77 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/EngineType", + "/properties/Name", + "/properties/AuthenticationStrategy", + "/properties/EngineVersion" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AuthenticationStrategy": { + "type": "string" + }, + "Data": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "EngineType": { + "type": "string" + }, + "EngineVersion": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Revision": { + "type": "integer" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Revision", + "/properties/Id", + "/properties/Arn" + ], + "required": [ + "EngineType", + "Data", + "Name" + ], + "typeName": "AWS::AmazonMQ::Configuration" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-apigatewayv2-api.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-apigatewayv2-api.json deleted file mode 100644 index 85210f6a4e..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-apigatewayv2-api.json +++ /dev/null @@ -1,165 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ProtocolType" - ], - "definitions": { - "BodyS3Location": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" - }, - "Etag": { - "type": "string" - }, - "Key": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "type": "object" - }, - "Cors": { - "additionalProperties": false, - "properties": { - "AllowCredentials": { - "type": "boolean" - }, - "AllowHeaders": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "AllowMethods": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "AllowOrigins": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "ExposeHeaders": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "MaxAge": { - "type": "integer" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/ApiId" - ], - "properties": { - "ApiEndpoint": { - "type": "string" - }, - "ApiId": { - "type": "string" - }, - "ApiKeySelectionExpression": { - "type": "string" - }, - "BasePath": { - "type": "string" - }, - "Body": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "BodyS3Location": { - "$ref": "#/definitions/BodyS3Location" - }, - "CorsConfiguration": { - "$ref": "#/definitions/Cors" - }, - "CredentialsArn": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "DisableExecuteApiEndpoint": { - "type": "boolean" - }, - "DisableSchemaValidation": { - "type": "boolean" - }, - "FailOnWarnings": { - "type": "boolean" - }, - "Name": { - "type": "string" - }, - "ProtocolType": { - "type": "string" - }, - "RouteKey": { - "type": "string" - }, - "RouteSelectionExpression": { - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - ".*": { - "type": "string" - } - }, - "type": "object" - }, - "Target": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/ApiId", - "/properties/ApiEndpoint" - ], - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::ApiGatewayV2::Api", - "writeOnlyProperties": [ - "/properties/ApiKeySelectionExpression", - "/properties/BasePath", - "/properties/Body", - "/properties/BodyS3Location", - "/properties/BodyS3Location/Etag", - "/properties/BodyS3Location/Bucket", - "/properties/BodyS3Location/Version", - "/properties/BodyS3Location/Key", - "/properties/CredentialsArn", - "/properties/FailOnWarnings", - "/properties/RouteKey", - "/properties/Target", - "/properties/DisableSchemaValidation" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-cognito-userpool.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-cognito-userpool.json new file mode 100644 index 0000000000..be46ed5eb0 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-cognito-userpool.json @@ -0,0 +1,502 @@ +{ + "additionalProperties": false, + "definitions": { + "AccountRecoverySetting": { + "additionalProperties": false, + "properties": { + "RecoveryMechanisms": { + "items": { + "$ref": "#/definitions/RecoveryOption" + }, + "type": "array" + } + }, + "type": "object" + }, + "AdminCreateUserConfig": { + "additionalProperties": false, + "properties": { + "AllowAdminCreateUserOnly": { + "type": "boolean" + }, + "InviteMessageTemplate": { + "$ref": "#/definitions/InviteMessageTemplate" + }, + "UnusedAccountValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "AdvancedSecurityAdditionalFlows": { + "additionalProperties": false, + "properties": { + "CustomAuthMode": { + "type": "string" + } + }, + "type": "object" + }, + "CustomEmailSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "CustomSMSSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "DeviceConfiguration": { + "additionalProperties": false, + "properties": { + "ChallengeRequiredOnNewDevice": { + "type": "boolean" + }, + "DeviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + }, + "type": "object" + }, + "EmailConfiguration": { + "additionalProperties": false, + "properties": { + "ConfigurationSet": { + "type": "string" + }, + "EmailSendingAccount": { + "type": "string" + }, + "From": { + "type": "string" + }, + "ReplyToEmailAddress": { + "type": "string" + }, + "SourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "InviteMessageTemplate": { + "additionalProperties": false, + "properties": { + "EmailMessage": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "SMSMessage": { + "type": "string" + } + }, + "type": "object" + }, + "LambdaConfig": { + "additionalProperties": false, + "properties": { + "CreateAuthChallenge": { + "type": "string" + }, + "CustomEmailSender": { + "$ref": "#/definitions/CustomEmailSender" + }, + "CustomMessage": { + "type": "string" + }, + "CustomSMSSender": { + "$ref": "#/definitions/CustomSMSSender" + }, + "DefineAuthChallenge": { + "type": "string" + }, + "KMSKeyID": { + "type": "string" + }, + "PostAuthentication": { + "type": "string" + }, + "PostConfirmation": { + "type": "string" + }, + "PreAuthentication": { + "type": "string" + }, + "PreSignUp": { + "type": "string" + }, + "PreTokenGeneration": { + "type": "string" + }, + "PreTokenGenerationConfig": { + "$ref": "#/definitions/PreTokenGenerationConfig" + }, + "UserMigration": { + "type": "string" + }, + "VerifyAuthChallengeResponse": { + "type": "string" + } + }, + "type": "object" + }, + "NumberAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxValue": { + "type": "string" + }, + "MinValue": { + "type": "string" + } + }, + "type": "object" + }, + "PasswordPolicy": { + "additionalProperties": false, + "properties": { + "MinimumLength": { + "type": "integer" + }, + "PasswordHistorySize": { + "type": "integer" + }, + "RequireLowercase": { + "type": "boolean" + }, + "RequireNumbers": { + "type": "boolean" + }, + "RequireSymbols": { + "type": "boolean" + }, + "RequireUppercase": { + "type": "boolean" + }, + "TemporaryPasswordValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "Policies": { + "additionalProperties": false, + "properties": { + "PasswordPolicy": { + "$ref": "#/definitions/PasswordPolicy" + } + }, + "type": "object" + }, + "PreTokenGenerationConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "RecoveryOption": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Priority": { + "type": "integer" + } + }, + "type": "object" + }, + "SchemaAttribute": { + "additionalProperties": false, + "properties": { + "AttributeDataType": { + "type": "string" + }, + "DeveloperOnlyAttribute": { + "type": "boolean" + }, + "Mutable": { + "type": "boolean" + }, + "Name": { + "type": "string" + }, + "NumberAttributeConstraints": { + "$ref": "#/definitions/NumberAttributeConstraints" + }, + "Required": { + "type": "boolean" + }, + "StringAttributeConstraints": { + "$ref": "#/definitions/StringAttributeConstraints" + } + }, + "type": "object" + }, + "SmsConfiguration": { + "additionalProperties": false, + "properties": { + "ExternalId": { + "type": "string" + }, + "SnsCallerArn": { + "type": "string" + }, + "SnsRegion": { + "type": "string" + } + }, + "type": "object" + }, + "StringAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxLength": { + "type": "string" + }, + "MinLength": { + "type": "string" + } + }, + "type": "object" + }, + "UserAttributeUpdateSettings": { + "additionalProperties": false, + "properties": { + "AttributesRequireVerificationBeforeUpdate": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "AttributesRequireVerificationBeforeUpdate" + ], + "type": "object" + }, + "UserPoolAddOns": { + "additionalProperties": false, + "properties": { + "AdvancedSecurityAdditionalFlows": { + "$ref": "#/definitions/AdvancedSecurityAdditionalFlows" + }, + "AdvancedSecurityMode": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameConfiguration": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + } + }, + "type": "object" + }, + "VerificationMessageTemplate": { + "additionalProperties": false, + "properties": { + "DefaultEmailOption": { + "type": "string" + }, + "EmailMessage": { + "type": "string" + }, + "EmailMessageByLink": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "EmailSubjectByLink": { + "type": "string" + }, + "SmsMessage": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId" + ], + "properties": { + "AccountRecoverySetting": { + "$ref": "#/definitions/AccountRecoverySetting" + }, + "AdminCreateUserConfig": { + "$ref": "#/definitions/AdminCreateUserConfig" + }, + "AliasAttributes": { + "items": { + "enum": [ + "email", + "phone_number", + "preferred_username" + ], + "type": "string" + }, + "type": "array" + }, + "Arn": { + "type": "string" + }, + "AutoVerifiedAttributes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DeletionProtection": { + "type": "string" + }, + "DeviceConfiguration": { + "$ref": "#/definitions/DeviceConfiguration" + }, + "EmailConfiguration": { + "$ref": "#/definitions/EmailConfiguration" + }, + "EmailVerificationMessage": { + "maxLength": 20000, + "minLength": 6, + "type": "string" + }, + "EmailVerificationSubject": { + "maxLength": 140, + "minLength": 1, + "type": "string" + }, + "EnabledMfas": { + "items": { + "type": "string" + }, + "type": "array" + }, + "LambdaConfig": { + "$ref": "#/definitions/LambdaConfig" + }, + "MfaConfiguration": { + "enum": [ + "OFF", + "ON", + "OPTIONAL" + ], + "type": "string" + }, + "Policies": { + "$ref": "#/definitions/Policies" + }, + "ProviderName": { + "type": "string" + }, + "ProviderURL": { + "type": "string" + }, + "Schema": { + "items": { + "$ref": "#/definitions/SchemaAttribute" + }, + "type": "array" + }, + "SmsAuthenticationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "SmsConfiguration": { + "$ref": "#/definitions/SmsConfiguration" + }, + "SmsVerificationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "UserAttributeUpdateSettings": { + "$ref": "#/definitions/UserAttributeUpdateSettings" + }, + "UserPoolAddOns": { + "$ref": "#/definitions/UserPoolAddOns" + }, + "UserPoolId": { + "type": "string" + }, + "UserPoolName": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "UserPoolTags": { + "additionalProperties": false, + "patternProperties": { + "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameAttributes": { + "items": { + "enum": [ + "email", + "phone_number" + ], + "type": "string" + }, + "type": "array" + }, + "UsernameConfiguration": { + "$ref": "#/definitions/UsernameConfiguration" + }, + "VerificationMessageTemplate": { + "$ref": "#/definitions/VerificationMessageTemplate" + } + }, + "propertyTransform": { + "/properties/Schema/*/Name": "'custom:' & '' & Name" + }, + "readOnlyProperties": [ + "/properties/ProviderName", + "/properties/UserPoolId", + "/properties/ProviderURL", + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/UserPoolTags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Cognito::UserPool", + "writeOnlyProperties": [ + "/properties/EnabledMfas" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-ec2-vpcendpoint.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-ec2-vpcendpoint.json deleted file mode 100644 index cc6c13dfbc..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-ec2-vpcendpoint.json +++ /dev/null @@ -1,66 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/VpcId", - "/properties/ServiceName" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "PolicyDocument": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "PrivateDnsEnabled": { - "type": "boolean" - }, - "RouteTableIds": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "SecurityGroupIds": { - "format": "AWS::EC2::SecurityGroup.Ids", - "items": { - "format": "AWS::EC2::SecurityGroup.GroupId", - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "ServiceName": { - "type": "string" - }, - "SubnetIds": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "VpcEndpointType": { - "type": "string" - }, - "VpcId": { - "format": "AWS::EC2::VPC.Id", - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "VpcId", - "ServiceName" - ], - "typeName": "AWS::EC2::VPCEndpoint" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-route53profiles-profile.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-route53profiles-profile.json new file mode 100644 index 0000000000..123295aef9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-route53profiles-profile.json @@ -0,0 +1,76 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "ClientToken": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Id", + "/properties/ClientToken" + ], + "required": [ + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Profiles::Profile", + "writeOnlyProperties": [ + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-route53profiles-profileassociation.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-route53profiles-profileassociation.json new file mode 100644 index 0000000000..b1857370f9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-route53profiles-profileassociation.json @@ -0,0 +1,78 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name", + "/properties/ResourceId", + "/properties/ProfileId" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "ProfileId": { + "type": "string" + }, + "ResourceId": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "ResourceId", + "ProfileId", + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Profiles::ProfileAssociation", + "writeOnlyProperties": [ + "/properties/Arn", + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-securityhub-automationrule.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-securityhub-automationrule.json deleted file mode 100644 index 07eef12ca5..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-securityhub-automationrule.json +++ /dev/null @@ -1,690 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AutomationRulesAction": { - "properties": { - "FindingFieldsUpdate": { - "$ref": "#/definitions/AutomationRulesFindingFieldsUpdate" - }, - "Type": { - "enum": [ - "FINDING_FIELDS_UPDATE" - ], - "type": "string" - } - }, - "required": [ - "Type", - "FindingFieldsUpdate" - ], - "type": "object" - }, - "AutomationRulesFindingFieldsUpdate": { - "properties": { - "Confidence": { - "$ref": "#/definitions/int100" - }, - "Criticality": { - "$ref": "#/definitions/int100" - }, - "Note": { - "$ref": "#/definitions/NoteUpdate", - "type": "object" - }, - "RelatedFindings": { - "items": { - "$ref": "#/definitions/RelatedFinding" - }, - "maxItems": 10, - "minItems": 1, - "type": "array" - }, - "Severity": { - "$ref": "#/definitions/SeverityUpdate", - "type": "object" - }, - "Types": { - "items": { - "pattern": "^([^/]+)(/[^/]+){0,2}$", - "type": "string" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UserDefinedFields": { - "$ref": "#/definitions/map" - }, - "VerificationState": { - "enum": [ - "UNKNOWN", - "TRUE_POSITIVE", - "FALSE_POSITIVE", - "BENIGN_POSITIVE" - ], - "type": "string" - }, - "Workflow": { - "$ref": "#/definitions/WorkflowUpdate", - "type": "object" - } - }, - "type": "object" - }, - "AutomationRulesFindingFilters": { - "additionalProperties": false, - "properties": { - "AwsAccountId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "CompanyName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceAssociatedStandardsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceSecurityControlId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Confidence": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "CreatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Criticality": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Description": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "FirstObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "GeneratorId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Id": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "LastObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteText": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedBy": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RecordState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceDetailsOther": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "ResourcePartition": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceRegion": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceTags": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceType": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SeverityLabel": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SourceUrl": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Title": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Type": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UserDefinedFields": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "VerificationState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "WorkflowStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - } - }, - "type": "object" - }, - "BooleanFilter": { - "additionalProperties": false, - "properties": { - "Value": { - "type": "boolean" - } - }, - "required": [ - "Value" - ], - "type": "object" - }, - "DateFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "DateRange" - ] - }, - { - "allOf": [ - { - "required": [ - "Start" - ] - }, - { - "required": [ - "End" - ] - } - ] - } - ], - "properties": { - "DateRange": { - "$ref": "#/definitions/DateRange" - }, - "End": { - "$ref": "#/definitions/ISO8601DateString" - }, - "Start": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "type": "object" - }, - "DateRange": { - "additionalProperties": false, - "properties": { - "Unit": { - "enum": [ - "DAYS" - ], - "type": "string" - }, - "Value": { - "type": "number" - } - }, - "required": [ - "Unit", - "Value" - ], - "type": "object" - }, - "ISO8601DateString": { - "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$", - "type": "string" - }, - "MapFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "enum": [ - "EQUALS", - "NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Key", - "Value" - ], - "type": "object" - }, - "NonEmptyString": { - "minLength": 1, - "type": "string" - }, - "NoteUpdate": { - "additionalProperties": false, - "properties": { - "Text": { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - "UpdatedBy": { - "$ref": "#/definitions/arnOrId" - } - }, - "required": [ - "Text", - "UpdatedBy" - ], - "type": "object" - }, - "NumberFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "Eq" - ] - }, - { - "anyOf": [ - { - "required": [ - "Gte" - ] - }, - { - "required": [ - "Lte" - ] - } - ] - } - ], - "properties": { - "Eq": { - "type": "number" - }, - "Gte": { - "type": "number" - }, - "Lte": { - "type": "number" - } - }, - "type": "object" - }, - "RelatedFinding": { - "additionalProperties": false, - "properties": { - "Id": { - "$ref": "#/definitions/arnOrId" - }, - "ProductArn": { - "$ref": "#/definitions/arn" - } - }, - "required": [ - "ProductArn", - "Id" - ], - "type": "object" - }, - "SeverityUpdate": { - "additionalProperties": false, - "properties": { - "Label": { - "enum": [ - "INFORMATIONAL", - "LOW", - "MEDIUM", - "HIGH", - "CRITICAL" - ], - "type": "string" - }, - "Normalized": { - "$ref": "#/definitions/int100" - }, - "Product": { - "type": "number" - } - }, - "type": "object" - }, - "StringFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "$ref": "#/definitions/StringFilterComparison" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Value" - ], - "type": "object" - }, - "StringFilterComparison": { - "enum": [ - "EQUALS", - "PREFIX", - "NOT_EQUALS", - "PREFIX_NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - "^[a-zA-Z0-9]{1,128}$": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "WorkflowUpdate": { - "additionalProperties": false, - "properties": { - "Status": { - "enum": [ - "NEW", - "NOTIFIED", - "RESOLVED", - "SUPPRESSED" - ], - "type": "string" - } - }, - "required": [ - "Status" - ], - "type": "object" - }, - "arn": { - "maxLength": 2048, - "minLength": 12, - "pattern": "^arn:(aws|aws-cn|aws-us-gov|aws-iso-?[a-z]{0,2}):[A-Za-z0-9]{1,63}:[a-z]+-([a-z]{1,10}-)?[a-z]+-[0-9]+:([0-9]{12})?:.+$", - "type": "string" - }, - "arnOrId": { - "anyOf": [ - { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - { - "$ref": "#/definitions/arn" - } - ] - }, - "int100": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "map": { - "additionalProperties": false, - "maxProperties": 50, - "minProperties": 1, - "patternProperties": { - "^[-_+=.:/@\\w\\s]{1,128}$": { - "maxLength": 1024, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "timestamp": { - "format": "date-time", - "pattern": "(\\d\\d\\d\\d)-[0-1](\\d)-[0-3](\\d)[Tt](?:[0-2](\\d):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?(?:[Zz]|[+-](\\d\\d)(?::?(\\d\\d))?)$", - "type": "string" - } - }, - "primaryIdentifier": [ - "/properties/RuleArn" - ], - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/AutomationRulesAction" - }, - "maxItems": 1, - "minItems": 1, - "type": "array" - }, - "CreatedAt": { - "$ref": "#/definitions/ISO8601DateString" - }, - "CreatedBy": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "Criteria": { - "$ref": "#/definitions/AutomationRulesFindingFilters" - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "IsTerminal": { - "type": "boolean" - }, - "RuleArn": { - "pattern": "arn:aws\\S*:securityhub:\\S*", - "type": "string" - }, - "RuleName": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "RuleOrder": { - "maximum": 1000, - "minimum": 1, - "type": "integer" - }, - "RuleStatus": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "Tags": { - "$ref": "#/definitions/Tags" - }, - "UpdatedAt": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "readOnlyProperties": [ - "/properties/RuleArn", - "/properties/CreatedAt", - "/properties/UpdatedAt", - "/properties/CreatedBy" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecurityHub::AutomationRule" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_5/__init__.py b/src/cfnlint/data/schemas/providers/ap_southeast_5/__init__.py index c52e6d666e..5b6a170ed4 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_5/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_5/__init__.py @@ -135,6 +135,7 @@ "AWS::EC2::SubnetRouteTableAssociation", "AWS::EC2::TransitGateway", "AWS::EC2::TransitGatewayAttachment", + "AWS::EC2::TransitGatewayConnect", "AWS::EC2::TransitGatewayMulticastDomain", "AWS::EC2::TransitGatewayMulticastDomainAssociation", "AWS::EC2::TransitGatewayMulticastGroupMember", @@ -299,8 +300,10 @@ "AWS::Redshift::EventSubscription", "AWS::Redshift::ScheduledAction", "AWS::ResourceGroups::Group", + "AWS::Route53::DNSSEC", "AWS::Route53::HealthCheck", "AWS::Route53::HostedZone", + "AWS::Route53::KeySigningKey", "AWS::Route53::RecordSet", "AWS::Route53::RecordSetGroup", "AWS::Route53Resolver::ResolverQueryLoggingConfig", @@ -446,6 +449,7 @@ "aws-ec2-subnetroutetableassociation.json", "aws-ec2-transitgateway.json", "aws-ec2-transitgatewayattachment.json", + "aws-ec2-transitgatewayconnect.json", "aws-ec2-transitgatewaymulticastdomain.json", "aws-ec2-transitgatewaymulticastdomainassociation.json", "aws-ec2-transitgatewaymulticastgroupmember.json", @@ -457,6 +461,7 @@ "aws-ec2-transitgatewayvpcattachment.json", "aws-ec2-vpc.json", "aws-ec2-vpcdhcpoptionsassociation.json", + "aws-ec2-vpcendpoint.json", "aws-ec2-vpcpeeringconnection.json", "aws-ec2-vpnconnection.json", "aws-ec2-vpnconnectionroute.json", @@ -575,6 +580,8 @@ "aws-redshift-eventsubscription.json", "aws-redshift-scheduledaction.json", "aws-resourcegroups-group.json", + "aws-route53-dnssec.json", + "aws-route53-keysigningkey.json", "aws-route53-recordset.json", "aws-route53-recordsetgroup.json", "aws-route53resolver-resolverqueryloggingconfig.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-ec2-vpcendpoint.json b/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-ec2-vpcendpoint.json deleted file mode 100644 index cc6c13dfbc..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-ec2-vpcendpoint.json +++ /dev/null @@ -1,66 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/VpcId", - "/properties/ServiceName" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "PolicyDocument": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "PrivateDnsEnabled": { - "type": "boolean" - }, - "RouteTableIds": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "SecurityGroupIds": { - "format": "AWS::EC2::SecurityGroup.Ids", - "items": { - "format": "AWS::EC2::SecurityGroup.GroupId", - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "ServiceName": { - "type": "string" - }, - "SubnetIds": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "VpcEndpointType": { - "type": "string" - }, - "VpcId": { - "format": "AWS::EC2::VPC.Id", - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "VpcId", - "ServiceName" - ], - "typeName": "AWS::EC2::VPCEndpoint" -} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py b/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py index 1ddf942f1f..05ec46528d 100644 --- a/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py @@ -1293,7 +1293,6 @@ "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", "aws-cognito-logdeliveryconfiguration.json", - "aws-cognito-userpool.json", "aws-cognito-userpoolclient.json", "aws-cognito-userpooldomain.json", "aws-cognito-userpoolgroup.json", @@ -2008,6 +2007,7 @@ "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", "aws-secretsmanager-secrettargetattachment.json", + "aws-securityhub-automationrule.json", "aws-securityhub-configurationpolicy.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-findingaggregator.json", diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-cognito-userpool.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-cognito-userpool.json new file mode 100644 index 0000000000..be46ed5eb0 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_central_1/aws-cognito-userpool.json @@ -0,0 +1,502 @@ +{ + "additionalProperties": false, + "definitions": { + "AccountRecoverySetting": { + "additionalProperties": false, + "properties": { + "RecoveryMechanisms": { + "items": { + "$ref": "#/definitions/RecoveryOption" + }, + "type": "array" + } + }, + "type": "object" + }, + "AdminCreateUserConfig": { + "additionalProperties": false, + "properties": { + "AllowAdminCreateUserOnly": { + "type": "boolean" + }, + "InviteMessageTemplate": { + "$ref": "#/definitions/InviteMessageTemplate" + }, + "UnusedAccountValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "AdvancedSecurityAdditionalFlows": { + "additionalProperties": false, + "properties": { + "CustomAuthMode": { + "type": "string" + } + }, + "type": "object" + }, + "CustomEmailSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "CustomSMSSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "DeviceConfiguration": { + "additionalProperties": false, + "properties": { + "ChallengeRequiredOnNewDevice": { + "type": "boolean" + }, + "DeviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + }, + "type": "object" + }, + "EmailConfiguration": { + "additionalProperties": false, + "properties": { + "ConfigurationSet": { + "type": "string" + }, + "EmailSendingAccount": { + "type": "string" + }, + "From": { + "type": "string" + }, + "ReplyToEmailAddress": { + "type": "string" + }, + "SourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "InviteMessageTemplate": { + "additionalProperties": false, + "properties": { + "EmailMessage": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "SMSMessage": { + "type": "string" + } + }, + "type": "object" + }, + "LambdaConfig": { + "additionalProperties": false, + "properties": { + "CreateAuthChallenge": { + "type": "string" + }, + "CustomEmailSender": { + "$ref": "#/definitions/CustomEmailSender" + }, + "CustomMessage": { + "type": "string" + }, + "CustomSMSSender": { + "$ref": "#/definitions/CustomSMSSender" + }, + "DefineAuthChallenge": { + "type": "string" + }, + "KMSKeyID": { + "type": "string" + }, + "PostAuthentication": { + "type": "string" + }, + "PostConfirmation": { + "type": "string" + }, + "PreAuthentication": { + "type": "string" + }, + "PreSignUp": { + "type": "string" + }, + "PreTokenGeneration": { + "type": "string" + }, + "PreTokenGenerationConfig": { + "$ref": "#/definitions/PreTokenGenerationConfig" + }, + "UserMigration": { + "type": "string" + }, + "VerifyAuthChallengeResponse": { + "type": "string" + } + }, + "type": "object" + }, + "NumberAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxValue": { + "type": "string" + }, + "MinValue": { + "type": "string" + } + }, + "type": "object" + }, + "PasswordPolicy": { + "additionalProperties": false, + "properties": { + "MinimumLength": { + "type": "integer" + }, + "PasswordHistorySize": { + "type": "integer" + }, + "RequireLowercase": { + "type": "boolean" + }, + "RequireNumbers": { + "type": "boolean" + }, + "RequireSymbols": { + "type": "boolean" + }, + "RequireUppercase": { + "type": "boolean" + }, + "TemporaryPasswordValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "Policies": { + "additionalProperties": false, + "properties": { + "PasswordPolicy": { + "$ref": "#/definitions/PasswordPolicy" + } + }, + "type": "object" + }, + "PreTokenGenerationConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "RecoveryOption": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Priority": { + "type": "integer" + } + }, + "type": "object" + }, + "SchemaAttribute": { + "additionalProperties": false, + "properties": { + "AttributeDataType": { + "type": "string" + }, + "DeveloperOnlyAttribute": { + "type": "boolean" + }, + "Mutable": { + "type": "boolean" + }, + "Name": { + "type": "string" + }, + "NumberAttributeConstraints": { + "$ref": "#/definitions/NumberAttributeConstraints" + }, + "Required": { + "type": "boolean" + }, + "StringAttributeConstraints": { + "$ref": "#/definitions/StringAttributeConstraints" + } + }, + "type": "object" + }, + "SmsConfiguration": { + "additionalProperties": false, + "properties": { + "ExternalId": { + "type": "string" + }, + "SnsCallerArn": { + "type": "string" + }, + "SnsRegion": { + "type": "string" + } + }, + "type": "object" + }, + "StringAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxLength": { + "type": "string" + }, + "MinLength": { + "type": "string" + } + }, + "type": "object" + }, + "UserAttributeUpdateSettings": { + "additionalProperties": false, + "properties": { + "AttributesRequireVerificationBeforeUpdate": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "AttributesRequireVerificationBeforeUpdate" + ], + "type": "object" + }, + "UserPoolAddOns": { + "additionalProperties": false, + "properties": { + "AdvancedSecurityAdditionalFlows": { + "$ref": "#/definitions/AdvancedSecurityAdditionalFlows" + }, + "AdvancedSecurityMode": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameConfiguration": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + } + }, + "type": "object" + }, + "VerificationMessageTemplate": { + "additionalProperties": false, + "properties": { + "DefaultEmailOption": { + "type": "string" + }, + "EmailMessage": { + "type": "string" + }, + "EmailMessageByLink": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "EmailSubjectByLink": { + "type": "string" + }, + "SmsMessage": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId" + ], + "properties": { + "AccountRecoverySetting": { + "$ref": "#/definitions/AccountRecoverySetting" + }, + "AdminCreateUserConfig": { + "$ref": "#/definitions/AdminCreateUserConfig" + }, + "AliasAttributes": { + "items": { + "enum": [ + "email", + "phone_number", + "preferred_username" + ], + "type": "string" + }, + "type": "array" + }, + "Arn": { + "type": "string" + }, + "AutoVerifiedAttributes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DeletionProtection": { + "type": "string" + }, + "DeviceConfiguration": { + "$ref": "#/definitions/DeviceConfiguration" + }, + "EmailConfiguration": { + "$ref": "#/definitions/EmailConfiguration" + }, + "EmailVerificationMessage": { + "maxLength": 20000, + "minLength": 6, + "type": "string" + }, + "EmailVerificationSubject": { + "maxLength": 140, + "minLength": 1, + "type": "string" + }, + "EnabledMfas": { + "items": { + "type": "string" + }, + "type": "array" + }, + "LambdaConfig": { + "$ref": "#/definitions/LambdaConfig" + }, + "MfaConfiguration": { + "enum": [ + "OFF", + "ON", + "OPTIONAL" + ], + "type": "string" + }, + "Policies": { + "$ref": "#/definitions/Policies" + }, + "ProviderName": { + "type": "string" + }, + "ProviderURL": { + "type": "string" + }, + "Schema": { + "items": { + "$ref": "#/definitions/SchemaAttribute" + }, + "type": "array" + }, + "SmsAuthenticationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "SmsConfiguration": { + "$ref": "#/definitions/SmsConfiguration" + }, + "SmsVerificationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "UserAttributeUpdateSettings": { + "$ref": "#/definitions/UserAttributeUpdateSettings" + }, + "UserPoolAddOns": { + "$ref": "#/definitions/UserPoolAddOns" + }, + "UserPoolId": { + "type": "string" + }, + "UserPoolName": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "UserPoolTags": { + "additionalProperties": false, + "patternProperties": { + "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameAttributes": { + "items": { + "enum": [ + "email", + "phone_number" + ], + "type": "string" + }, + "type": "array" + }, + "UsernameConfiguration": { + "$ref": "#/definitions/UsernameConfiguration" + }, + "VerificationMessageTemplate": { + "$ref": "#/definitions/VerificationMessageTemplate" + } + }, + "propertyTransform": { + "/properties/Schema/*/Name": "'custom:' & '' & Name" + }, + "readOnlyProperties": [ + "/properties/ProviderName", + "/properties/UserPoolId", + "/properties/ProviderURL", + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/UserPoolTags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Cognito::UserPool", + "writeOnlyProperties": [ + "/properties/EnabledMfas" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-securityhub-automationrule.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-securityhub-automationrule.json deleted file mode 100644 index 07eef12ca5..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_central_1/aws-securityhub-automationrule.json +++ /dev/null @@ -1,690 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AutomationRulesAction": { - "properties": { - "FindingFieldsUpdate": { - "$ref": "#/definitions/AutomationRulesFindingFieldsUpdate" - }, - "Type": { - "enum": [ - "FINDING_FIELDS_UPDATE" - ], - "type": "string" - } - }, - "required": [ - "Type", - "FindingFieldsUpdate" - ], - "type": "object" - }, - "AutomationRulesFindingFieldsUpdate": { - "properties": { - "Confidence": { - "$ref": "#/definitions/int100" - }, - "Criticality": { - "$ref": "#/definitions/int100" - }, - "Note": { - "$ref": "#/definitions/NoteUpdate", - "type": "object" - }, - "RelatedFindings": { - "items": { - "$ref": "#/definitions/RelatedFinding" - }, - "maxItems": 10, - "minItems": 1, - "type": "array" - }, - "Severity": { - "$ref": "#/definitions/SeverityUpdate", - "type": "object" - }, - "Types": { - "items": { - "pattern": "^([^/]+)(/[^/]+){0,2}$", - "type": "string" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UserDefinedFields": { - "$ref": "#/definitions/map" - }, - "VerificationState": { - "enum": [ - "UNKNOWN", - "TRUE_POSITIVE", - "FALSE_POSITIVE", - "BENIGN_POSITIVE" - ], - "type": "string" - }, - "Workflow": { - "$ref": "#/definitions/WorkflowUpdate", - "type": "object" - } - }, - "type": "object" - }, - "AutomationRulesFindingFilters": { - "additionalProperties": false, - "properties": { - "AwsAccountId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "CompanyName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceAssociatedStandardsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceSecurityControlId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Confidence": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "CreatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Criticality": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Description": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "FirstObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "GeneratorId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Id": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "LastObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteText": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedBy": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RecordState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceDetailsOther": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "ResourcePartition": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceRegion": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceTags": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceType": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SeverityLabel": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SourceUrl": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Title": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Type": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UserDefinedFields": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "VerificationState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "WorkflowStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - } - }, - "type": "object" - }, - "BooleanFilter": { - "additionalProperties": false, - "properties": { - "Value": { - "type": "boolean" - } - }, - "required": [ - "Value" - ], - "type": "object" - }, - "DateFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "DateRange" - ] - }, - { - "allOf": [ - { - "required": [ - "Start" - ] - }, - { - "required": [ - "End" - ] - } - ] - } - ], - "properties": { - "DateRange": { - "$ref": "#/definitions/DateRange" - }, - "End": { - "$ref": "#/definitions/ISO8601DateString" - }, - "Start": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "type": "object" - }, - "DateRange": { - "additionalProperties": false, - "properties": { - "Unit": { - "enum": [ - "DAYS" - ], - "type": "string" - }, - "Value": { - "type": "number" - } - }, - "required": [ - "Unit", - "Value" - ], - "type": "object" - }, - "ISO8601DateString": { - "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$", - "type": "string" - }, - "MapFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "enum": [ - "EQUALS", - "NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Key", - "Value" - ], - "type": "object" - }, - "NonEmptyString": { - "minLength": 1, - "type": "string" - }, - "NoteUpdate": { - "additionalProperties": false, - "properties": { - "Text": { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - "UpdatedBy": { - "$ref": "#/definitions/arnOrId" - } - }, - "required": [ - "Text", - "UpdatedBy" - ], - "type": "object" - }, - "NumberFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "Eq" - ] - }, - { - "anyOf": [ - { - "required": [ - "Gte" - ] - }, - { - "required": [ - "Lte" - ] - } - ] - } - ], - "properties": { - "Eq": { - "type": "number" - }, - "Gte": { - "type": "number" - }, - "Lte": { - "type": "number" - } - }, - "type": "object" - }, - "RelatedFinding": { - "additionalProperties": false, - "properties": { - "Id": { - "$ref": "#/definitions/arnOrId" - }, - "ProductArn": { - "$ref": "#/definitions/arn" - } - }, - "required": [ - "ProductArn", - "Id" - ], - "type": "object" - }, - "SeverityUpdate": { - "additionalProperties": false, - "properties": { - "Label": { - "enum": [ - "INFORMATIONAL", - "LOW", - "MEDIUM", - "HIGH", - "CRITICAL" - ], - "type": "string" - }, - "Normalized": { - "$ref": "#/definitions/int100" - }, - "Product": { - "type": "number" - } - }, - "type": "object" - }, - "StringFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "$ref": "#/definitions/StringFilterComparison" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Value" - ], - "type": "object" - }, - "StringFilterComparison": { - "enum": [ - "EQUALS", - "PREFIX", - "NOT_EQUALS", - "PREFIX_NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - "^[a-zA-Z0-9]{1,128}$": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "WorkflowUpdate": { - "additionalProperties": false, - "properties": { - "Status": { - "enum": [ - "NEW", - "NOTIFIED", - "RESOLVED", - "SUPPRESSED" - ], - "type": "string" - } - }, - "required": [ - "Status" - ], - "type": "object" - }, - "arn": { - "maxLength": 2048, - "minLength": 12, - "pattern": "^arn:(aws|aws-cn|aws-us-gov|aws-iso-?[a-z]{0,2}):[A-Za-z0-9]{1,63}:[a-z]+-([a-z]{1,10}-)?[a-z]+-[0-9]+:([0-9]{12})?:.+$", - "type": "string" - }, - "arnOrId": { - "anyOf": [ - { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - { - "$ref": "#/definitions/arn" - } - ] - }, - "int100": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "map": { - "additionalProperties": false, - "maxProperties": 50, - "minProperties": 1, - "patternProperties": { - "^[-_+=.:/@\\w\\s]{1,128}$": { - "maxLength": 1024, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "timestamp": { - "format": "date-time", - "pattern": "(\\d\\d\\d\\d)-[0-1](\\d)-[0-3](\\d)[Tt](?:[0-2](\\d):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?(?:[Zz]|[+-](\\d\\d)(?::?(\\d\\d))?)$", - "type": "string" - } - }, - "primaryIdentifier": [ - "/properties/RuleArn" - ], - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/AutomationRulesAction" - }, - "maxItems": 1, - "minItems": 1, - "type": "array" - }, - "CreatedAt": { - "$ref": "#/definitions/ISO8601DateString" - }, - "CreatedBy": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "Criteria": { - "$ref": "#/definitions/AutomationRulesFindingFilters" - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "IsTerminal": { - "type": "boolean" - }, - "RuleArn": { - "pattern": "arn:aws\\S*:securityhub:\\S*", - "type": "string" - }, - "RuleName": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "RuleOrder": { - "maximum": 1000, - "minimum": 1, - "type": "integer" - }, - "RuleStatus": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "Tags": { - "$ref": "#/definitions/Tags" - }, - "UpdatedAt": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "readOnlyProperties": [ - "/properties/RuleArn", - "/properties/CreatedAt", - "/properties/UpdatedAt", - "/properties/CreatedBy" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecurityHub::AutomationRule" -} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py b/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py index afaa3e884b..ea23971021 100644 --- a/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py @@ -568,7 +568,7 @@ "aws-acmpca-certificateauthorityactivation.json", "aws-acmpca-permission.json", "aws-amazonmq-broker.json", - "aws-amazonmq-configuration.json", + "aws-apigatewayv2-api.json", "aws-apigatewayv2-apimapping.json", "aws-apigatewayv2-authorizer.json", "aws-apigatewayv2-deployment.json", @@ -643,7 +643,6 @@ "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", "aws-cognito-logdeliveryconfiguration.json", - "aws-cognito-userpool.json", "aws-cognito-userpoolclient.json", "aws-cognito-userpoolgroup.json", "aws-cognito-userpoolresourceserver.json", @@ -790,6 +789,7 @@ "aws-events-eventbuspolicy.json", "aws-events-rule.json", "aws-fms-notificationchannel.json", + "aws-fms-policy.json", "aws-fsx-datarepositoryassociation.json", "aws-fsx-filesystem.json", "aws-fsx-snapshot.json", @@ -931,8 +931,6 @@ "aws-route53-keysigningkey.json", "aws-route53-recordset.json", "aws-route53-recordsetgroup.json", - "aws-route53profiles-profile.json", - "aws-route53profiles-profileassociation.json", "aws-route53profiles-profileresourceassociation.json", "aws-route53resolver-firewalldomainlist.json", "aws-route53resolver-firewallrulegroup.json", @@ -957,11 +955,13 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-securityhub-automationrule.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-hub.json", "aws-securityhub-insight.json", "aws-securityhub-organizationconfiguration.json", "aws-securityhub-productsubscription.json", + "aws-securityhub-securitycontrol.json", "aws-securityhub-standard.json", "aws-servicecatalogappregistry-application.json", "aws-servicecatalogappregistry-attributegroup.json", diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-amazonmq-configuration.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-amazonmq-configuration.json new file mode 100644 index 0000000000..81cc7369f7 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_west_1/aws-amazonmq-configuration.json @@ -0,0 +1,77 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/EngineType", + "/properties/Name", + "/properties/AuthenticationStrategy", + "/properties/EngineVersion" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AuthenticationStrategy": { + "type": "string" + }, + "Data": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "EngineType": { + "type": "string" + }, + "EngineVersion": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Revision": { + "type": "integer" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Revision", + "/properties/Id", + "/properties/Arn" + ], + "required": [ + "EngineType", + "Data", + "Name" + ], + "typeName": "AWS::AmazonMQ::Configuration" +} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-apigatewayv2-api.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-apigatewayv2-api.json deleted file mode 100644 index 85210f6a4e..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-apigatewayv2-api.json +++ /dev/null @@ -1,165 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ProtocolType" - ], - "definitions": { - "BodyS3Location": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" - }, - "Etag": { - "type": "string" - }, - "Key": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "type": "object" - }, - "Cors": { - "additionalProperties": false, - "properties": { - "AllowCredentials": { - "type": "boolean" - }, - "AllowHeaders": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "AllowMethods": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "AllowOrigins": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "ExposeHeaders": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "MaxAge": { - "type": "integer" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/ApiId" - ], - "properties": { - "ApiEndpoint": { - "type": "string" - }, - "ApiId": { - "type": "string" - }, - "ApiKeySelectionExpression": { - "type": "string" - }, - "BasePath": { - "type": "string" - }, - "Body": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "BodyS3Location": { - "$ref": "#/definitions/BodyS3Location" - }, - "CorsConfiguration": { - "$ref": "#/definitions/Cors" - }, - "CredentialsArn": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "DisableExecuteApiEndpoint": { - "type": "boolean" - }, - "DisableSchemaValidation": { - "type": "boolean" - }, - "FailOnWarnings": { - "type": "boolean" - }, - "Name": { - "type": "string" - }, - "ProtocolType": { - "type": "string" - }, - "RouteKey": { - "type": "string" - }, - "RouteSelectionExpression": { - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - ".*": { - "type": "string" - } - }, - "type": "object" - }, - "Target": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/ApiId", - "/properties/ApiEndpoint" - ], - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::ApiGatewayV2::Api", - "writeOnlyProperties": [ - "/properties/ApiKeySelectionExpression", - "/properties/BasePath", - "/properties/Body", - "/properties/BodyS3Location", - "/properties/BodyS3Location/Etag", - "/properties/BodyS3Location/Bucket", - "/properties/BodyS3Location/Version", - "/properties/BodyS3Location/Key", - "/properties/CredentialsArn", - "/properties/FailOnWarnings", - "/properties/RouteKey", - "/properties/Target", - "/properties/DisableSchemaValidation" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-cognito-userpool.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-cognito-userpool.json new file mode 100644 index 0000000000..be46ed5eb0 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_west_1/aws-cognito-userpool.json @@ -0,0 +1,502 @@ +{ + "additionalProperties": false, + "definitions": { + "AccountRecoverySetting": { + "additionalProperties": false, + "properties": { + "RecoveryMechanisms": { + "items": { + "$ref": "#/definitions/RecoveryOption" + }, + "type": "array" + } + }, + "type": "object" + }, + "AdminCreateUserConfig": { + "additionalProperties": false, + "properties": { + "AllowAdminCreateUserOnly": { + "type": "boolean" + }, + "InviteMessageTemplate": { + "$ref": "#/definitions/InviteMessageTemplate" + }, + "UnusedAccountValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "AdvancedSecurityAdditionalFlows": { + "additionalProperties": false, + "properties": { + "CustomAuthMode": { + "type": "string" + } + }, + "type": "object" + }, + "CustomEmailSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "CustomSMSSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "DeviceConfiguration": { + "additionalProperties": false, + "properties": { + "ChallengeRequiredOnNewDevice": { + "type": "boolean" + }, + "DeviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + }, + "type": "object" + }, + "EmailConfiguration": { + "additionalProperties": false, + "properties": { + "ConfigurationSet": { + "type": "string" + }, + "EmailSendingAccount": { + "type": "string" + }, + "From": { + "type": "string" + }, + "ReplyToEmailAddress": { + "type": "string" + }, + "SourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "InviteMessageTemplate": { + "additionalProperties": false, + "properties": { + "EmailMessage": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "SMSMessage": { + "type": "string" + } + }, + "type": "object" + }, + "LambdaConfig": { + "additionalProperties": false, + "properties": { + "CreateAuthChallenge": { + "type": "string" + }, + "CustomEmailSender": { + "$ref": "#/definitions/CustomEmailSender" + }, + "CustomMessage": { + "type": "string" + }, + "CustomSMSSender": { + "$ref": "#/definitions/CustomSMSSender" + }, + "DefineAuthChallenge": { + "type": "string" + }, + "KMSKeyID": { + "type": "string" + }, + "PostAuthentication": { + "type": "string" + }, + "PostConfirmation": { + "type": "string" + }, + "PreAuthentication": { + "type": "string" + }, + "PreSignUp": { + "type": "string" + }, + "PreTokenGeneration": { + "type": "string" + }, + "PreTokenGenerationConfig": { + "$ref": "#/definitions/PreTokenGenerationConfig" + }, + "UserMigration": { + "type": "string" + }, + "VerifyAuthChallengeResponse": { + "type": "string" + } + }, + "type": "object" + }, + "NumberAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxValue": { + "type": "string" + }, + "MinValue": { + "type": "string" + } + }, + "type": "object" + }, + "PasswordPolicy": { + "additionalProperties": false, + "properties": { + "MinimumLength": { + "type": "integer" + }, + "PasswordHistorySize": { + "type": "integer" + }, + "RequireLowercase": { + "type": "boolean" + }, + "RequireNumbers": { + "type": "boolean" + }, + "RequireSymbols": { + "type": "boolean" + }, + "RequireUppercase": { + "type": "boolean" + }, + "TemporaryPasswordValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "Policies": { + "additionalProperties": false, + "properties": { + "PasswordPolicy": { + "$ref": "#/definitions/PasswordPolicy" + } + }, + "type": "object" + }, + "PreTokenGenerationConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "RecoveryOption": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Priority": { + "type": "integer" + } + }, + "type": "object" + }, + "SchemaAttribute": { + "additionalProperties": false, + "properties": { + "AttributeDataType": { + "type": "string" + }, + "DeveloperOnlyAttribute": { + "type": "boolean" + }, + "Mutable": { + "type": "boolean" + }, + "Name": { + "type": "string" + }, + "NumberAttributeConstraints": { + "$ref": "#/definitions/NumberAttributeConstraints" + }, + "Required": { + "type": "boolean" + }, + "StringAttributeConstraints": { + "$ref": "#/definitions/StringAttributeConstraints" + } + }, + "type": "object" + }, + "SmsConfiguration": { + "additionalProperties": false, + "properties": { + "ExternalId": { + "type": "string" + }, + "SnsCallerArn": { + "type": "string" + }, + "SnsRegion": { + "type": "string" + } + }, + "type": "object" + }, + "StringAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxLength": { + "type": "string" + }, + "MinLength": { + "type": "string" + } + }, + "type": "object" + }, + "UserAttributeUpdateSettings": { + "additionalProperties": false, + "properties": { + "AttributesRequireVerificationBeforeUpdate": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "AttributesRequireVerificationBeforeUpdate" + ], + "type": "object" + }, + "UserPoolAddOns": { + "additionalProperties": false, + "properties": { + "AdvancedSecurityAdditionalFlows": { + "$ref": "#/definitions/AdvancedSecurityAdditionalFlows" + }, + "AdvancedSecurityMode": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameConfiguration": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + } + }, + "type": "object" + }, + "VerificationMessageTemplate": { + "additionalProperties": false, + "properties": { + "DefaultEmailOption": { + "type": "string" + }, + "EmailMessage": { + "type": "string" + }, + "EmailMessageByLink": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "EmailSubjectByLink": { + "type": "string" + }, + "SmsMessage": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId" + ], + "properties": { + "AccountRecoverySetting": { + "$ref": "#/definitions/AccountRecoverySetting" + }, + "AdminCreateUserConfig": { + "$ref": "#/definitions/AdminCreateUserConfig" + }, + "AliasAttributes": { + "items": { + "enum": [ + "email", + "phone_number", + "preferred_username" + ], + "type": "string" + }, + "type": "array" + }, + "Arn": { + "type": "string" + }, + "AutoVerifiedAttributes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DeletionProtection": { + "type": "string" + }, + "DeviceConfiguration": { + "$ref": "#/definitions/DeviceConfiguration" + }, + "EmailConfiguration": { + "$ref": "#/definitions/EmailConfiguration" + }, + "EmailVerificationMessage": { + "maxLength": 20000, + "minLength": 6, + "type": "string" + }, + "EmailVerificationSubject": { + "maxLength": 140, + "minLength": 1, + "type": "string" + }, + "EnabledMfas": { + "items": { + "type": "string" + }, + "type": "array" + }, + "LambdaConfig": { + "$ref": "#/definitions/LambdaConfig" + }, + "MfaConfiguration": { + "enum": [ + "OFF", + "ON", + "OPTIONAL" + ], + "type": "string" + }, + "Policies": { + "$ref": "#/definitions/Policies" + }, + "ProviderName": { + "type": "string" + }, + "ProviderURL": { + "type": "string" + }, + "Schema": { + "items": { + "$ref": "#/definitions/SchemaAttribute" + }, + "type": "array" + }, + "SmsAuthenticationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "SmsConfiguration": { + "$ref": "#/definitions/SmsConfiguration" + }, + "SmsVerificationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "UserAttributeUpdateSettings": { + "$ref": "#/definitions/UserAttributeUpdateSettings" + }, + "UserPoolAddOns": { + "$ref": "#/definitions/UserPoolAddOns" + }, + "UserPoolId": { + "type": "string" + }, + "UserPoolName": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "UserPoolTags": { + "additionalProperties": false, + "patternProperties": { + "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameAttributes": { + "items": { + "enum": [ + "email", + "phone_number" + ], + "type": "string" + }, + "type": "array" + }, + "UsernameConfiguration": { + "$ref": "#/definitions/UsernameConfiguration" + }, + "VerificationMessageTemplate": { + "$ref": "#/definitions/VerificationMessageTemplate" + } + }, + "propertyTransform": { + "/properties/Schema/*/Name": "'custom:' & '' & Name" + }, + "readOnlyProperties": [ + "/properties/ProviderName", + "/properties/UserPoolId", + "/properties/ProviderURL", + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/UserPoolTags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Cognito::UserPool", + "writeOnlyProperties": [ + "/properties/EnabledMfas" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-fms-policy.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-fms-policy.json deleted file mode 100644 index b42a8ac885..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-fms-policy.json +++ /dev/null @@ -1,416 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AccountId": { - "maxLength": 12, - "minLength": 12, - "pattern": "^([0-9]*)$", - "type": "string" - }, - "Base62Id": { - "maxLength": 22, - "minLength": 22, - "pattern": "^[a-z0-9A-Z]{22}$", - "type": "string" - }, - "FirewallDeploymentModel": { - "enum": [ - "DISTRIBUTED", - "CENTRALIZED" - ], - "type": "string" - }, - "IEMap": { - "additionalProperties": false, - "properties": { - "ACCOUNT": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/AccountId" - }, - "type": "array" - }, - "ORGUNIT": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/OrganizationalUnitId" - }, - "type": "array" - } - }, - "type": "object" - }, - "ManagedServiceData": { - "maxLength": 30000, - "minLength": 1, - "type": "string" - }, - "NetworkAclCommonPolicy": { - "additionalProperties": false, - "properties": { - "NetworkAclEntrySet": { - "$ref": "#/definitions/NetworkAclEntrySet" - } - }, - "required": [ - "NetworkAclEntrySet" - ], - "type": "object" - }, - "NetworkAclEntry": { - "additionalProperties": false, - "properties": { - "CidrBlock": { - "pattern": "^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\\/([0-9]|[1-2][0-9]|3[0-2]))$", - "type": "string" - }, - "Egress": { - "type": "boolean" - }, - "IcmpTypeCode": { - "additionalProperties": false, - "properties": { - "Code": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "Type": { - "maximum": 255, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "Code", - "Type" - ], - "type": "object" - }, - "Ipv6CidrBlock": { - "pattern": "^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))(/(1[0-2]|[0-9]))?$", - "type": "string" - }, - "PortRange": { - "additionalProperties": false, - "properties": { - "From": { - "maximum": 65535, - "minimum": 0, - "type": "integer" - }, - "To": { - "maximum": 65535, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "From", - "To" - ], - "type": "object" - }, - "Protocol": { - "pattern": "^(tcp|udp|icmp|([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]))$", - "type": "string" - }, - "RuleAction": { - "enum": [ - "allow", - "deny" - ], - "type": "string" - } - }, - "required": [ - "Egress", - "Protocol", - "RuleAction" - ], - "type": "object" - }, - "NetworkAclEntryList": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/NetworkAclEntry" - }, - "type": "array" - }, - "NetworkAclEntrySet": { - "additionalProperties": false, - "anyOf": [ - { - "required": [ - "FirstEntries" - ] - }, - { - "required": [ - "LastEntries" - ] - } - ], - "properties": { - "FirstEntries": { - "$ref": "#/definitions/NetworkAclEntryList" - }, - "ForceRemediateForFirstEntries": { - "type": "boolean" - }, - "ForceRemediateForLastEntries": { - "type": "boolean" - }, - "LastEntries": { - "$ref": "#/definitions/NetworkAclEntryList" - } - }, - "required": [ - "ForceRemediateForFirstEntries", - "ForceRemediateForLastEntries" - ], - "type": "object" - }, - "NetworkFirewallPolicy": { - "additionalProperties": false, - "properties": { - "FirewallDeploymentModel": { - "$ref": "#/definitions/FirewallDeploymentModel" - } - }, - "required": [ - "FirewallDeploymentModel" - ], - "type": "object" - }, - "OrganizationalUnitId": { - "maxLength": 68, - "minLength": 16, - "pattern": "^(ou-[0-9a-z]{4,32}-[a-z0-9]{8,32})$", - "type": "string" - }, - "PolicyOption": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "NetworkFirewallPolicy" - ] - }, - { - "required": [ - "ThirdPartyFirewallPolicy" - ] - }, - { - "required": [ - "NetworkAclCommonPolicy" - ] - } - ], - "properties": { - "NetworkAclCommonPolicy": { - "$ref": "#/definitions/NetworkAclCommonPolicy" - }, - "NetworkFirewallPolicy": { - "$ref": "#/definitions/NetworkFirewallPolicy" - }, - "ThirdPartyFirewallPolicy": { - "$ref": "#/definitions/ThirdPartyFirewallPolicy" - } - }, - "type": "object" - }, - "PolicyTag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "pattern": "^([^\\s]*)$", - "type": "string" - }, - "Value": { - "maxLength": 256, - "pattern": "^([^\\s]*)$", - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - }, - "PolicyType": { - "enum": [ - "WAF", - "WAFV2", - "SHIELD_ADVANCED", - "SECURITY_GROUPS_COMMON", - "SECURITY_GROUPS_CONTENT_AUDIT", - "SECURITY_GROUPS_USAGE_AUDIT", - "NETWORK_FIREWALL", - "THIRD_PARTY_FIREWALL", - "DNS_FIREWALL", - "IMPORT_NETWORK_FIREWALL", - "NETWORK_ACL_COMMON" - ], - "type": "string" - }, - "ResourceArn": { - "maxLength": 1024, - "minLength": 1, - "pattern": "^([^\\s]*)$", - "type": "string" - }, - "ResourceTag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - }, - "ResourceType": { - "maxLength": 128, - "minLength": 1, - "pattern": "^([^\\s]*)$", - "type": "string" - }, - "SecurityServicePolicyData": { - "additionalProperties": false, - "properties": { - "ManagedServiceData": { - "$ref": "#/definitions/ManagedServiceData" - }, - "PolicyOption": { - "$ref": "#/definitions/PolicyOption" - }, - "Type": { - "$ref": "#/definitions/PolicyType" - } - }, - "required": [ - "Type" - ], - "type": "object" - }, - "ThirdPartyFirewallPolicy": { - "additionalProperties": false, - "properties": { - "FirewallDeploymentModel": { - "$ref": "#/definitions/FirewallDeploymentModel" - } - }, - "required": [ - "FirewallDeploymentModel" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/ResourceArn" - }, - "DeleteAllPolicyResources": { - "type": "boolean" - }, - "ExcludeMap": { - "$ref": "#/definitions/IEMap" - }, - "ExcludeResourceTags": { - "type": "boolean" - }, - "Id": { - "maxLength": 36, - "minLength": 36, - "pattern": "^[a-z0-9A-Z-]{36}$", - "type": "string" - }, - "IncludeMap": { - "$ref": "#/definitions/IEMap" - }, - "PolicyDescription": { - "maxLength": 256, - "pattern": "^([a-zA-Z0-9_.:/=+\\-@\\s]+)$", - "type": "string" - }, - "PolicyName": { - "maxLength": 1024, - "minLength": 1, - "pattern": "^([a-zA-Z0-9_.:/=+\\-@\\s]+)$", - "type": "string" - }, - "RemediationEnabled": { - "type": "boolean" - }, - "ResourceSetIds": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/Base62Id" - }, - "type": "array", - "uniqueItems": true - }, - "ResourceTags": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/ResourceTag" - }, - "maxItems": 8, - "type": "array" - }, - "ResourceType": { - "$ref": "#/definitions/ResourceType" - }, - "ResourceTypeList": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/ResourceType" - }, - "type": "array" - }, - "ResourcesCleanUp": { - "type": "boolean" - }, - "SecurityServicePolicyData": { - "$ref": "#/definitions/SecurityServicePolicyData" - }, - "Tags": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/PolicyTag" - }, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/Id" - ], - "required": [ - "ExcludeResourceTags", - "PolicyName", - "RemediationEnabled", - "SecurityServicePolicyData" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-fms.git", - "typeName": "AWS::FMS::Policy", - "writeOnlyProperties": [ - "/properties/DeleteAllPolicyResources" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-route53profiles-profile.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-route53profiles-profile.json new file mode 100644 index 0000000000..123295aef9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_west_1/aws-route53profiles-profile.json @@ -0,0 +1,76 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "ClientToken": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Id", + "/properties/ClientToken" + ], + "required": [ + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Profiles::Profile", + "writeOnlyProperties": [ + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-route53profiles-profileassociation.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-route53profiles-profileassociation.json new file mode 100644 index 0000000000..b1857370f9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_west_1/aws-route53profiles-profileassociation.json @@ -0,0 +1,78 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name", + "/properties/ResourceId", + "/properties/ProfileId" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "ProfileId": { + "type": "string" + }, + "ResourceId": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "ResourceId", + "ProfileId", + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Profiles::ProfileAssociation", + "writeOnlyProperties": [ + "/properties/Arn", + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-securityhub-automationrule.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-securityhub-automationrule.json deleted file mode 100644 index 07eef12ca5..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-securityhub-automationrule.json +++ /dev/null @@ -1,690 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AutomationRulesAction": { - "properties": { - "FindingFieldsUpdate": { - "$ref": "#/definitions/AutomationRulesFindingFieldsUpdate" - }, - "Type": { - "enum": [ - "FINDING_FIELDS_UPDATE" - ], - "type": "string" - } - }, - "required": [ - "Type", - "FindingFieldsUpdate" - ], - "type": "object" - }, - "AutomationRulesFindingFieldsUpdate": { - "properties": { - "Confidence": { - "$ref": "#/definitions/int100" - }, - "Criticality": { - "$ref": "#/definitions/int100" - }, - "Note": { - "$ref": "#/definitions/NoteUpdate", - "type": "object" - }, - "RelatedFindings": { - "items": { - "$ref": "#/definitions/RelatedFinding" - }, - "maxItems": 10, - "minItems": 1, - "type": "array" - }, - "Severity": { - "$ref": "#/definitions/SeverityUpdate", - "type": "object" - }, - "Types": { - "items": { - "pattern": "^([^/]+)(/[^/]+){0,2}$", - "type": "string" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UserDefinedFields": { - "$ref": "#/definitions/map" - }, - "VerificationState": { - "enum": [ - "UNKNOWN", - "TRUE_POSITIVE", - "FALSE_POSITIVE", - "BENIGN_POSITIVE" - ], - "type": "string" - }, - "Workflow": { - "$ref": "#/definitions/WorkflowUpdate", - "type": "object" - } - }, - "type": "object" - }, - "AutomationRulesFindingFilters": { - "additionalProperties": false, - "properties": { - "AwsAccountId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "CompanyName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceAssociatedStandardsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceSecurityControlId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Confidence": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "CreatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Criticality": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Description": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "FirstObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "GeneratorId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Id": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "LastObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteText": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedBy": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RecordState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceDetailsOther": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "ResourcePartition": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceRegion": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceTags": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceType": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SeverityLabel": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SourceUrl": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Title": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Type": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UserDefinedFields": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "VerificationState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "WorkflowStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - } - }, - "type": "object" - }, - "BooleanFilter": { - "additionalProperties": false, - "properties": { - "Value": { - "type": "boolean" - } - }, - "required": [ - "Value" - ], - "type": "object" - }, - "DateFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "DateRange" - ] - }, - { - "allOf": [ - { - "required": [ - "Start" - ] - }, - { - "required": [ - "End" - ] - } - ] - } - ], - "properties": { - "DateRange": { - "$ref": "#/definitions/DateRange" - }, - "End": { - "$ref": "#/definitions/ISO8601DateString" - }, - "Start": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "type": "object" - }, - "DateRange": { - "additionalProperties": false, - "properties": { - "Unit": { - "enum": [ - "DAYS" - ], - "type": "string" - }, - "Value": { - "type": "number" - } - }, - "required": [ - "Unit", - "Value" - ], - "type": "object" - }, - "ISO8601DateString": { - "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$", - "type": "string" - }, - "MapFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "enum": [ - "EQUALS", - "NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Key", - "Value" - ], - "type": "object" - }, - "NonEmptyString": { - "minLength": 1, - "type": "string" - }, - "NoteUpdate": { - "additionalProperties": false, - "properties": { - "Text": { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - "UpdatedBy": { - "$ref": "#/definitions/arnOrId" - } - }, - "required": [ - "Text", - "UpdatedBy" - ], - "type": "object" - }, - "NumberFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "Eq" - ] - }, - { - "anyOf": [ - { - "required": [ - "Gte" - ] - }, - { - "required": [ - "Lte" - ] - } - ] - } - ], - "properties": { - "Eq": { - "type": "number" - }, - "Gte": { - "type": "number" - }, - "Lte": { - "type": "number" - } - }, - "type": "object" - }, - "RelatedFinding": { - "additionalProperties": false, - "properties": { - "Id": { - "$ref": "#/definitions/arnOrId" - }, - "ProductArn": { - "$ref": "#/definitions/arn" - } - }, - "required": [ - "ProductArn", - "Id" - ], - "type": "object" - }, - "SeverityUpdate": { - "additionalProperties": false, - "properties": { - "Label": { - "enum": [ - "INFORMATIONAL", - "LOW", - "MEDIUM", - "HIGH", - "CRITICAL" - ], - "type": "string" - }, - "Normalized": { - "$ref": "#/definitions/int100" - }, - "Product": { - "type": "number" - } - }, - "type": "object" - }, - "StringFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "$ref": "#/definitions/StringFilterComparison" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Value" - ], - "type": "object" - }, - "StringFilterComparison": { - "enum": [ - "EQUALS", - "PREFIX", - "NOT_EQUALS", - "PREFIX_NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - "^[a-zA-Z0-9]{1,128}$": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "WorkflowUpdate": { - "additionalProperties": false, - "properties": { - "Status": { - "enum": [ - "NEW", - "NOTIFIED", - "RESOLVED", - "SUPPRESSED" - ], - "type": "string" - } - }, - "required": [ - "Status" - ], - "type": "object" - }, - "arn": { - "maxLength": 2048, - "minLength": 12, - "pattern": "^arn:(aws|aws-cn|aws-us-gov|aws-iso-?[a-z]{0,2}):[A-Za-z0-9]{1,63}:[a-z]+-([a-z]{1,10}-)?[a-z]+-[0-9]+:([0-9]{12})?:.+$", - "type": "string" - }, - "arnOrId": { - "anyOf": [ - { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - { - "$ref": "#/definitions/arn" - } - ] - }, - "int100": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "map": { - "additionalProperties": false, - "maxProperties": 50, - "minProperties": 1, - "patternProperties": { - "^[-_+=.:/@\\w\\s]{1,128}$": { - "maxLength": 1024, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "timestamp": { - "format": "date-time", - "pattern": "(\\d\\d\\d\\d)-[0-1](\\d)-[0-3](\\d)[Tt](?:[0-2](\\d):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?(?:[Zz]|[+-](\\d\\d)(?::?(\\d\\d))?)$", - "type": "string" - } - }, - "primaryIdentifier": [ - "/properties/RuleArn" - ], - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/AutomationRulesAction" - }, - "maxItems": 1, - "minItems": 1, - "type": "array" - }, - "CreatedAt": { - "$ref": "#/definitions/ISO8601DateString" - }, - "CreatedBy": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "Criteria": { - "$ref": "#/definitions/AutomationRulesFindingFilters" - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "IsTerminal": { - "type": "boolean" - }, - "RuleArn": { - "pattern": "arn:aws\\S*:securityhub:\\S*", - "type": "string" - }, - "RuleName": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "RuleOrder": { - "maximum": 1000, - "minimum": 1, - "type": "integer" - }, - "RuleStatus": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "Tags": { - "$ref": "#/definitions/Tags" - }, - "UpdatedAt": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "readOnlyProperties": [ - "/properties/RuleArn", - "/properties/CreatedAt", - "/properties/UpdatedAt", - "/properties/CreatedBy" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecurityHub::AutomationRule" -} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-securityhub-securitycontrol.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-securityhub-securitycontrol.json deleted file mode 100644 index 23fe0cf5e5..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-securityhub-securitycontrol.json +++ /dev/null @@ -1,164 +0,0 @@ -{ - "additionalIdentifiers": [ - [ - "/properties/SecurityControlArn" - ] - ], - "additionalProperties": false, - "anyOf": [ - { - "required": [ - "SecurityControlId" - ] - }, - { - "required": [ - "SecurityControlArn" - ] - } - ], - "definitions": { - "IntegerList": { - "items": { - "type": "integer" - }, - "type": "array" - }, - "NonEmptyString": { - "pattern": ".*\\S.*", - "type": "string" - }, - "NonEmptyStringList": { - "items": { - "$ref": "#/definitions/NonEmptyString" - }, - "type": "array" - }, - "ParameterConfiguration": { - "additionalProperties": false, - "properties": { - "Value": { - "$ref": "#/definitions/ParameterValue" - }, - "ValueType": { - "enum": [ - "DEFAULT", - "CUSTOM" - ], - "type": "string" - } - }, - "required": [ - "ValueType" - ], - "type": "object" - }, - "ParameterValue": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "Boolean" - ] - }, - { - "required": [ - "Double" - ] - }, - { - "required": [ - "Enum" - ] - }, - { - "required": [ - "EnumList" - ] - }, - { - "required": [ - "Integer" - ] - }, - { - "required": [ - "IntegerList" - ] - }, - { - "required": [ - "String" - ] - }, - { - "required": [ - "StringList" - ] - } - ], - "properties": { - "Boolean": { - "type": "boolean" - }, - "Double": { - "type": "number" - }, - "Enum": { - "$ref": "#/definitions/NonEmptyString" - }, - "EnumList": { - "$ref": "#/definitions/NonEmptyStringList" - }, - "Integer": { - "type": "integer" - }, - "IntegerList": { - "$ref": "#/definitions/IntegerList" - }, - "String": { - "$ref": "#/definitions/NonEmptyString" - }, - "StringList": { - "$ref": "#/definitions/NonEmptyStringList" - } - }, - "type": "object" - }, - "Parameters": { - "additionalProperties": false, - "patternProperties": { - ".*\\S.*": { - "$ref": "#/definitions/ParameterConfiguration" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/SecurityControlId" - ], - "properties": { - "LastUpdateReason": { - "pattern": "^([^\u0000-\u007f]|[-_ a-zA-Z0-9])+$", - "type": "string" - }, - "Parameters": { - "$ref": "#/definitions/Parameters" - }, - "SecurityControlArn": { - "$ref": "#/definitions/NonEmptyString" - }, - "SecurityControlId": { - "$ref": "#/definitions/NonEmptyString" - } - }, - "required": [ - "Parameters" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", - "tagging": { - "taggable": false - }, - "typeName": "AWS::SecurityHub::SecurityControl" -} diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py b/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py index e9caeac17f..da0add17db 100644 --- a/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py @@ -716,6 +716,7 @@ "aws-acmpca-certificateauthorityactivation.json", "aws-acmpca-permission.json", "aws-amazonmq-broker.json", + "aws-amazonmq-configuration.json", "aws-apigateway-account.json", "aws-apigateway-apikey.json", "aws-apigateway-authorizer.json", @@ -961,7 +962,6 @@ "aws-efs-mounttarget.json", "aws-eks-accessentry.json", "aws-eks-addon.json", - "aws-eks-cluster.json", "aws-eks-identityproviderconfig.json", "aws-eks-nodegroup.json", "aws-eks-podidentityassociation.json", @@ -1219,6 +1219,7 @@ "aws-rds-dbsecuritygroupingress.json", "aws-rds-dbsubnetgroup.json", "aws-rds-eventsubscription.json", + "aws-rds-globalcluster.json", "aws-rds-integration.json", "aws-rds-optiongroup.json", "aws-redshift-cluster.json", diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-eks-cluster.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-eks-cluster.json new file mode 100644 index 0000000000..7e3206352a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_north_1/aws-eks-cluster.json @@ -0,0 +1,386 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/OutpostConfig", + "/properties/EncryptionConfig", + "/properties/KubernetesNetworkConfig", + "/properties/AccessConfig/BootstrapClusterCreatorAdminPermissions", + "/properties/Name", + "/properties/RoleArn", + "/properties/BootstrapSelfManagedAddons" + ], + "definitions": { + "AccessConfig": { + "additionalProperties": false, + "properties": { + "AuthenticationMode": { + "enum": [ + "CONFIG_MAP", + "API_AND_CONFIG_MAP", + "API" + ], + "type": "string" + }, + "BootstrapClusterCreatorAdminPermissions": { + "type": "boolean" + } + }, + "type": "object" + }, + "ClusterLogging": { + "additionalProperties": false, + "properties": { + "EnabledTypes": { + "$ref": "#/definitions/EnabledTypes" + } + }, + "type": "object" + }, + "ControlPlanePlacement": { + "additionalProperties": false, + "properties": { + "GroupName": { + "type": "string" + } + }, + "type": "object" + }, + "EnabledTypes": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LoggingTypeConfig" + }, + "type": "array" + }, + "EncryptionConfig": { + "additionalProperties": false, + "properties": { + "Provider": { + "$ref": "#/definitions/Provider" + }, + "Resources": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "KubernetesNetworkConfig": { + "additionalProperties": false, + "properties": { + "IpFamily": { + "enum": [ + "ipv4", + "ipv6" + ], + "type": "string" + }, + "ServiceIpv4Cidr": { + "type": "string" + }, + "ServiceIpv6Cidr": { + "type": "string" + } + }, + "type": "object" + }, + "Logging": { + "additionalProperties": false, + "properties": { + "ClusterLogging": { + "$ref": "#/definitions/ClusterLogging" + } + }, + "type": "object" + }, + "LoggingTypeConfig": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "api", + "audit", + "authenticator", + "controllerManager", + "scheduler" + ], + "type": "string" + } + }, + "type": "object" + }, + "OutpostConfig": { + "additionalProperties": false, + "properties": { + "ControlPlaneInstanceType": { + "type": "string" + }, + "ControlPlanePlacement": { + "$ref": "#/definitions/ControlPlanePlacement" + }, + "OutpostArns": { + "insertionOrder": false, + "items": { + "minItems": 1, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "OutpostArns", + "ControlPlaneInstanceType" + ], + "type": "object" + }, + "Provider": { + "additionalProperties": false, + "properties": { + "KeyArn": { + "type": "string" + } + }, + "type": "object" + }, + "RemoteNodeNetwork": { + "additionalProperties": false, + "properties": { + "Cidrs": { + "insertionOrder": false, + "items": { + "minItems": 1, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "Cidrs" + ], + "type": "object" + }, + "RemoteNodeNetworks": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/RemoteNodeNetwork" + }, + "type": "array" + }, + "RemotePodNetwork": { + "additionalProperties": false, + "properties": { + "Cidrs": { + "insertionOrder": false, + "items": { + "minItems": 1, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "Cidrs" + ], + "type": "object" + }, + "RemotePodNetworks": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/RemotePodNetwork" + }, + "type": "array" + }, + "ResourcesVpcConfig": { + "additionalProperties": false, + "properties": { + "EndpointPrivateAccess": { + "type": "boolean" + }, + "EndpointPublicAccess": { + "type": "boolean" + }, + "PublicAccessCidrs": { + "insertionOrder": false, + "items": { + "minItems": 1, + "type": "string" + }, + "type": "array" + }, + "SecurityGroupIds": { + "format": "AWS::EC2::SecurityGroup.Ids", + "insertionOrder": false, + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "minItems": 1, + "type": "string" + }, + "type": "array" + }, + "SubnetIds": { + "insertionOrder": false, + "items": { + "minItems": 1, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SubnetIds" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "UpgradePolicy": { + "additionalProperties": false, + "properties": { + "SupportType": { + "enum": [ + "STANDARD", + "EXTENDED" + ], + "type": "string" + } + }, + "type": "object" + }, + "ZonalShiftConfig": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "AccessConfig": { + "$ref": "#/definitions/AccessConfig" + }, + "Arn": { + "type": "string" + }, + "BootstrapSelfManagedAddons": { + "type": "boolean" + }, + "CertificateAuthorityData": { + "type": "string" + }, + "ClusterSecurityGroupId": { + "type": "string" + }, + "EncryptionConfig": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/EncryptionConfig", + "maxItems": 1 + }, + "type": "array" + }, + "EncryptionConfigKeyArn": { + "type": "string" + }, + "Endpoint": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "KubernetesNetworkConfig": { + "$ref": "#/definitions/KubernetesNetworkConfig" + }, + "Logging": { + "$ref": "#/definitions/Logging" + }, + "Name": { + "maxLength": 100, + "minLength": 1, + "pattern": "^[0-9A-Za-z][A-Za-z0-9\\-_]*", + "type": "string" + }, + "OpenIdConnectIssuerUrl": { + "type": "string" + }, + "OutpostConfig": { + "$ref": "#/definitions/OutpostConfig" + }, + "ResourcesVpcConfig": { + "$ref": "#/definitions/ResourcesVpcConfig" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "UpgradePolicy": { + "$ref": "#/definitions/UpgradePolicy" + }, + "Version": { + "pattern": "1\\.\\d\\d", + "type": "string" + }, + "ZonalShiftConfig": { + "$ref": "#/definitions/ZonalShiftConfig" + } + }, + "readOnlyProperties": [ + "/properties/Id", + "/properties/Arn", + "/properties/Endpoint", + "/properties/CertificateAuthorityData", + "/properties/ClusterSecurityGroupId", + "/properties/EncryptionConfigKeyArn", + "/properties/OpenIdConnectIssuerUrl", + "/properties/KubernetesNetworkConfig/ServiceIpv6Cidr" + ], + "required": [ + "RoleArn", + "ResourcesVpcConfig" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-eks.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::EKS::Cluster", + "writeOnlyProperties": [ + "/properties/AccessConfig/BootstrapClusterCreatorAdminPermissions", + "/properties/BootstrapSelfManagedAddons" + ] +} diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-rds-globalcluster.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-rds-globalcluster.json deleted file mode 100644 index c7d134d12e..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_north_1/aws-rds-globalcluster.json +++ /dev/null @@ -1,98 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/GlobalClusterIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/Engine" - ], - "definitions": { - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "oneOf": [ - { - "required": [ - "SourceDBClusterIdentifier" - ] - }, - { - "required": [ - "Engine" - ] - } - ], - "primaryIdentifier": [ - "/properties/GlobalClusterIdentifier" - ], - "properties": { - "DeletionProtection": { - "type": "boolean" - }, - "Engine": { - "enum": [ - "aurora", - "aurora-mysql", - "aurora-postgresql" - ], - "type": "string" - }, - "EngineLifecycleSupport": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "GlobalClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "SourceDBClusterIdentifier": { - "oneOf": [ - { - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$" - }, - { - "pattern": "^(?=.{40,128}$)arn.*" - } - ], - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/GlobalClusterIdentifier": "$lowercase(GlobalClusterIdentifier)" - }, - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", - "typeName": "AWS::RDS::GlobalCluster" -} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py b/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py index 855c67c6d9..7c4c8e661c 100644 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py @@ -675,7 +675,6 @@ "aws-acmpca-certificateauthorityactivation.json", "aws-acmpca-permission.json", "aws-amazonmq-broker.json", - "aws-amazonmq-configuration.json", "aws-apigateway-account.json", "aws-apigateway-apikey.json", "aws-apigateway-authorizer.json", @@ -880,7 +879,6 @@ "aws-ec2-trafficmirrorfilterrule.json", "aws-ec2-trafficmirrortarget.json", "aws-ec2-transitgateway.json", - "aws-ec2-transitgatewayattachment.json", "aws-ec2-transitgatewayconnect.json", "aws-ec2-transitgatewaymulticastdomain.json", "aws-ec2-transitgatewaymulticastdomainassociation.json", @@ -891,7 +889,6 @@ "aws-ec2-transitgatewayroutetable.json", "aws-ec2-transitgatewayroutetableassociation.json", "aws-ec2-transitgatewayroutetablepropagation.json", - "aws-ec2-transitgatewayvpcattachment.json", "aws-ec2-volume.json", "aws-ec2-volumeattachment.json", "aws-ec2-vpc.json", @@ -960,6 +957,7 @@ "aws-eventschemas-registry.json", "aws-eventschemas-registrypolicy.json", "aws-eventschemas-schema.json", + "aws-fms-policy.json", "aws-frauddetector-list.json", "aws-fsx-datarepositoryassociation.json", "aws-fsx-snapshot.json", @@ -1201,6 +1199,7 @@ "aws-securityhub-organizationconfiguration.json", "aws-securityhub-policyassociation.json", "aws-securityhub-productsubscription.json", + "aws-securityhub-securitycontrol.json", "aws-securityhub-standard.json", "aws-servicecatalog-cloudformationproduct.json", "aws-servicecatalog-cloudformationprovisionedproduct.json", diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-amazonmq-configuration.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-amazonmq-configuration.json new file mode 100644 index 0000000000..81cc7369f7 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-amazonmq-configuration.json @@ -0,0 +1,77 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/EngineType", + "/properties/Name", + "/properties/AuthenticationStrategy", + "/properties/EngineVersion" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AuthenticationStrategy": { + "type": "string" + }, + "Data": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "EngineType": { + "type": "string" + }, + "EngineVersion": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Revision": { + "type": "integer" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Revision", + "/properties/Id", + "/properties/Arn" + ], + "required": [ + "EngineType", + "Data", + "Name" + ], + "typeName": "AWS::AmazonMQ::Configuration" +} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-ec2-transitgatewayattachment.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-ec2-transitgatewayattachment.json new file mode 100644 index 0000000000..e78e8ce01d --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-ec2-transitgatewayattachment.json @@ -0,0 +1,92 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/TransitGatewayId", + "/properties/VpcId" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Id": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "properties": { + "ApplianceModeSupport": { + "type": "string" + }, + "DnsSupport": { + "type": "string" + }, + "Ipv6Support": { + "type": "string" + } + }, + "type": "object" + }, + "SubnetIds": { + "insertionOrder": false, + "items": { + "relationshipRef": { + "propertyPath": "/properties/SubnetId", + "typeName": "AWS::EC2::Subnet" + }, + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + }, + "TransitGatewayId": { + "type": "string" + }, + "VpcId": { + "format": "AWS::EC2::VPC.Id", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "VpcId", + "SubnetIds", + "TransitGatewayId" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-transitgateway", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::EC2::TransitGatewayAttachment" +} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-ec2-transitgatewayvpcattachment.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-ec2-transitgatewayvpcattachment.json new file mode 100644 index 0000000000..d9f49316d2 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-ec2-transitgatewayvpcattachment.json @@ -0,0 +1,109 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/TransitGatewayId", + "/properties/SubnetIds", + "/properties/VpcId" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "AddSubnetIds": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "Id": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "properties": { + "ApplianceModeSupport": { + "type": "string" + }, + "DnsSupport": { + "type": "string" + }, + "Ipv6Support": { + "type": "string" + } + }, + "type": "object" + }, + "RemoveSubnetIds": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "SubnetIds": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + }, + "TransitGatewayId": { + "type": "string" + }, + "VpcId": { + "format": "AWS::EC2::VPC.Id", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "SubnetIds", + "VpcId", + "TransitGatewayId" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-transitgateway", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::EC2::TransitGatewayVpcAttachment", + "writeOnlyProperties": [ + "/properties/AddSubnetIds", + "/properties/RemoveSubnetIds" + ] +} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-fms-policy.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-fms-policy.json deleted file mode 100644 index b42a8ac885..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-fms-policy.json +++ /dev/null @@ -1,416 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AccountId": { - "maxLength": 12, - "minLength": 12, - "pattern": "^([0-9]*)$", - "type": "string" - }, - "Base62Id": { - "maxLength": 22, - "minLength": 22, - "pattern": "^[a-z0-9A-Z]{22}$", - "type": "string" - }, - "FirewallDeploymentModel": { - "enum": [ - "DISTRIBUTED", - "CENTRALIZED" - ], - "type": "string" - }, - "IEMap": { - "additionalProperties": false, - "properties": { - "ACCOUNT": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/AccountId" - }, - "type": "array" - }, - "ORGUNIT": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/OrganizationalUnitId" - }, - "type": "array" - } - }, - "type": "object" - }, - "ManagedServiceData": { - "maxLength": 30000, - "minLength": 1, - "type": "string" - }, - "NetworkAclCommonPolicy": { - "additionalProperties": false, - "properties": { - "NetworkAclEntrySet": { - "$ref": "#/definitions/NetworkAclEntrySet" - } - }, - "required": [ - "NetworkAclEntrySet" - ], - "type": "object" - }, - "NetworkAclEntry": { - "additionalProperties": false, - "properties": { - "CidrBlock": { - "pattern": "^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\\/([0-9]|[1-2][0-9]|3[0-2]))$", - "type": "string" - }, - "Egress": { - "type": "boolean" - }, - "IcmpTypeCode": { - "additionalProperties": false, - "properties": { - "Code": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "Type": { - "maximum": 255, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "Code", - "Type" - ], - "type": "object" - }, - "Ipv6CidrBlock": { - "pattern": "^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))(/(1[0-2]|[0-9]))?$", - "type": "string" - }, - "PortRange": { - "additionalProperties": false, - "properties": { - "From": { - "maximum": 65535, - "minimum": 0, - "type": "integer" - }, - "To": { - "maximum": 65535, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "From", - "To" - ], - "type": "object" - }, - "Protocol": { - "pattern": "^(tcp|udp|icmp|([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]))$", - "type": "string" - }, - "RuleAction": { - "enum": [ - "allow", - "deny" - ], - "type": "string" - } - }, - "required": [ - "Egress", - "Protocol", - "RuleAction" - ], - "type": "object" - }, - "NetworkAclEntryList": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/NetworkAclEntry" - }, - "type": "array" - }, - "NetworkAclEntrySet": { - "additionalProperties": false, - "anyOf": [ - { - "required": [ - "FirstEntries" - ] - }, - { - "required": [ - "LastEntries" - ] - } - ], - "properties": { - "FirstEntries": { - "$ref": "#/definitions/NetworkAclEntryList" - }, - "ForceRemediateForFirstEntries": { - "type": "boolean" - }, - "ForceRemediateForLastEntries": { - "type": "boolean" - }, - "LastEntries": { - "$ref": "#/definitions/NetworkAclEntryList" - } - }, - "required": [ - "ForceRemediateForFirstEntries", - "ForceRemediateForLastEntries" - ], - "type": "object" - }, - "NetworkFirewallPolicy": { - "additionalProperties": false, - "properties": { - "FirewallDeploymentModel": { - "$ref": "#/definitions/FirewallDeploymentModel" - } - }, - "required": [ - "FirewallDeploymentModel" - ], - "type": "object" - }, - "OrganizationalUnitId": { - "maxLength": 68, - "minLength": 16, - "pattern": "^(ou-[0-9a-z]{4,32}-[a-z0-9]{8,32})$", - "type": "string" - }, - "PolicyOption": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "NetworkFirewallPolicy" - ] - }, - { - "required": [ - "ThirdPartyFirewallPolicy" - ] - }, - { - "required": [ - "NetworkAclCommonPolicy" - ] - } - ], - "properties": { - "NetworkAclCommonPolicy": { - "$ref": "#/definitions/NetworkAclCommonPolicy" - }, - "NetworkFirewallPolicy": { - "$ref": "#/definitions/NetworkFirewallPolicy" - }, - "ThirdPartyFirewallPolicy": { - "$ref": "#/definitions/ThirdPartyFirewallPolicy" - } - }, - "type": "object" - }, - "PolicyTag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "pattern": "^([^\\s]*)$", - "type": "string" - }, - "Value": { - "maxLength": 256, - "pattern": "^([^\\s]*)$", - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - }, - "PolicyType": { - "enum": [ - "WAF", - "WAFV2", - "SHIELD_ADVANCED", - "SECURITY_GROUPS_COMMON", - "SECURITY_GROUPS_CONTENT_AUDIT", - "SECURITY_GROUPS_USAGE_AUDIT", - "NETWORK_FIREWALL", - "THIRD_PARTY_FIREWALL", - "DNS_FIREWALL", - "IMPORT_NETWORK_FIREWALL", - "NETWORK_ACL_COMMON" - ], - "type": "string" - }, - "ResourceArn": { - "maxLength": 1024, - "minLength": 1, - "pattern": "^([^\\s]*)$", - "type": "string" - }, - "ResourceTag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - }, - "ResourceType": { - "maxLength": 128, - "minLength": 1, - "pattern": "^([^\\s]*)$", - "type": "string" - }, - "SecurityServicePolicyData": { - "additionalProperties": false, - "properties": { - "ManagedServiceData": { - "$ref": "#/definitions/ManagedServiceData" - }, - "PolicyOption": { - "$ref": "#/definitions/PolicyOption" - }, - "Type": { - "$ref": "#/definitions/PolicyType" - } - }, - "required": [ - "Type" - ], - "type": "object" - }, - "ThirdPartyFirewallPolicy": { - "additionalProperties": false, - "properties": { - "FirewallDeploymentModel": { - "$ref": "#/definitions/FirewallDeploymentModel" - } - }, - "required": [ - "FirewallDeploymentModel" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/ResourceArn" - }, - "DeleteAllPolicyResources": { - "type": "boolean" - }, - "ExcludeMap": { - "$ref": "#/definitions/IEMap" - }, - "ExcludeResourceTags": { - "type": "boolean" - }, - "Id": { - "maxLength": 36, - "minLength": 36, - "pattern": "^[a-z0-9A-Z-]{36}$", - "type": "string" - }, - "IncludeMap": { - "$ref": "#/definitions/IEMap" - }, - "PolicyDescription": { - "maxLength": 256, - "pattern": "^([a-zA-Z0-9_.:/=+\\-@\\s]+)$", - "type": "string" - }, - "PolicyName": { - "maxLength": 1024, - "minLength": 1, - "pattern": "^([a-zA-Z0-9_.:/=+\\-@\\s]+)$", - "type": "string" - }, - "RemediationEnabled": { - "type": "boolean" - }, - "ResourceSetIds": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/Base62Id" - }, - "type": "array", - "uniqueItems": true - }, - "ResourceTags": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/ResourceTag" - }, - "maxItems": 8, - "type": "array" - }, - "ResourceType": { - "$ref": "#/definitions/ResourceType" - }, - "ResourceTypeList": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/ResourceType" - }, - "type": "array" - }, - "ResourcesCleanUp": { - "type": "boolean" - }, - "SecurityServicePolicyData": { - "$ref": "#/definitions/SecurityServicePolicyData" - }, - "Tags": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/PolicyTag" - }, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/Id" - ], - "required": [ - "ExcludeResourceTags", - "PolicyName", - "RemediationEnabled", - "SecurityServicePolicyData" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-fms.git", - "typeName": "AWS::FMS::Policy", - "writeOnlyProperties": [ - "/properties/DeleteAllPolicyResources" - ] -} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-securityhub-securitycontrol.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-securityhub-securitycontrol.json deleted file mode 100644 index 23fe0cf5e5..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-securityhub-securitycontrol.json +++ /dev/null @@ -1,164 +0,0 @@ -{ - "additionalIdentifiers": [ - [ - "/properties/SecurityControlArn" - ] - ], - "additionalProperties": false, - "anyOf": [ - { - "required": [ - "SecurityControlId" - ] - }, - { - "required": [ - "SecurityControlArn" - ] - } - ], - "definitions": { - "IntegerList": { - "items": { - "type": "integer" - }, - "type": "array" - }, - "NonEmptyString": { - "pattern": ".*\\S.*", - "type": "string" - }, - "NonEmptyStringList": { - "items": { - "$ref": "#/definitions/NonEmptyString" - }, - "type": "array" - }, - "ParameterConfiguration": { - "additionalProperties": false, - "properties": { - "Value": { - "$ref": "#/definitions/ParameterValue" - }, - "ValueType": { - "enum": [ - "DEFAULT", - "CUSTOM" - ], - "type": "string" - } - }, - "required": [ - "ValueType" - ], - "type": "object" - }, - "ParameterValue": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "Boolean" - ] - }, - { - "required": [ - "Double" - ] - }, - { - "required": [ - "Enum" - ] - }, - { - "required": [ - "EnumList" - ] - }, - { - "required": [ - "Integer" - ] - }, - { - "required": [ - "IntegerList" - ] - }, - { - "required": [ - "String" - ] - }, - { - "required": [ - "StringList" - ] - } - ], - "properties": { - "Boolean": { - "type": "boolean" - }, - "Double": { - "type": "number" - }, - "Enum": { - "$ref": "#/definitions/NonEmptyString" - }, - "EnumList": { - "$ref": "#/definitions/NonEmptyStringList" - }, - "Integer": { - "type": "integer" - }, - "IntegerList": { - "$ref": "#/definitions/IntegerList" - }, - "String": { - "$ref": "#/definitions/NonEmptyString" - }, - "StringList": { - "$ref": "#/definitions/NonEmptyStringList" - } - }, - "type": "object" - }, - "Parameters": { - "additionalProperties": false, - "patternProperties": { - ".*\\S.*": { - "$ref": "#/definitions/ParameterConfiguration" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/SecurityControlId" - ], - "properties": { - "LastUpdateReason": { - "pattern": "^([^\u0000-\u007f]|[-_ a-zA-Z0-9])+$", - "type": "string" - }, - "Parameters": { - "$ref": "#/definitions/Parameters" - }, - "SecurityControlArn": { - "$ref": "#/definitions/NonEmptyString" - }, - "SecurityControlId": { - "$ref": "#/definitions/NonEmptyString" - } - }, - "required": [ - "Parameters" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", - "tagging": { - "taggable": false - }, - "typeName": "AWS::SecurityHub::SecurityControl" -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py b/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py index 6a5bd97dad..277af08ff7 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py @@ -1269,6 +1269,7 @@ "aws-acmpca-certificateauthorityactivation.json", "aws-acmpca-permission.json", "aws-amazonmq-broker.json", + "aws-amazonmq-configuration.json", "aws-amazonmq-configurationassociation.json", "aws-amplify-app.json", "aws-amplify-branch.json", @@ -1466,7 +1467,6 @@ "aws-codeartifact-domain.json", "aws-codeartifact-packagegroup.json", "aws-codeartifact-repository.json", - "aws-codebuild-fleet.json", "aws-codebuild-project.json", "aws-codebuild-reportgroup.json", "aws-codebuild-sourcecredential.json", @@ -1723,7 +1723,6 @@ "aws-efs-mounttarget.json", "aws-eks-accessentry.json", "aws-eks-addon.json", - "aws-eks-cluster.json", "aws-eks-fargateprofile.json", "aws-eks-identityproviderconfig.json", "aws-eks-nodegroup.json", @@ -1983,9 +1982,7 @@ "aws-lakeformation-datacellsfilter.json", "aws-lakeformation-datalakesettings.json", "aws-lakeformation-permissions.json", - "aws-lakeformation-principalpermissions.json", "aws-lakeformation-resource.json", - "aws-lakeformation-tag.json", "aws-lakeformation-tagassociation.json", "aws-lambda-alias.json", "aws-lambda-codesigningconfig.json", @@ -2003,13 +2000,7 @@ "aws-licensemanager-grant.json", "aws-licensemanager-license.json", "aws-lightsail-alarm.json", - "aws-lightsail-bucket.json", - "aws-lightsail-certificate.json", - "aws-lightsail-container.json", - "aws-lightsail-database.json", - "aws-lightsail-disk.json", "aws-lightsail-instance.json", - "aws-lightsail-loadbalancer.json", "aws-lightsail-loadbalancertlscertificate.json", "aws-lightsail-staticip.json", "aws-location-apikey.json", @@ -2215,6 +2206,7 @@ "aws-rds-dbsecuritygroup.json", "aws-rds-dbsecuritygroupingress.json", "aws-rds-eventsubscription.json", + "aws-rds-globalcluster.json", "aws-rds-integration.json", "aws-rds-optiongroup.json", "aws-redshift-cluster.json", @@ -2290,6 +2282,7 @@ "aws-s3outposts-endpoint.json", "aws-sagemaker-app.json", "aws-sagemaker-appimageconfig.json", + "aws-sagemaker-cluster.json", "aws-sagemaker-coderepository.json", "aws-sagemaker-dataqualityjobdefinition.json", "aws-sagemaker-device.json", @@ -2299,7 +2292,6 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", - "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", @@ -2325,7 +2317,6 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", - "aws-secretsmanager-secrettargetattachment.json", "aws-securityhub-automationrule.json", "aws-securityhub-configurationpolicy.json", "aws-securityhub-delegatedadmin.json", @@ -2484,13 +2475,11 @@ "aws-workspaces-workspacespool.json", "aws-workspacesthinclient-environment.json", "aws-workspacesweb-browsersettings.json", - "aws-workspacesweb-identityprovider.json", "aws-workspacesweb-ipaccesssettings.json", "aws-workspacesweb-networksettings.json", "aws-workspacesweb-portal.json", "aws-workspacesweb-truststore.json", "aws-workspacesweb-useraccessloggingsettings.json", - "aws-workspacesweb-usersettings.json", "aws-xray-group.json", "aws-xray-resourcepolicy.json", "aws-xray-samplingrule.json", diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-codebuild-fleet.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-codebuild-fleet.json new file mode 100644 index 0000000000..fd8e70b50e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-codebuild-fleet.json @@ -0,0 +1,168 @@ +{ + "additionalProperties": false, + "definitions": { + "ScalingConfigurationInput": { + "additionalProperties": false, + "properties": { + "MaxCapacity": { + "minimum": 1, + "type": "integer" + }, + "ScalingType": { + "enum": [ + "TARGET_TRACKING_SCALING" + ], + "type": "string" + }, + "TargetTrackingScalingConfigs": { + "items": { + "$ref": "#/definitions/TargetTrackingScalingConfiguration" + }, + "type": "array" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^(?!aws:)[a-zA-Z+-=._:/]+$", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[a-zA-Z+-=._:/]+$", + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "TargetTrackingScalingConfiguration": { + "additionalProperties": false, + "properties": { + "MetricType": { + "enum": [ + "FLEET_UTILIZATION_RATE" + ], + "type": "string" + }, + "TargetValue": { + "type": "number" + } + }, + "type": "object" + }, + "VpcConfig": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "format": "AWS::EC2::SecurityGroup.Ids", + "insertionOrder": false, + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array" + }, + "VpcId": { + "format": "AWS::EC2::VPC.Id", + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "minLength": 1, + "type": "string" + }, + "BaseCapacity": { + "minimum": 1, + "type": "integer" + }, + "ComputeType": { + "enum": [ + "BUILD_GENERAL1_SMALL", + "BUILD_GENERAL1_MEDIUM", + "BUILD_GENERAL1_LARGE", + "BUILD_GENERAL1_XLARGE", + "BUILD_GENERAL1_2XLARGE" + ], + "type": "string" + }, + "EnvironmentType": { + "enum": [ + "WINDOWS_SERVER_2019_CONTAINER", + "WINDOWS_SERVER_2022_CONTAINER", + "LINUX_CONTAINER", + "LINUX_GPU_CONTAINER", + "ARM_CONTAINER", + "MAC_ARM" + ], + "type": "string" + }, + "FleetServiceRole": { + "pattern": "^(?:arn:)[a-zA-Z+-=,._:/@]+$", + "type": "string" + }, + "FleetVpcConfig": { + "$ref": "#/definitions/VpcConfig" + }, + "ImageId": { + "pattern": "^((aws/codebuild/[A-Za-z-]+:[0-9]+(-[0-9._]+)?)|ami-[a-z0-9]{1,1020})$", + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 2, + "type": "string" + }, + "OverflowBehavior": { + "enum": [ + "QUEUE", + "ON_DEMAND" + ], + "type": "string" + }, + "ScalingConfiguration": { + "$ref": "#/definitions/ScalingConfigurationInput" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::CodeBuild::Fleet" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-eks-cluster.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-eks-cluster.json new file mode 100644 index 0000000000..7e3206352a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-eks-cluster.json @@ -0,0 +1,386 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/OutpostConfig", + "/properties/EncryptionConfig", + "/properties/KubernetesNetworkConfig", + "/properties/AccessConfig/BootstrapClusterCreatorAdminPermissions", + "/properties/Name", + "/properties/RoleArn", + "/properties/BootstrapSelfManagedAddons" + ], + "definitions": { + "AccessConfig": { + "additionalProperties": false, + "properties": { + "AuthenticationMode": { + "enum": [ + "CONFIG_MAP", + "API_AND_CONFIG_MAP", + "API" + ], + "type": "string" + }, + "BootstrapClusterCreatorAdminPermissions": { + "type": "boolean" + } + }, + "type": "object" + }, + "ClusterLogging": { + "additionalProperties": false, + "properties": { + "EnabledTypes": { + "$ref": "#/definitions/EnabledTypes" + } + }, + "type": "object" + }, + "ControlPlanePlacement": { + "additionalProperties": false, + "properties": { + "GroupName": { + "type": "string" + } + }, + "type": "object" + }, + "EnabledTypes": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LoggingTypeConfig" + }, + "type": "array" + }, + "EncryptionConfig": { + "additionalProperties": false, + "properties": { + "Provider": { + "$ref": "#/definitions/Provider" + }, + "Resources": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "KubernetesNetworkConfig": { + "additionalProperties": false, + "properties": { + "IpFamily": { + "enum": [ + "ipv4", + "ipv6" + ], + "type": "string" + }, + "ServiceIpv4Cidr": { + "type": "string" + }, + "ServiceIpv6Cidr": { + "type": "string" + } + }, + "type": "object" + }, + "Logging": { + "additionalProperties": false, + "properties": { + "ClusterLogging": { + "$ref": "#/definitions/ClusterLogging" + } + }, + "type": "object" + }, + "LoggingTypeConfig": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "api", + "audit", + "authenticator", + "controllerManager", + "scheduler" + ], + "type": "string" + } + }, + "type": "object" + }, + "OutpostConfig": { + "additionalProperties": false, + "properties": { + "ControlPlaneInstanceType": { + "type": "string" + }, + "ControlPlanePlacement": { + "$ref": "#/definitions/ControlPlanePlacement" + }, + "OutpostArns": { + "insertionOrder": false, + "items": { + "minItems": 1, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "OutpostArns", + "ControlPlaneInstanceType" + ], + "type": "object" + }, + "Provider": { + "additionalProperties": false, + "properties": { + "KeyArn": { + "type": "string" + } + }, + "type": "object" + }, + "RemoteNodeNetwork": { + "additionalProperties": false, + "properties": { + "Cidrs": { + "insertionOrder": false, + "items": { + "minItems": 1, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "Cidrs" + ], + "type": "object" + }, + "RemoteNodeNetworks": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/RemoteNodeNetwork" + }, + "type": "array" + }, + "RemotePodNetwork": { + "additionalProperties": false, + "properties": { + "Cidrs": { + "insertionOrder": false, + "items": { + "minItems": 1, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "Cidrs" + ], + "type": "object" + }, + "RemotePodNetworks": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/RemotePodNetwork" + }, + "type": "array" + }, + "ResourcesVpcConfig": { + "additionalProperties": false, + "properties": { + "EndpointPrivateAccess": { + "type": "boolean" + }, + "EndpointPublicAccess": { + "type": "boolean" + }, + "PublicAccessCidrs": { + "insertionOrder": false, + "items": { + "minItems": 1, + "type": "string" + }, + "type": "array" + }, + "SecurityGroupIds": { + "format": "AWS::EC2::SecurityGroup.Ids", + "insertionOrder": false, + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "minItems": 1, + "type": "string" + }, + "type": "array" + }, + "SubnetIds": { + "insertionOrder": false, + "items": { + "minItems": 1, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SubnetIds" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "UpgradePolicy": { + "additionalProperties": false, + "properties": { + "SupportType": { + "enum": [ + "STANDARD", + "EXTENDED" + ], + "type": "string" + } + }, + "type": "object" + }, + "ZonalShiftConfig": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "AccessConfig": { + "$ref": "#/definitions/AccessConfig" + }, + "Arn": { + "type": "string" + }, + "BootstrapSelfManagedAddons": { + "type": "boolean" + }, + "CertificateAuthorityData": { + "type": "string" + }, + "ClusterSecurityGroupId": { + "type": "string" + }, + "EncryptionConfig": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/EncryptionConfig", + "maxItems": 1 + }, + "type": "array" + }, + "EncryptionConfigKeyArn": { + "type": "string" + }, + "Endpoint": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "KubernetesNetworkConfig": { + "$ref": "#/definitions/KubernetesNetworkConfig" + }, + "Logging": { + "$ref": "#/definitions/Logging" + }, + "Name": { + "maxLength": 100, + "minLength": 1, + "pattern": "^[0-9A-Za-z][A-Za-z0-9\\-_]*", + "type": "string" + }, + "OpenIdConnectIssuerUrl": { + "type": "string" + }, + "OutpostConfig": { + "$ref": "#/definitions/OutpostConfig" + }, + "ResourcesVpcConfig": { + "$ref": "#/definitions/ResourcesVpcConfig" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "UpgradePolicy": { + "$ref": "#/definitions/UpgradePolicy" + }, + "Version": { + "pattern": "1\\.\\d\\d", + "type": "string" + }, + "ZonalShiftConfig": { + "$ref": "#/definitions/ZonalShiftConfig" + } + }, + "readOnlyProperties": [ + "/properties/Id", + "/properties/Arn", + "/properties/Endpoint", + "/properties/CertificateAuthorityData", + "/properties/ClusterSecurityGroupId", + "/properties/EncryptionConfigKeyArn", + "/properties/OpenIdConnectIssuerUrl", + "/properties/KubernetesNetworkConfig/ServiceIpv6Cidr" + ], + "required": [ + "RoleArn", + "ResourcesVpcConfig" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-eks.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::EKS::Cluster", + "writeOnlyProperties": [ + "/properties/AccessConfig/BootstrapClusterCreatorAdminPermissions", + "/properties/BootstrapSelfManagedAddons" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-lakeformation-principalpermissions.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lakeformation-principalpermissions.json new file mode 100644 index 0000000000..42006024b6 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lakeformation-principalpermissions.json @@ -0,0 +1,439 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Catalog", + "/properties/Principal", + "/properties/Resource", + "/properties/Permissions", + "/properties/PermissionsWithGrantOption" + ], + "definitions": { + "CatalogIdString": { + "maxLength": 12, + "minLength": 12, + "type": "string" + }, + "CatalogResource": { + "type": "string" + }, + "ColumnNames": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/NameString" + }, + "type": "array" + }, + "ColumnWildcard": { + "additionalProperties": false, + "properties": { + "ExcludedColumnNames": { + "$ref": "#/definitions/ColumnNames" + } + }, + "type": "object" + }, + "DataCellsFilterResource": { + "additionalProperties": false, + "properties": { + "DatabaseName": { + "$ref": "#/definitions/NameString" + }, + "Name": { + "$ref": "#/definitions/NameString" + }, + "TableCatalogId": { + "$ref": "#/definitions/CatalogIdString" + }, + "TableName": { + "$ref": "#/definitions/NameString" + } + }, + "required": [ + "TableCatalogId", + "DatabaseName", + "TableName", + "Name" + ], + "type": "object" + }, + "DataLakePrincipal": { + "additionalProperties": false, + "properties": { + "DataLakePrincipalIdentifier": { + "$ref": "#/definitions/DataLakePrincipalString" + } + }, + "type": "object" + }, + "DataLakePrincipalList": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/DataLakePrincipal" + }, + "type": "array" + }, + "DataLakePrincipalString": { + "maxLength": 255, + "minLength": 1, + "type": "string" + }, + "DataLocationResource": { + "additionalProperties": false, + "properties": { + "CatalogId": { + "$ref": "#/definitions/CatalogIdString" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArnString" + } + }, + "required": [ + "CatalogId", + "ResourceArn" + ], + "type": "object" + }, + "DatabaseResource": { + "additionalProperties": false, + "properties": { + "CatalogId": { + "$ref": "#/definitions/CatalogIdString" + }, + "Name": { + "$ref": "#/definitions/NameString" + } + }, + "required": [ + "CatalogId", + "Name" + ], + "type": "object" + }, + "Expression": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LFTag" + }, + "maxItems": 5, + "minItems": 1, + "type": "array" + }, + "IAMRoleArn": { + "pattern": "arn:*:iam::[0-9]*:role/.*", + "type": "string" + }, + "LFTag": { + "additionalProperties": false, + "properties": { + "TagKey": { + "$ref": "#/definitions/LFTagKey" + }, + "TagValues": { + "$ref": "#/definitions/TagValueList" + } + }, + "type": "object" + }, + "LFTagKey": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "LFTagKeyResource": { + "additionalProperties": false, + "properties": { + "CatalogId": { + "$ref": "#/definitions/CatalogIdString" + }, + "TagKey": { + "$ref": "#/definitions/NameString" + }, + "TagValues": { + "$ref": "#/definitions/TagValueList" + } + }, + "required": [ + "CatalogId", + "TagKey", + "TagValues" + ], + "type": "object" + }, + "LFTagPair": { + "additionalProperties": false, + "properties": { + "CatalogId": { + "$ref": "#/definitions/CatalogIdString" + }, + "TagKey": { + "$ref": "#/definitions/LFTagKey" + }, + "TagValues": { + "$ref": "#/definitions/TagValueList" + } + }, + "required": [ + "TagKey", + "TagValues" + ], + "type": "object" + }, + "LFTagPolicyResource": { + "additionalProperties": false, + "properties": { + "CatalogId": { + "$ref": "#/definitions/CatalogIdString" + }, + "Expression": { + "$ref": "#/definitions/Expression" + }, + "ResourceType": { + "$ref": "#/definitions/ResourceType" + } + }, + "required": [ + "CatalogId", + "ResourceType", + "Expression" + ], + "type": "object" + }, + "LFTagValue": { + "maxLength": 256, + "minLength": 0, + "type": "string" + }, + "LFTagsList": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LFTagPair" + }, + "type": "array" + }, + "NameString": { + "maxLength": 255, + "minLength": 1, + "type": "string" + }, + "NullableBoolean": { + "type": [ + "boolean", + "null" + ] + }, + "PathString": { + "type": "string" + }, + "Permission": { + "enum": [ + "ALL", + "SELECT", + "ALTER", + "DROP", + "DELETE", + "INSERT", + "DESCRIBE", + "CREATE_DATABASE", + "CREATE_TABLE", + "DATA_LOCATION_ACCESS", + "CREATE_LF_TAG", + "ASSOCIATE", + "GRANT_WITH_LF_TAG_EXPRESSION" + ], + "type": "string" + }, + "PermissionList": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Permission" + }, + "type": "array" + }, + "PrincipalPermissions": { + "additionalProperties": false, + "properties": { + "DataLakePrincipal": { + "$ref": "#/definitions/DataLakePrincipal" + }, + "PermissionList": { + "$ref": "#/definitions/PermissionList" + } + }, + "type": "object" + }, + "PrincipalPermissionsList": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/PrincipalPermissions" + }, + "type": "array" + }, + "PrincipalResourcePair": { + "additionalProperties": false, + "properties": { + "Principal": { + "$ref": "#/definitions/DataLakePrincipal" + }, + "Resource": { + "$ref": "#/definitions/Resource" + } + }, + "required": [ + "Principal", + "Resource" + ], + "type": "object" + }, + "Resource": { + "additionalProperties": false, + "properties": { + "Catalog": { + "$ref": "#/definitions/CatalogResource" + }, + "DataCellsFilter": { + "$ref": "#/definitions/DataCellsFilterResource" + }, + "DataLocation": { + "$ref": "#/definitions/DataLocationResource" + }, + "Database": { + "$ref": "#/definitions/DatabaseResource" + }, + "LFTag": { + "$ref": "#/definitions/LFTagKeyResource" + }, + "LFTagPolicy": { + "$ref": "#/definitions/LFTagPolicyResource" + }, + "Table": { + "$ref": "#/definitions/TableResource" + }, + "TableWithColumns": { + "$ref": "#/definitions/TableWithColumnsResource" + } + }, + "type": "object" + }, + "ResourceArnString": { + "type": "string" + }, + "ResourceType": { + "enum": [ + "DATABASE", + "TABLE" + ], + "type": "string" + }, + "TableResource": { + "additionalProperties": false, + "properties": { + "CatalogId": { + "$ref": "#/definitions/CatalogIdString" + }, + "DatabaseName": { + "$ref": "#/definitions/NameString" + }, + "Name": { + "$ref": "#/definitions/NameString" + }, + "TableWildcard": { + "$ref": "#/definitions/TableWildcard" + } + }, + "required": [ + "CatalogId", + "DatabaseName" + ], + "type": "object" + }, + "TableWildcard": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "TableWithColumnsResource": { + "additionalProperties": false, + "properties": { + "CatalogId": { + "$ref": "#/definitions/CatalogIdString" + }, + "ColumnNames": { + "$ref": "#/definitions/ColumnNames" + }, + "ColumnWildcard": { + "$ref": "#/definitions/ColumnWildcard" + }, + "DatabaseName": { + "$ref": "#/definitions/NameString" + }, + "Name": { + "$ref": "#/definitions/NameString" + } + }, + "required": [ + "CatalogId", + "DatabaseName", + "Name" + ], + "type": "object" + }, + "TagValueList": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LFTagValue" + }, + "maxItems": 50, + "minItems": 1, + "type": "array" + } + }, + "primaryIdentifier": [ + "/properties/PrincipalIdentifier", + "/properties/ResourceIdentifier" + ], + "properties": { + "Catalog": { + "$ref": "#/definitions/CatalogIdString" + }, + "Permissions": { + "$ref": "#/definitions/PermissionList" + }, + "PermissionsWithGrantOption": { + "$ref": "#/definitions/PermissionList" + }, + "Principal": { + "$ref": "#/definitions/DataLakePrincipal" + }, + "PrincipalIdentifier": { + "type": "string" + }, + "Resource": { + "$ref": "#/definitions/Resource" + }, + "ResourceIdentifier": { + "type": "string" + } + }, + "propertyTransform": { + "/properties/Permissions": "Permissions=[] ? null : Permissions", + "/properties/PermissionsWithGrantOption": "PermissionsWithGrantOption=[] ? null : PermissionsWithGrantOption" + }, + "readOnlyProperties": [ + "/properties/PrincipalIdentifier", + "/properties/ResourceIdentifier" + ], + "replacementStrategy": "delete_then_create", + "required": [ + "Principal", + "Resource", + "Permissions", + "PermissionsWithGrantOption" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "taggable": false + }, + "typeName": "AWS::LakeFormation::PrincipalPermissions" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-lakeformation-tag.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lakeformation-tag.json new file mode 100644 index 0000000000..2d5dfa85d2 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lakeformation-tag.json @@ -0,0 +1,59 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/CatalogId", + "/properties/TagKey" + ], + "definitions": { + "CatalogIdString": { + "maxLength": 12, + "minLength": 12, + "type": "string" + }, + "LFTagKey": { + "maxLength": 128, + "minLength": 1, + "pattern": "^([{a-zA-Z}{\\s}{0-9}_.:\\/=+\\-@%]*)$", + "type": "string" + }, + "LFTagValue": { + "maxLength": 256, + "minLength": 0, + "pattern": "^([{a-zA-Z}{\\s}{0-9}_.:\\*\\/=+\\-@%]*)$", + "type": "string" + }, + "TagValueList": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LFTagValue" + }, + "maxItems": 1000, + "minItems": 1, + "type": "array" + } + }, + "primaryIdentifier": [ + "/properties/TagKey" + ], + "properties": { + "CatalogId": { + "$ref": "#/definitions/CatalogIdString" + }, + "TagKey": { + "$ref": "#/definitions/LFTagKey" + }, + "TagValues": { + "$ref": "#/definitions/TagValueList" + } + }, + "replacementStrategy": "delete_then_create", + "required": [ + "TagKey", + "TagValues" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "taggable": false + }, + "typeName": "AWS::LakeFormation::Tag" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-bucket.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-bucket.json new file mode 100644 index 0000000000..ce933b0671 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-bucket.json @@ -0,0 +1,110 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/BucketName" + ], + "definitions": { + "AccessRules": { + "additionalProperties": false, + "properties": { + "AllowPublicOverrides": { + "type": "boolean" + }, + "GetObject": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/BucketName" + ], + "properties": { + "AbleToUpdateBundle": { + "type": "boolean" + }, + "AccessRules": { + "$ref": "#/definitions/AccessRules" + }, + "BucketArn": { + "type": "string" + }, + "BucketName": { + "maxLength": 54, + "minLength": 3, + "pattern": "^[a-z0-9][a-z0-9-]{1,52}[a-z0-9]$", + "type": "string" + }, + "BundleId": { + "type": "string" + }, + "ObjectVersioning": { + "type": "boolean" + }, + "ReadOnlyAccessAccounts": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "ResourcesReceivingAccess": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "Url": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/BucketArn", + "/properties/Url", + "/properties/AbleToUpdateBundle" + ], + "required": [ + "BucketName", + "BundleId" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-lightsail.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Lightsail::Bucket" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-certificate.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-certificate.json new file mode 100644 index 0000000000..3c53c8feff --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-certificate.json @@ -0,0 +1,79 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/CertificateName", + "/properties/DomainName", + "/properties/SubjectAlternativeNames" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/CertificateName" + ], + "properties": { + "CertificateArn": { + "type": "string" + }, + "CertificateName": { + "type": "string" + }, + "DomainName": { + "type": "string" + }, + "Status": { + "type": "string" + }, + "SubjectAlternativeNames": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/CertificateArn", + "/properties/Status" + ], + "required": [ + "CertificateName", + "DomainName" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Lightsail::Certificate" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-container.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-container.json new file mode 100644 index 0000000000..954b483380 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-container.json @@ -0,0 +1,251 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/ServiceName" + ], + "definitions": { + "Container": { + "additionalProperties": false, + "properties": { + "Command": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "ContainerName": { + "type": "string" + }, + "Environment": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/EnvironmentVariable" + }, + "type": "array", + "uniqueItems": true + }, + "Image": { + "type": "string" + }, + "Ports": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/PortInfo" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "ContainerServiceDeployment": { + "additionalProperties": false, + "properties": { + "Containers": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Container" + }, + "type": "array", + "uniqueItems": true + }, + "PublicEndpoint": { + "$ref": "#/definitions/PublicEndpoint" + } + }, + "type": "object" + }, + "EnvironmentVariable": { + "additionalProperties": false, + "properties": { + "Value": { + "type": "string" + }, + "Variable": { + "type": "string" + } + }, + "type": "object" + }, + "HealthCheckConfig": { + "additionalProperties": false, + "properties": { + "HealthyThreshold": { + "type": "integer" + }, + "IntervalSeconds": { + "type": "integer" + }, + "Path": { + "type": "string" + }, + "SuccessCodes": { + "type": "string" + }, + "TimeoutSeconds": { + "type": "integer" + }, + "UnhealthyThreshold": { + "type": "integer" + } + }, + "type": "object" + }, + "PortInfo": { + "additionalProperties": false, + "properties": { + "Port": { + "type": "string" + }, + "Protocol": { + "type": "string" + } + }, + "type": "object" + }, + "PrivateRegistryAccess": { + "additionalProperties": false, + "properties": { + "EcrImagePullerRole": { + "additionalProperties": false, + "properties": { + "IsActive": { + "type": "boolean" + }, + "PrincipalArn": { + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "PublicDomainName": { + "additionalProperties": false, + "properties": { + "CertificateName": { + "type": "string" + }, + "DomainNames": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "PublicEndpoint": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "HealthCheckConfig": { + "$ref": "#/definitions/HealthCheckConfig" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceName" + ], + "properties": { + "ContainerArn": { + "type": "string" + }, + "ContainerServiceDeployment": { + "$ref": "#/definitions/ContainerServiceDeployment" + }, + "IsDisabled": { + "type": "boolean" + }, + "Power": { + "type": "string" + }, + "PrincipalArn": { + "type": "string" + }, + "PrivateRegistryAccess": { + "$ref": "#/definitions/PrivateRegistryAccess" + }, + "PublicDomainNames": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/PublicDomainName" + }, + "type": "array", + "uniqueItems": true + }, + "Scale": { + "maximum": 20, + "minimum": 1, + "type": "integer" + }, + "ServiceName": { + "maxLength": 63, + "minLength": 1, + "pattern": "^[a-z0-9]{1,2}|[a-z0-9][a-z0-9-]+[a-z0-9]$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "Url": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/ContainerArn", + "/properties/Url", + "/properties/PrincipalArn", + "/properties/PrivateRegistryAccess/EcrImagePullerRole/PrincipalArn" + ], + "required": [ + "ServiceName", + "Power", + "Scale" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-lightsail.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Lightsail::Container" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-database.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-database.json new file mode 100644 index 0000000000..420410367a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-database.json @@ -0,0 +1,167 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/RelationalDatabaseName", + "/properties/AvailabilityZone", + "/properties/RelationalDatabaseBlueprintId", + "/properties/RelationalDatabaseBundleId", + "/properties/MasterDatabaseName", + "/properties/MasterUsername" + ], + "definitions": { + "RelationalDatabaseParameter": { + "additionalProperties": false, + "properties": { + "AllowedValues": { + "type": "string" + }, + "ApplyMethod": { + "type": "string" + }, + "ApplyType": { + "type": "string" + }, + "DataType": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "IsModifiable": { + "type": "boolean" + }, + "ParameterName": { + "type": "string" + }, + "ParameterValue": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/RelationalDatabaseName" + ], + "properties": { + "AvailabilityZone": { + "maxLength": 255, + "minLength": 1, + "type": "string" + }, + "BackupRetention": { + "type": "boolean" + }, + "CaCertificateIdentifier": { + "type": "string" + }, + "DatabaseArn": { + "type": "string" + }, + "MasterDatabaseName": { + "maxLength": 255, + "minLength": 1, + "type": "string" + }, + "MasterUserPassword": { + "maxLength": 63, + "minLength": 1, + "type": "string" + }, + "MasterUsername": { + "maxLength": 63, + "minLength": 1, + "type": "string" + }, + "PreferredBackupWindow": { + "type": "string" + }, + "PreferredMaintenanceWindow": { + "type": "string" + }, + "PubliclyAccessible": { + "type": "boolean" + }, + "RelationalDatabaseBlueprintId": { + "maxLength": 255, + "minLength": 1, + "type": "string" + }, + "RelationalDatabaseBundleId": { + "maxLength": 255, + "minLength": 1, + "type": "string" + }, + "RelationalDatabaseName": { + "maxLength": 255, + "minLength": 2, + "pattern": "\\w[\\w\\-]*\\w", + "type": "string" + }, + "RelationalDatabaseParameters": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/RelationalDatabaseParameter" + }, + "type": "array", + "uniqueItems": true + }, + "RotateMasterUserPassword": { + "type": "boolean" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "propertyTransform": { + "/properties/PreferredMaintenanceWindow": "$lowercase(PreferredMaintenanceWindow)" + }, + "readOnlyProperties": [ + "/properties/DatabaseArn" + ], + "required": [ + "RelationalDatabaseName", + "RelationalDatabaseBlueprintId", + "RelationalDatabaseBundleId", + "MasterDatabaseName", + "MasterUsername" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-lightsail.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Lightsail::Database", + "writeOnlyProperties": [ + "/properties/MasterUserPassword", + "/properties/RelationalDatabaseParameters", + "/properties/RotateMasterUserPassword" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-disk.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-disk.json new file mode 100644 index 0000000000..a777efa3ec --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-disk.json @@ -0,0 +1,170 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/DiskName", + "/properties/AvailabilityZone", + "/properties/SizeInGb" + ], + "definitions": { + "AddOn": { + "additionalProperties": false, + "properties": { + "AddOnType": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "AutoSnapshotAddOnRequest": { + "$ref": "#/definitions/AutoSnapshotAddOn" + }, + "Status": { + "enum": [ + "Enabling", + "Disabling", + "Enabled", + "Terminating", + "Terminated", + "Disabled", + "Failed" + ], + "type": "string" + } + }, + "required": [ + "AddOnType" + ], + "type": "object" + }, + "AutoSnapshotAddOn": { + "additionalProperties": false, + "properties": { + "SnapshotTimeOfDay": { + "pattern": "^[0-9]{2}:00$", + "type": "string" + } + }, + "type": "object" + }, + "Location": { + "additionalProperties": false, + "properties": { + "AvailabilityZone": { + "type": "string" + }, + "RegionName": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/DiskName" + ], + "properties": { + "AddOns": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/AddOn" + }, + "type": "array" + }, + "AttachedTo": { + "type": "string" + }, + "AttachmentState": { + "type": "string" + }, + "AvailabilityZone": { + "maxLength": 255, + "minLength": 1, + "type": "string" + }, + "DiskArn": { + "type": "string" + }, + "DiskName": { + "maxLength": 254, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][\\w\\-.]*[a-zA-Z0-9]$", + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "IsAttached": { + "type": "boolean" + }, + "Location": { + "$ref": "#/definitions/Location" + }, + "Path": { + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "SizeInGb": { + "type": "integer" + }, + "State": { + "type": "string" + }, + "SupportCode": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/AttachedTo", + "/properties/Path", + "/properties/IsAttached", + "/properties/Iops", + "/properties/AttachmentState", + "/properties/State", + "/properties/ResourceType", + "/properties/Location/AvailabilityZone", + "/properties/Location/RegionName", + "/properties/SupportCode", + "/properties/DiskArn" + ], + "required": [ + "DiskName", + "SizeInGb" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-lightsail.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Lightsail::Disk" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-loadbalancer.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-loadbalancer.json new file mode 100644 index 0000000000..de62549d74 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lightsail-loadbalancer.json @@ -0,0 +1,91 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/LoadBalancerName", + "/properties/InstancePort", + "/properties/IpAddressType" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/LoadBalancerName" + ], + "properties": { + "AttachedInstances": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "HealthCheckPath": { + "type": "string" + }, + "InstancePort": { + "type": "integer" + }, + "IpAddressType": { + "type": "string" + }, + "LoadBalancerArn": { + "type": "string" + }, + "LoadBalancerName": { + "pattern": "\\w[\\w\\-]*\\w", + "type": "string" + }, + "SessionStickinessEnabled": { + "type": "boolean" + }, + "SessionStickinessLBCookieDurationSeconds": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "TlsPolicyName": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/LoadBalancerArn" + ], + "required": [ + "LoadBalancerName", + "InstancePort" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-lightsail.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Lightsail::LoadBalancer" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-rds-globalcluster.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-rds-globalcluster.json deleted file mode 100644 index c7d134d12e..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_1/aws-rds-globalcluster.json +++ /dev/null @@ -1,98 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/GlobalClusterIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/Engine" - ], - "definitions": { - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "oneOf": [ - { - "required": [ - "SourceDBClusterIdentifier" - ] - }, - { - "required": [ - "Engine" - ] - } - ], - "primaryIdentifier": [ - "/properties/GlobalClusterIdentifier" - ], - "properties": { - "DeletionProtection": { - "type": "boolean" - }, - "Engine": { - "enum": [ - "aurora", - "aurora-mysql", - "aurora-postgresql" - ], - "type": "string" - }, - "EngineLifecycleSupport": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "GlobalClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "SourceDBClusterIdentifier": { - "oneOf": [ - { - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$" - }, - { - "pattern": "^(?=.{40,128}$)arn.*" - } - ], - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/GlobalClusterIdentifier": "$lowercase(GlobalClusterIdentifier)" - }, - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", - "typeName": "AWS::RDS::GlobalCluster" -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-sagemaker-cluster.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-sagemaker-cluster.json deleted file mode 100644 index 751c23f435..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_1/aws-sagemaker-cluster.json +++ /dev/null @@ -1,309 +0,0 @@ -{ - "additionalIdentifiers": [ - [ - "/properties/ClusterName" - ] - ], - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ClusterName", - "/properties/VpcConfig", - "/properties/Orchestrator", - "/properties/InstanceGroups/*/ExecutionRole", - "/properties/InstanceGroups/*/InstanceGroupName", - "/properties/InstanceGroups/*/InstanceType", - "/properties/InstanceGroups/*/ThreadsPerCore" - ], - "definitions": { - "ClusterEbsVolumeConfig": { - "additionalProperties": false, - "properties": { - "VolumeSizeInGB": { - "maximum": 16384, - "minimum": 1, - "type": "integer" - } - }, - "type": "object" - }, - "ClusterInstanceGroup": { - "additionalProperties": false, - "properties": { - "CurrentCount": { - "minimum": 0, - "type": "integer" - }, - "ExecutionRole": { - "$ref": "#/definitions/ExecutionRole" - }, - "InstanceCount": { - "minimum": 0, - "type": "integer" - }, - "InstanceGroupName": { - "$ref": "#/definitions/InstanceGroupName" - }, - "InstanceStorageConfigs": { - "$ref": "#/definitions/ClusterInstanceStorageConfigs" - }, - "InstanceType": { - "$ref": "#/definitions/InstanceType" - }, - "LifeCycleConfig": { - "$ref": "#/definitions/ClusterLifeCycleConfig" - }, - "OnStartDeepHealthChecks": { - "$ref": "#/definitions/OnStartDeepHealthChecks" - }, - "ThreadsPerCore": { - "maximum": 2, - "minimum": 1, - "type": "integer" - } - }, - "required": [ - "ExecutionRole", - "InstanceCount", - "InstanceGroupName", - "InstanceType", - "LifeCycleConfig" - ], - "type": "object" - }, - "ClusterInstanceGroupsList": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/ClusterInstanceGroup" - }, - "minItems": 1, - "type": "array" - }, - "ClusterInstanceStorageConfig": { - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "EbsVolumeConfig": { - "$ref": "#/definitions/ClusterEbsVolumeConfig" - } - }, - "type": "object" - } - ], - "type": "object" - }, - "ClusterInstanceStorageConfigs": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/ClusterInstanceStorageConfig" - }, - "maxItems": 1, - "type": "array" - }, - "ClusterLifeCycleConfig": { - "additionalProperties": false, - "properties": { - "OnCreate": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[\\S\\s]+$", - "type": "string" - }, - "SourceS3Uri": { - "maxLength": 1024, - "pattern": "^(https|s3)://([^/]+)/?(.*)$", - "type": "string" - } - }, - "required": [ - "OnCreate", - "SourceS3Uri" - ], - "type": "object" - }, - "ClusterOrchestratorEksConfig": { - "additionalProperties": false, - "properties": { - "ClusterArn": { - "type": "string" - } - }, - "required": [ - "ClusterArn" - ], - "type": "object" - }, - "DeepHealthCheckType": { - "enum": [ - "InstanceStress", - "InstanceConnectivity" - ], - "type": "string" - }, - "ExecutionRole": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", - "type": "string" - }, - "InstanceGroupName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$", - "type": "string" - }, - "InstanceType": { - "type": "string" - }, - "OnStartDeepHealthChecks": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/DeepHealthCheckType" - }, - "type": "array" - }, - "Orchestrator": { - "additionalProperties": false, - "properties": { - "Eks": { - "$ref": "#/definitions/ClusterOrchestratorEksConfig" - } - }, - "required": [ - "Eks" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - }, - "VpcConfig": { - "additionalProperties": false, - "properties": { - "SecurityGroupIds": { - "insertionOrder": false, - "items": { - "maxLength": 32, - "pattern": "[-0-9a-zA-Z]+", - "type": "string" - }, - "maxItems": 5, - "minItems": 1, - "type": "array" - }, - "Subnets": { - "insertionOrder": false, - "items": { - "maxLength": 32, - "pattern": "[-0-9a-zA-Z]+", - "type": "string" - }, - "maxItems": 16, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "SecurityGroupIds", - "Subnets" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/ClusterArn" - ], - "properties": { - "ClusterArn": { - "maxLength": 256, - "pattern": "^arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:cluster/[a-z0-9]{12}$", - "type": "string" - }, - "ClusterName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "ClusterStatus": { - "enum": [ - "Creating", - "Deleting", - "Failed", - "InService", - "RollingBack", - "SystemUpdating", - "Updating" - ], - "type": "string" - }, - "CreationTime": { - "type": "string" - }, - "FailureMessage": { - "type": "string" - }, - "InstanceGroups": { - "$ref": "#/definitions/ClusterInstanceGroupsList" - }, - "NodeRecovery": { - "enum": [ - "Automatic", - "None" - ], - "type": "string" - }, - "Orchestrator": { - "$ref": "#/definitions/Orchestrator" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "VpcConfig": { - "$ref": "#/definitions/VpcConfig" - } - }, - "readOnlyProperties": [ - "/properties/ClusterArn", - "/properties/CreationTime", - "/properties/ClusterStatus", - "/properties/FailureMessage", - "/properties/InstanceGroups/*/CurrentCount" - ], - "required": [ - "InstanceGroups" - ], - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SageMaker::Cluster" -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-sagemaker-imageversion.json new file mode 100644 index 0000000000..3b09dc9bad --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-sagemaker-imageversion.json @@ -0,0 +1,171 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/ImageName", + "/properties/BaseImage" + ], + "definitions": { + "Alias": { + "maxLength": 128, + "minLength": 1, + "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", + "type": "string" + }, + "Aliases": { + "items": { + "$ref": "#/definitions/Alias" + }, + "type": "array" + }, + "BaseImage": { + "maxLength": 255, + "minLength": 1, + "pattern": ".+", + "type": "string" + }, + "ContainerImage": { + "maxLength": 255, + "minLength": 1, + "pattern": ".+", + "type": "string" + }, + "Horovod": { + "type": "boolean" + }, + "ImageArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", + "type": "string" + }, + "ImageName": { + "maxLength": 63, + "minLength": 1, + "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", + "type": "string" + }, + "ImageVersionArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", + "type": "string" + }, + "JobType": { + "enum": [ + "TRAINING", + "INFERENCE", + "NOTEBOOK_KERNEL" + ], + "type": "string" + }, + "MLFramework": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", + "type": "string" + }, + "Processor": { + "enum": [ + "CPU", + "GPU" + ], + "type": "string" + }, + "ProgrammingLang": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", + "type": "string" + }, + "ReleaseNotes": { + "maxLength": 255, + "minLength": 1, + "pattern": ".*", + "type": "string" + }, + "VendorGuidance": { + "enum": [ + "NOT_PROVIDED", + "STABLE", + "TO_BE_ARCHIVED", + "ARCHIVED" + ], + "type": "string" + }, + "Version": { + "minimum": 1, + "type": "integer" + } + }, + "primaryIdentifier": [ + "/properties/ImageVersionArn" + ], + "properties": { + "Alias": { + "$ref": "#/definitions/Alias" + }, + "Aliases": { + "$ref": "#/definitions/Aliases" + }, + "BaseImage": { + "$ref": "#/definitions/BaseImage" + }, + "ContainerImage": { + "$ref": "#/definitions/ContainerImage" + }, + "Horovod": { + "$ref": "#/definitions/Horovod" + }, + "ImageArn": { + "$ref": "#/definitions/ImageArn" + }, + "ImageName": { + "$ref": "#/definitions/ImageName" + }, + "ImageVersionArn": { + "$ref": "#/definitions/ImageVersionArn" + }, + "JobType": { + "$ref": "#/definitions/JobType" + }, + "MLFramework": { + "$ref": "#/definitions/MLFramework" + }, + "Processor": { + "$ref": "#/definitions/Processor" + }, + "ProgrammingLang": { + "$ref": "#/definitions/ProgrammingLang" + }, + "ReleaseNotes": { + "$ref": "#/definitions/ReleaseNotes" + }, + "VendorGuidance": { + "$ref": "#/definitions/VendorGuidance" + }, + "Version": { + "$ref": "#/definitions/Version" + } + }, + "readOnlyProperties": [ + "/properties/ImageVersionArn", + "/properties/ImageArn", + "/properties/ContainerImage" + ], + "required": [ + "ImageName", + "BaseImage" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": false, + "tagUpdatable": false, + "taggable": false + }, + "typeName": "AWS::SageMaker::ImageVersion", + "writeOnlyProperties": [ + "/properties/Aliases", + "/properties/Alias" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-secretsmanager-secrettargetattachment.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-secretsmanager-secrettargetattachment.json new file mode 100644 index 0000000000..e505a27602 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-secretsmanager-secrettargetattachment.json @@ -0,0 +1,33 @@ +{ + "$schema": "https://raw.githubusercontent.com/aws-cloudformation/cloudformation-resource-schema/blob/master/src/main/resources/schema/provider.definition.schema.v1.json", + "additionalProperties": false, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Id": { + "type": "string" + }, + "SecretId": { + "type": "string" + }, + "TargetId": { + "type": "string" + }, + "TargetType": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "TargetType", + "TargetId", + "SecretId" + ], + "tagging": { + "taggable": false + }, + "typeName": "AWS::SecretsManager::SecretTargetAttachment" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-workspacesweb-identityprovider.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-workspacesweb-identityprovider.json new file mode 100644 index 0000000000..ea188606fe --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-workspacesweb-identityprovider.json @@ -0,0 +1,111 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/PortalArn" + ], + "definitions": { + "IdentityProviderDetails": { + "additionalProperties": false, + "patternProperties": { + "^[\\s\\S]*$": { + "maxLength": 131072, + "minLength": 0, + "pattern": "^[\\s\\S]*$", + "type": "string" + } + }, + "type": "object" + }, + "IdentityProviderType": { + "enum": [ + "SAML", + "Facebook", + "Google", + "LoginWithAmazon", + "SignInWithApple", + "OIDC" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/IdentityProviderArn" + ], + "properties": { + "IdentityProviderArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36}){2,}$", + "type": "string" + }, + "IdentityProviderDetails": { + "$ref": "#/definitions/IdentityProviderDetails" + }, + "IdentityProviderName": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[^_][\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}][^_]+$", + "type": "string" + }, + "IdentityProviderType": { + "$ref": "#/definitions/IdentityProviderType" + }, + "PortalArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36})+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/IdentityProviderArn" + ], + "required": [ + "IdentityProviderDetails", + "IdentityProviderName", + "IdentityProviderType" + ], + "sourceUrl": "https://github.com/shivankgoel/aws-cloudformation-resource-providers-workspaces-web", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::WorkSpacesWeb::IdentityProvider", + "writeOnlyProperties": [ + "/properties/PortalArn" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-workspacesweb-usersettings.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-workspacesweb-usersettings.json new file mode 100644 index 0000000000..f69708baf1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-workspacesweb-usersettings.json @@ -0,0 +1,190 @@ +{ + "additionalProperties": false, + "definitions": { + "CookieSpecification": { + "additionalProperties": false, + "properties": { + "Domain": { + "maxLength": 253, + "minLength": 0, + "pattern": "^(\\.?)(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\\.)*[a-z0-9][a-z0-9-]{0,61}[a-z0-9]$", + "type": "string" + }, + "Name": { + "maxLength": 4096, + "minLength": 0, + "type": "string" + }, + "Path": { + "maxLength": 2000, + "minLength": 0, + "pattern": "^/(\\S)*$", + "type": "string" + } + }, + "required": [ + "Domain" + ], + "type": "object" + }, + "CookieSynchronizationConfiguration": { + "additionalProperties": false, + "properties": { + "Allowlist": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CookieSpecification" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "Blocklist": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CookieSpecification" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "Allowlist" + ], + "type": "object" + }, + "EnabledType": { + "enum": [ + "Disabled", + "Enabled" + ], + "type": "string" + }, + "EncryptionContextMap": { + "additionalProperties": false, + "patternProperties": { + "^[\\s\\S]*$": { + "maxLength": 131072, + "minLength": 0, + "pattern": "^[\\s\\S]*$", + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserSettingsArn" + ], + "properties": { + "AdditionalEncryptionContext": { + "$ref": "#/definitions/EncryptionContextMap" + }, + "AssociatedPortalArns": { + "insertionOrder": false, + "items": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36})+$", + "type": "string" + }, + "type": "array" + }, + "CookieSynchronizationConfiguration": { + "$ref": "#/definitions/CookieSynchronizationConfiguration" + }, + "CopyAllowed": { + "$ref": "#/definitions/EnabledType" + }, + "CustomerManagedKey": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:[\\w+=\\/,.@-]+:kms:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:key\\/[a-zA-Z0-9-]+$", + "type": "string" + }, + "DeepLinkAllowed": { + "$ref": "#/definitions/EnabledType" + }, + "DisconnectTimeoutInMinutes": { + "default": null, + "maximum": 600, + "minimum": 1, + "type": "number" + }, + "DownloadAllowed": { + "$ref": "#/definitions/EnabledType" + }, + "IdleDisconnectTimeoutInMinutes": { + "default": null, + "maximum": 60, + "minimum": 0, + "type": "number" + }, + "PasteAllowed": { + "$ref": "#/definitions/EnabledType" + }, + "PrintAllowed": { + "$ref": "#/definitions/EnabledType" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "UploadAllowed": { + "$ref": "#/definitions/EnabledType" + }, + "UserSettingsArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36})+$", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/AssociatedPortalArns", + "/properties/UserSettingsArn" + ], + "required": [ + "CopyAllowed", + "DownloadAllowed", + "PasteAllowed", + "PrintAllowed", + "UploadAllowed" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::WorkSpacesWeb::UserSettings" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py b/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py index 0d490157d0..4c9259c16d 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py @@ -625,6 +625,16 @@ "AWS::VerifiedPermissions::Policy", "AWS::VerifiedPermissions::PolicyStore", "AWS::VerifiedPermissions::PolicyTemplate", + "AWS::VpcLattice::AccessLogSubscription", + "AWS::VpcLattice::AuthPolicy", + "AWS::VpcLattice::Listener", + "AWS::VpcLattice::ResourcePolicy", + "AWS::VpcLattice::Rule", + "AWS::VpcLattice::Service", + "AWS::VpcLattice::ServiceNetwork", + "AWS::VpcLattice::ServiceNetworkServiceAssociation", + "AWS::VpcLattice::ServiceNetworkVpcAssociation", + "AWS::VpcLattice::TargetGroup", "AWS::WAF::ByteMatchSet", "AWS::WAF::IPSet", "AWS::WAF::Rule", @@ -654,8 +664,8 @@ "aws-acmpca-certificateauthorityactivation.json", "aws-acmpca-permission.json", "aws-amazonmq-broker.json", - "aws-amazonmq-configuration.json", "aws-apigateway-vpclink.json", + "aws-apigatewayv2-api.json", "aws-apigatewayv2-apimapping.json", "aws-apigatewayv2-authorizer.json", "aws-apigatewayv2-deployment.json", @@ -765,7 +775,6 @@ "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", "aws-cognito-logdeliveryconfiguration.json", - "aws-cognito-userpool.json", "aws-cognito-userpoolclient.json", "aws-cognito-userpoolgroup.json", "aws-cognito-userpoolresourceserver.json", @@ -932,6 +941,7 @@ "aws-eventschemas-registrypolicy.json", "aws-eventschemas-schema.json", "aws-fms-notificationchannel.json", + "aws-fms-policy.json", "aws-fms-resourceset.json", "aws-fsx-datarepositoryassociation.json", "aws-fsx-filesystem.json", @@ -966,7 +976,6 @@ "aws-guardduty-threatintelset.json", "aws-iam-group.json", "aws-iam-grouppolicy.json", - "aws-iam-instanceprofile.json", "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", @@ -1104,8 +1113,6 @@ "aws-route53-keysigningkey.json", "aws-route53-recordset.json", "aws-route53-recordsetgroup.json", - "aws-route53profiles-profile.json", - "aws-route53profiles-profileassociation.json", "aws-route53profiles-profileresourceassociation.json", "aws-route53resolver-firewalldomainlist.json", "aws-route53resolver-firewallrulegroup.json", @@ -1134,11 +1141,13 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-securityhub-automationrule.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-hub.json", "aws-securityhub-insight.json", "aws-securityhub-organizationconfiguration.json", "aws-securityhub-productsubscription.json", + "aws-securityhub-securitycontrol.json", "aws-securityhub-standard.json", "aws-servicecatalog-cloudformationproduct.json", "aws-servicecatalog-cloudformationprovisionedproduct.json", @@ -1200,6 +1209,16 @@ "aws-verifiedpermissions-policy.json", "aws-verifiedpermissions-policystore.json", "aws-verifiedpermissions-policytemplate.json", + "aws-vpclattice-accesslogsubscription.json", + "aws-vpclattice-authpolicy.json", + "aws-vpclattice-listener.json", + "aws-vpclattice-resourcepolicy.json", + "aws-vpclattice-rule.json", + "aws-vpclattice-service.json", + "aws-vpclattice-servicenetwork.json", + "aws-vpclattice-servicenetworkserviceassociation.json", + "aws-vpclattice-servicenetworkvpcassociation.json", + "aws-vpclattice-targetgroup.json", "aws-waf-bytematchset.json", "aws-waf-sqlinjectionmatchset.json", "aws-wafv2-ipset.json", diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-amazonmq-configuration.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-amazonmq-configuration.json new file mode 100644 index 0000000000..81cc7369f7 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_2/aws-amazonmq-configuration.json @@ -0,0 +1,77 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/EngineType", + "/properties/Name", + "/properties/AuthenticationStrategy", + "/properties/EngineVersion" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AuthenticationStrategy": { + "type": "string" + }, + "Data": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "EngineType": { + "type": "string" + }, + "EngineVersion": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Revision": { + "type": "integer" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Revision", + "/properties/Id", + "/properties/Arn" + ], + "required": [ + "EngineType", + "Data", + "Name" + ], + "typeName": "AWS::AmazonMQ::Configuration" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-apigatewayv2-api.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-apigatewayv2-api.json deleted file mode 100644 index 85210f6a4e..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-apigatewayv2-api.json +++ /dev/null @@ -1,165 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ProtocolType" - ], - "definitions": { - "BodyS3Location": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" - }, - "Etag": { - "type": "string" - }, - "Key": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "type": "object" - }, - "Cors": { - "additionalProperties": false, - "properties": { - "AllowCredentials": { - "type": "boolean" - }, - "AllowHeaders": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "AllowMethods": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "AllowOrigins": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "ExposeHeaders": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "MaxAge": { - "type": "integer" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/ApiId" - ], - "properties": { - "ApiEndpoint": { - "type": "string" - }, - "ApiId": { - "type": "string" - }, - "ApiKeySelectionExpression": { - "type": "string" - }, - "BasePath": { - "type": "string" - }, - "Body": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "BodyS3Location": { - "$ref": "#/definitions/BodyS3Location" - }, - "CorsConfiguration": { - "$ref": "#/definitions/Cors" - }, - "CredentialsArn": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "DisableExecuteApiEndpoint": { - "type": "boolean" - }, - "DisableSchemaValidation": { - "type": "boolean" - }, - "FailOnWarnings": { - "type": "boolean" - }, - "Name": { - "type": "string" - }, - "ProtocolType": { - "type": "string" - }, - "RouteKey": { - "type": "string" - }, - "RouteSelectionExpression": { - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - ".*": { - "type": "string" - } - }, - "type": "object" - }, - "Target": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/ApiId", - "/properties/ApiEndpoint" - ], - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::ApiGatewayV2::Api", - "writeOnlyProperties": [ - "/properties/ApiKeySelectionExpression", - "/properties/BasePath", - "/properties/Body", - "/properties/BodyS3Location", - "/properties/BodyS3Location/Etag", - "/properties/BodyS3Location/Bucket", - "/properties/BodyS3Location/Version", - "/properties/BodyS3Location/Key", - "/properties/CredentialsArn", - "/properties/FailOnWarnings", - "/properties/RouteKey", - "/properties/Target", - "/properties/DisableSchemaValidation" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-cognito-userpool.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-cognito-userpool.json new file mode 100644 index 0000000000..be46ed5eb0 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_2/aws-cognito-userpool.json @@ -0,0 +1,502 @@ +{ + "additionalProperties": false, + "definitions": { + "AccountRecoverySetting": { + "additionalProperties": false, + "properties": { + "RecoveryMechanisms": { + "items": { + "$ref": "#/definitions/RecoveryOption" + }, + "type": "array" + } + }, + "type": "object" + }, + "AdminCreateUserConfig": { + "additionalProperties": false, + "properties": { + "AllowAdminCreateUserOnly": { + "type": "boolean" + }, + "InviteMessageTemplate": { + "$ref": "#/definitions/InviteMessageTemplate" + }, + "UnusedAccountValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "AdvancedSecurityAdditionalFlows": { + "additionalProperties": false, + "properties": { + "CustomAuthMode": { + "type": "string" + } + }, + "type": "object" + }, + "CustomEmailSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "CustomSMSSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "DeviceConfiguration": { + "additionalProperties": false, + "properties": { + "ChallengeRequiredOnNewDevice": { + "type": "boolean" + }, + "DeviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + }, + "type": "object" + }, + "EmailConfiguration": { + "additionalProperties": false, + "properties": { + "ConfigurationSet": { + "type": "string" + }, + "EmailSendingAccount": { + "type": "string" + }, + "From": { + "type": "string" + }, + "ReplyToEmailAddress": { + "type": "string" + }, + "SourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "InviteMessageTemplate": { + "additionalProperties": false, + "properties": { + "EmailMessage": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "SMSMessage": { + "type": "string" + } + }, + "type": "object" + }, + "LambdaConfig": { + "additionalProperties": false, + "properties": { + "CreateAuthChallenge": { + "type": "string" + }, + "CustomEmailSender": { + "$ref": "#/definitions/CustomEmailSender" + }, + "CustomMessage": { + "type": "string" + }, + "CustomSMSSender": { + "$ref": "#/definitions/CustomSMSSender" + }, + "DefineAuthChallenge": { + "type": "string" + }, + "KMSKeyID": { + "type": "string" + }, + "PostAuthentication": { + "type": "string" + }, + "PostConfirmation": { + "type": "string" + }, + "PreAuthentication": { + "type": "string" + }, + "PreSignUp": { + "type": "string" + }, + "PreTokenGeneration": { + "type": "string" + }, + "PreTokenGenerationConfig": { + "$ref": "#/definitions/PreTokenGenerationConfig" + }, + "UserMigration": { + "type": "string" + }, + "VerifyAuthChallengeResponse": { + "type": "string" + } + }, + "type": "object" + }, + "NumberAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxValue": { + "type": "string" + }, + "MinValue": { + "type": "string" + } + }, + "type": "object" + }, + "PasswordPolicy": { + "additionalProperties": false, + "properties": { + "MinimumLength": { + "type": "integer" + }, + "PasswordHistorySize": { + "type": "integer" + }, + "RequireLowercase": { + "type": "boolean" + }, + "RequireNumbers": { + "type": "boolean" + }, + "RequireSymbols": { + "type": "boolean" + }, + "RequireUppercase": { + "type": "boolean" + }, + "TemporaryPasswordValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "Policies": { + "additionalProperties": false, + "properties": { + "PasswordPolicy": { + "$ref": "#/definitions/PasswordPolicy" + } + }, + "type": "object" + }, + "PreTokenGenerationConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "RecoveryOption": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Priority": { + "type": "integer" + } + }, + "type": "object" + }, + "SchemaAttribute": { + "additionalProperties": false, + "properties": { + "AttributeDataType": { + "type": "string" + }, + "DeveloperOnlyAttribute": { + "type": "boolean" + }, + "Mutable": { + "type": "boolean" + }, + "Name": { + "type": "string" + }, + "NumberAttributeConstraints": { + "$ref": "#/definitions/NumberAttributeConstraints" + }, + "Required": { + "type": "boolean" + }, + "StringAttributeConstraints": { + "$ref": "#/definitions/StringAttributeConstraints" + } + }, + "type": "object" + }, + "SmsConfiguration": { + "additionalProperties": false, + "properties": { + "ExternalId": { + "type": "string" + }, + "SnsCallerArn": { + "type": "string" + }, + "SnsRegion": { + "type": "string" + } + }, + "type": "object" + }, + "StringAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxLength": { + "type": "string" + }, + "MinLength": { + "type": "string" + } + }, + "type": "object" + }, + "UserAttributeUpdateSettings": { + "additionalProperties": false, + "properties": { + "AttributesRequireVerificationBeforeUpdate": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "AttributesRequireVerificationBeforeUpdate" + ], + "type": "object" + }, + "UserPoolAddOns": { + "additionalProperties": false, + "properties": { + "AdvancedSecurityAdditionalFlows": { + "$ref": "#/definitions/AdvancedSecurityAdditionalFlows" + }, + "AdvancedSecurityMode": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameConfiguration": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + } + }, + "type": "object" + }, + "VerificationMessageTemplate": { + "additionalProperties": false, + "properties": { + "DefaultEmailOption": { + "type": "string" + }, + "EmailMessage": { + "type": "string" + }, + "EmailMessageByLink": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "EmailSubjectByLink": { + "type": "string" + }, + "SmsMessage": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId" + ], + "properties": { + "AccountRecoverySetting": { + "$ref": "#/definitions/AccountRecoverySetting" + }, + "AdminCreateUserConfig": { + "$ref": "#/definitions/AdminCreateUserConfig" + }, + "AliasAttributes": { + "items": { + "enum": [ + "email", + "phone_number", + "preferred_username" + ], + "type": "string" + }, + "type": "array" + }, + "Arn": { + "type": "string" + }, + "AutoVerifiedAttributes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DeletionProtection": { + "type": "string" + }, + "DeviceConfiguration": { + "$ref": "#/definitions/DeviceConfiguration" + }, + "EmailConfiguration": { + "$ref": "#/definitions/EmailConfiguration" + }, + "EmailVerificationMessage": { + "maxLength": 20000, + "minLength": 6, + "type": "string" + }, + "EmailVerificationSubject": { + "maxLength": 140, + "minLength": 1, + "type": "string" + }, + "EnabledMfas": { + "items": { + "type": "string" + }, + "type": "array" + }, + "LambdaConfig": { + "$ref": "#/definitions/LambdaConfig" + }, + "MfaConfiguration": { + "enum": [ + "OFF", + "ON", + "OPTIONAL" + ], + "type": "string" + }, + "Policies": { + "$ref": "#/definitions/Policies" + }, + "ProviderName": { + "type": "string" + }, + "ProviderURL": { + "type": "string" + }, + "Schema": { + "items": { + "$ref": "#/definitions/SchemaAttribute" + }, + "type": "array" + }, + "SmsAuthenticationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "SmsConfiguration": { + "$ref": "#/definitions/SmsConfiguration" + }, + "SmsVerificationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "UserAttributeUpdateSettings": { + "$ref": "#/definitions/UserAttributeUpdateSettings" + }, + "UserPoolAddOns": { + "$ref": "#/definitions/UserPoolAddOns" + }, + "UserPoolId": { + "type": "string" + }, + "UserPoolName": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "UserPoolTags": { + "additionalProperties": false, + "patternProperties": { + "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameAttributes": { + "items": { + "enum": [ + "email", + "phone_number" + ], + "type": "string" + }, + "type": "array" + }, + "UsernameConfiguration": { + "$ref": "#/definitions/UsernameConfiguration" + }, + "VerificationMessageTemplate": { + "$ref": "#/definitions/VerificationMessageTemplate" + } + }, + "propertyTransform": { + "/properties/Schema/*/Name": "'custom:' & '' & Name" + }, + "readOnlyProperties": [ + "/properties/ProviderName", + "/properties/UserPoolId", + "/properties/ProviderURL", + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/UserPoolTags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Cognito::UserPool", + "writeOnlyProperties": [ + "/properties/EnabledMfas" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-fms-policy.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-fms-policy.json deleted file mode 100644 index b42a8ac885..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-fms-policy.json +++ /dev/null @@ -1,416 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AccountId": { - "maxLength": 12, - "minLength": 12, - "pattern": "^([0-9]*)$", - "type": "string" - }, - "Base62Id": { - "maxLength": 22, - "minLength": 22, - "pattern": "^[a-z0-9A-Z]{22}$", - "type": "string" - }, - "FirewallDeploymentModel": { - "enum": [ - "DISTRIBUTED", - "CENTRALIZED" - ], - "type": "string" - }, - "IEMap": { - "additionalProperties": false, - "properties": { - "ACCOUNT": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/AccountId" - }, - "type": "array" - }, - "ORGUNIT": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/OrganizationalUnitId" - }, - "type": "array" - } - }, - "type": "object" - }, - "ManagedServiceData": { - "maxLength": 30000, - "minLength": 1, - "type": "string" - }, - "NetworkAclCommonPolicy": { - "additionalProperties": false, - "properties": { - "NetworkAclEntrySet": { - "$ref": "#/definitions/NetworkAclEntrySet" - } - }, - "required": [ - "NetworkAclEntrySet" - ], - "type": "object" - }, - "NetworkAclEntry": { - "additionalProperties": false, - "properties": { - "CidrBlock": { - "pattern": "^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\\/([0-9]|[1-2][0-9]|3[0-2]))$", - "type": "string" - }, - "Egress": { - "type": "boolean" - }, - "IcmpTypeCode": { - "additionalProperties": false, - "properties": { - "Code": { - "maximum": 255, - "minimum": 0, - "type": "integer" - }, - "Type": { - "maximum": 255, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "Code", - "Type" - ], - "type": "object" - }, - "Ipv6CidrBlock": { - "pattern": "^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))(/(1[0-2]|[0-9]))?$", - "type": "string" - }, - "PortRange": { - "additionalProperties": false, - "properties": { - "From": { - "maximum": 65535, - "minimum": 0, - "type": "integer" - }, - "To": { - "maximum": 65535, - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "From", - "To" - ], - "type": "object" - }, - "Protocol": { - "pattern": "^(tcp|udp|icmp|([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]))$", - "type": "string" - }, - "RuleAction": { - "enum": [ - "allow", - "deny" - ], - "type": "string" - } - }, - "required": [ - "Egress", - "Protocol", - "RuleAction" - ], - "type": "object" - }, - "NetworkAclEntryList": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/NetworkAclEntry" - }, - "type": "array" - }, - "NetworkAclEntrySet": { - "additionalProperties": false, - "anyOf": [ - { - "required": [ - "FirstEntries" - ] - }, - { - "required": [ - "LastEntries" - ] - } - ], - "properties": { - "FirstEntries": { - "$ref": "#/definitions/NetworkAclEntryList" - }, - "ForceRemediateForFirstEntries": { - "type": "boolean" - }, - "ForceRemediateForLastEntries": { - "type": "boolean" - }, - "LastEntries": { - "$ref": "#/definitions/NetworkAclEntryList" - } - }, - "required": [ - "ForceRemediateForFirstEntries", - "ForceRemediateForLastEntries" - ], - "type": "object" - }, - "NetworkFirewallPolicy": { - "additionalProperties": false, - "properties": { - "FirewallDeploymentModel": { - "$ref": "#/definitions/FirewallDeploymentModel" - } - }, - "required": [ - "FirewallDeploymentModel" - ], - "type": "object" - }, - "OrganizationalUnitId": { - "maxLength": 68, - "minLength": 16, - "pattern": "^(ou-[0-9a-z]{4,32}-[a-z0-9]{8,32})$", - "type": "string" - }, - "PolicyOption": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "NetworkFirewallPolicy" - ] - }, - { - "required": [ - "ThirdPartyFirewallPolicy" - ] - }, - { - "required": [ - "NetworkAclCommonPolicy" - ] - } - ], - "properties": { - "NetworkAclCommonPolicy": { - "$ref": "#/definitions/NetworkAclCommonPolicy" - }, - "NetworkFirewallPolicy": { - "$ref": "#/definitions/NetworkFirewallPolicy" - }, - "ThirdPartyFirewallPolicy": { - "$ref": "#/definitions/ThirdPartyFirewallPolicy" - } - }, - "type": "object" - }, - "PolicyTag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "pattern": "^([^\\s]*)$", - "type": "string" - }, - "Value": { - "maxLength": 256, - "pattern": "^([^\\s]*)$", - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - }, - "PolicyType": { - "enum": [ - "WAF", - "WAFV2", - "SHIELD_ADVANCED", - "SECURITY_GROUPS_COMMON", - "SECURITY_GROUPS_CONTENT_AUDIT", - "SECURITY_GROUPS_USAGE_AUDIT", - "NETWORK_FIREWALL", - "THIRD_PARTY_FIREWALL", - "DNS_FIREWALL", - "IMPORT_NETWORK_FIREWALL", - "NETWORK_ACL_COMMON" - ], - "type": "string" - }, - "ResourceArn": { - "maxLength": 1024, - "minLength": 1, - "pattern": "^([^\\s]*)$", - "type": "string" - }, - "ResourceTag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - }, - "ResourceType": { - "maxLength": 128, - "minLength": 1, - "pattern": "^([^\\s]*)$", - "type": "string" - }, - "SecurityServicePolicyData": { - "additionalProperties": false, - "properties": { - "ManagedServiceData": { - "$ref": "#/definitions/ManagedServiceData" - }, - "PolicyOption": { - "$ref": "#/definitions/PolicyOption" - }, - "Type": { - "$ref": "#/definitions/PolicyType" - } - }, - "required": [ - "Type" - ], - "type": "object" - }, - "ThirdPartyFirewallPolicy": { - "additionalProperties": false, - "properties": { - "FirewallDeploymentModel": { - "$ref": "#/definitions/FirewallDeploymentModel" - } - }, - "required": [ - "FirewallDeploymentModel" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/ResourceArn" - }, - "DeleteAllPolicyResources": { - "type": "boolean" - }, - "ExcludeMap": { - "$ref": "#/definitions/IEMap" - }, - "ExcludeResourceTags": { - "type": "boolean" - }, - "Id": { - "maxLength": 36, - "minLength": 36, - "pattern": "^[a-z0-9A-Z-]{36}$", - "type": "string" - }, - "IncludeMap": { - "$ref": "#/definitions/IEMap" - }, - "PolicyDescription": { - "maxLength": 256, - "pattern": "^([a-zA-Z0-9_.:/=+\\-@\\s]+)$", - "type": "string" - }, - "PolicyName": { - "maxLength": 1024, - "minLength": 1, - "pattern": "^([a-zA-Z0-9_.:/=+\\-@\\s]+)$", - "type": "string" - }, - "RemediationEnabled": { - "type": "boolean" - }, - "ResourceSetIds": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/Base62Id" - }, - "type": "array", - "uniqueItems": true - }, - "ResourceTags": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/ResourceTag" - }, - "maxItems": 8, - "type": "array" - }, - "ResourceType": { - "$ref": "#/definitions/ResourceType" - }, - "ResourceTypeList": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/ResourceType" - }, - "type": "array" - }, - "ResourcesCleanUp": { - "type": "boolean" - }, - "SecurityServicePolicyData": { - "$ref": "#/definitions/SecurityServicePolicyData" - }, - "Tags": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/PolicyTag" - }, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/Id" - ], - "required": [ - "ExcludeResourceTags", - "PolicyName", - "RemediationEnabled", - "SecurityServicePolicyData" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-fms.git", - "typeName": "AWS::FMS::Policy", - "writeOnlyProperties": [ - "/properties/DeleteAllPolicyResources" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-iam-instanceprofile.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-iam-instanceprofile.json new file mode 100644 index 0000000000..ad7fe07aca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_2/aws-iam-instanceprofile.json @@ -0,0 +1,44 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/InstanceProfileName", + "/properties/Path" + ], + "primaryIdentifier": [ + "/properties/InstanceProfileName" + ], + "properties": { + "Arn": { + "type": "string" + }, + "InstanceProfileName": { + "type": "string" + }, + "Path": { + "type": "string" + }, + "Roles": { + "insertionOrder": false, + "items": { + "pattern": "[a-zA-Z0-9+=,.@\\-_]+", + "type": "string" + }, + "maxItems": 1, + "minItems": 1, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Roles" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "taggable": false + }, + "typeName": "AWS::IAM::InstanceProfile" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-route53profiles-profile.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-route53profiles-profile.json new file mode 100644 index 0000000000..123295aef9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_2/aws-route53profiles-profile.json @@ -0,0 +1,76 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "ClientToken": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Id", + "/properties/ClientToken" + ], + "required": [ + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Profiles::Profile", + "writeOnlyProperties": [ + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-route53profiles-profileassociation.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-route53profiles-profileassociation.json new file mode 100644 index 0000000000..b1857370f9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_2/aws-route53profiles-profileassociation.json @@ -0,0 +1,78 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name", + "/properties/ResourceId", + "/properties/ProfileId" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "ProfileId": { + "type": "string" + }, + "ResourceId": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "ResourceId", + "ProfileId", + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Profiles::ProfileAssociation", + "writeOnlyProperties": [ + "/properties/Arn", + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-securityhub-automationrule.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-securityhub-automationrule.json deleted file mode 100644 index 07eef12ca5..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-securityhub-automationrule.json +++ /dev/null @@ -1,690 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AutomationRulesAction": { - "properties": { - "FindingFieldsUpdate": { - "$ref": "#/definitions/AutomationRulesFindingFieldsUpdate" - }, - "Type": { - "enum": [ - "FINDING_FIELDS_UPDATE" - ], - "type": "string" - } - }, - "required": [ - "Type", - "FindingFieldsUpdate" - ], - "type": "object" - }, - "AutomationRulesFindingFieldsUpdate": { - "properties": { - "Confidence": { - "$ref": "#/definitions/int100" - }, - "Criticality": { - "$ref": "#/definitions/int100" - }, - "Note": { - "$ref": "#/definitions/NoteUpdate", - "type": "object" - }, - "RelatedFindings": { - "items": { - "$ref": "#/definitions/RelatedFinding" - }, - "maxItems": 10, - "minItems": 1, - "type": "array" - }, - "Severity": { - "$ref": "#/definitions/SeverityUpdate", - "type": "object" - }, - "Types": { - "items": { - "pattern": "^([^/]+)(/[^/]+){0,2}$", - "type": "string" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UserDefinedFields": { - "$ref": "#/definitions/map" - }, - "VerificationState": { - "enum": [ - "UNKNOWN", - "TRUE_POSITIVE", - "FALSE_POSITIVE", - "BENIGN_POSITIVE" - ], - "type": "string" - }, - "Workflow": { - "$ref": "#/definitions/WorkflowUpdate", - "type": "object" - } - }, - "type": "object" - }, - "AutomationRulesFindingFilters": { - "additionalProperties": false, - "properties": { - "AwsAccountId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "CompanyName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceAssociatedStandardsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceSecurityControlId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Confidence": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "CreatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Criticality": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Description": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "FirstObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "GeneratorId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Id": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "LastObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteText": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedBy": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RecordState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceDetailsOther": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "ResourcePartition": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceRegion": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceTags": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceType": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SeverityLabel": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SourceUrl": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Title": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Type": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UserDefinedFields": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "VerificationState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "WorkflowStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - } - }, - "type": "object" - }, - "BooleanFilter": { - "additionalProperties": false, - "properties": { - "Value": { - "type": "boolean" - } - }, - "required": [ - "Value" - ], - "type": "object" - }, - "DateFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "DateRange" - ] - }, - { - "allOf": [ - { - "required": [ - "Start" - ] - }, - { - "required": [ - "End" - ] - } - ] - } - ], - "properties": { - "DateRange": { - "$ref": "#/definitions/DateRange" - }, - "End": { - "$ref": "#/definitions/ISO8601DateString" - }, - "Start": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "type": "object" - }, - "DateRange": { - "additionalProperties": false, - "properties": { - "Unit": { - "enum": [ - "DAYS" - ], - "type": "string" - }, - "Value": { - "type": "number" - } - }, - "required": [ - "Unit", - "Value" - ], - "type": "object" - }, - "ISO8601DateString": { - "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$", - "type": "string" - }, - "MapFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "enum": [ - "EQUALS", - "NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Key", - "Value" - ], - "type": "object" - }, - "NonEmptyString": { - "minLength": 1, - "type": "string" - }, - "NoteUpdate": { - "additionalProperties": false, - "properties": { - "Text": { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - "UpdatedBy": { - "$ref": "#/definitions/arnOrId" - } - }, - "required": [ - "Text", - "UpdatedBy" - ], - "type": "object" - }, - "NumberFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "Eq" - ] - }, - { - "anyOf": [ - { - "required": [ - "Gte" - ] - }, - { - "required": [ - "Lte" - ] - } - ] - } - ], - "properties": { - "Eq": { - "type": "number" - }, - "Gte": { - "type": "number" - }, - "Lte": { - "type": "number" - } - }, - "type": "object" - }, - "RelatedFinding": { - "additionalProperties": false, - "properties": { - "Id": { - "$ref": "#/definitions/arnOrId" - }, - "ProductArn": { - "$ref": "#/definitions/arn" - } - }, - "required": [ - "ProductArn", - "Id" - ], - "type": "object" - }, - "SeverityUpdate": { - "additionalProperties": false, - "properties": { - "Label": { - "enum": [ - "INFORMATIONAL", - "LOW", - "MEDIUM", - "HIGH", - "CRITICAL" - ], - "type": "string" - }, - "Normalized": { - "$ref": "#/definitions/int100" - }, - "Product": { - "type": "number" - } - }, - "type": "object" - }, - "StringFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "$ref": "#/definitions/StringFilterComparison" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Value" - ], - "type": "object" - }, - "StringFilterComparison": { - "enum": [ - "EQUALS", - "PREFIX", - "NOT_EQUALS", - "PREFIX_NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - "^[a-zA-Z0-9]{1,128}$": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "WorkflowUpdate": { - "additionalProperties": false, - "properties": { - "Status": { - "enum": [ - "NEW", - "NOTIFIED", - "RESOLVED", - "SUPPRESSED" - ], - "type": "string" - } - }, - "required": [ - "Status" - ], - "type": "object" - }, - "arn": { - "maxLength": 2048, - "minLength": 12, - "pattern": "^arn:(aws|aws-cn|aws-us-gov|aws-iso-?[a-z]{0,2}):[A-Za-z0-9]{1,63}:[a-z]+-([a-z]{1,10}-)?[a-z]+-[0-9]+:([0-9]{12})?:.+$", - "type": "string" - }, - "arnOrId": { - "anyOf": [ - { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - { - "$ref": "#/definitions/arn" - } - ] - }, - "int100": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "map": { - "additionalProperties": false, - "maxProperties": 50, - "minProperties": 1, - "patternProperties": { - "^[-_+=.:/@\\w\\s]{1,128}$": { - "maxLength": 1024, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "timestamp": { - "format": "date-time", - "pattern": "(\\d\\d\\d\\d)-[0-1](\\d)-[0-3](\\d)[Tt](?:[0-2](\\d):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?(?:[Zz]|[+-](\\d\\d)(?::?(\\d\\d))?)$", - "type": "string" - } - }, - "primaryIdentifier": [ - "/properties/RuleArn" - ], - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/AutomationRulesAction" - }, - "maxItems": 1, - "minItems": 1, - "type": "array" - }, - "CreatedAt": { - "$ref": "#/definitions/ISO8601DateString" - }, - "CreatedBy": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "Criteria": { - "$ref": "#/definitions/AutomationRulesFindingFilters" - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "IsTerminal": { - "type": "boolean" - }, - "RuleArn": { - "pattern": "arn:aws\\S*:securityhub:\\S*", - "type": "string" - }, - "RuleName": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "RuleOrder": { - "maximum": 1000, - "minimum": 1, - "type": "integer" - }, - "RuleStatus": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "Tags": { - "$ref": "#/definitions/Tags" - }, - "UpdatedAt": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "readOnlyProperties": [ - "/properties/RuleArn", - "/properties/CreatedAt", - "/properties/UpdatedAt", - "/properties/CreatedBy" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecurityHub::AutomationRule" -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-securityhub-securitycontrol.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-securityhub-securitycontrol.json deleted file mode 100644 index 23fe0cf5e5..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-securityhub-securitycontrol.json +++ /dev/null @@ -1,164 +0,0 @@ -{ - "additionalIdentifiers": [ - [ - "/properties/SecurityControlArn" - ] - ], - "additionalProperties": false, - "anyOf": [ - { - "required": [ - "SecurityControlId" - ] - }, - { - "required": [ - "SecurityControlArn" - ] - } - ], - "definitions": { - "IntegerList": { - "items": { - "type": "integer" - }, - "type": "array" - }, - "NonEmptyString": { - "pattern": ".*\\S.*", - "type": "string" - }, - "NonEmptyStringList": { - "items": { - "$ref": "#/definitions/NonEmptyString" - }, - "type": "array" - }, - "ParameterConfiguration": { - "additionalProperties": false, - "properties": { - "Value": { - "$ref": "#/definitions/ParameterValue" - }, - "ValueType": { - "enum": [ - "DEFAULT", - "CUSTOM" - ], - "type": "string" - } - }, - "required": [ - "ValueType" - ], - "type": "object" - }, - "ParameterValue": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "Boolean" - ] - }, - { - "required": [ - "Double" - ] - }, - { - "required": [ - "Enum" - ] - }, - { - "required": [ - "EnumList" - ] - }, - { - "required": [ - "Integer" - ] - }, - { - "required": [ - "IntegerList" - ] - }, - { - "required": [ - "String" - ] - }, - { - "required": [ - "StringList" - ] - } - ], - "properties": { - "Boolean": { - "type": "boolean" - }, - "Double": { - "type": "number" - }, - "Enum": { - "$ref": "#/definitions/NonEmptyString" - }, - "EnumList": { - "$ref": "#/definitions/NonEmptyStringList" - }, - "Integer": { - "type": "integer" - }, - "IntegerList": { - "$ref": "#/definitions/IntegerList" - }, - "String": { - "$ref": "#/definitions/NonEmptyString" - }, - "StringList": { - "$ref": "#/definitions/NonEmptyStringList" - } - }, - "type": "object" - }, - "Parameters": { - "additionalProperties": false, - "patternProperties": { - ".*\\S.*": { - "$ref": "#/definitions/ParameterConfiguration" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/SecurityControlId" - ], - "properties": { - "LastUpdateReason": { - "pattern": "^([^\u0000-\u007f]|[-_ a-zA-Z0-9])+$", - "type": "string" - }, - "Parameters": { - "$ref": "#/definitions/Parameters" - }, - "SecurityControlArn": { - "$ref": "#/definitions/NonEmptyString" - }, - "SecurityControlId": { - "$ref": "#/definitions/NonEmptyString" - } - }, - "required": [ - "Parameters" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", - "tagging": { - "taggable": false - }, - "typeName": "AWS::SecurityHub::SecurityControl" -} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py b/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py index c0f407926a..0db8d98a00 100644 --- a/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py @@ -994,7 +994,6 @@ "aws-acmpca-certificateauthorityactivation.json", "aws-acmpca-permission.json", "aws-amazonmq-broker.json", - "aws-amazonmq-configuration.json", "aws-amplify-app.json", "aws-amplify-branch.json", "aws-amplify-domain.json", @@ -1171,7 +1170,6 @@ "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", "aws-cognito-logdeliveryconfiguration.json", - "aws-cognito-userpool.json", "aws-cognito-userpoolclient.json", "aws-cognito-userpooldomain.json", "aws-cognito-userpoolgroup.json", @@ -1730,7 +1728,6 @@ "aws-route53-recordset.json", "aws-route53-recordsetgroup.json", "aws-route53profiles-profile.json", - "aws-route53profiles-profileassociation.json", "aws-route53profiles-profileresourceassociation.json", "aws-route53resolver-firewalldomainlist.json", "aws-route53resolver-firewallrulegroup.json", @@ -1796,6 +1793,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-securityhub-automationrule.json", "aws-securityhub-configurationpolicy.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-findingaggregator.json", diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-amazonmq-configuration.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-amazonmq-configuration.json new file mode 100644 index 0000000000..81cc7369f7 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_north_1/aws-amazonmq-configuration.json @@ -0,0 +1,77 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/EngineType", + "/properties/Name", + "/properties/AuthenticationStrategy", + "/properties/EngineVersion" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AuthenticationStrategy": { + "type": "string" + }, + "Data": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "EngineType": { + "type": "string" + }, + "EngineVersion": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Revision": { + "type": "integer" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Revision", + "/properties/Id", + "/properties/Arn" + ], + "required": [ + "EngineType", + "Data", + "Name" + ], + "typeName": "AWS::AmazonMQ::Configuration" +} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-cognito-userpool.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-cognito-userpool.json new file mode 100644 index 0000000000..be46ed5eb0 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_north_1/aws-cognito-userpool.json @@ -0,0 +1,502 @@ +{ + "additionalProperties": false, + "definitions": { + "AccountRecoverySetting": { + "additionalProperties": false, + "properties": { + "RecoveryMechanisms": { + "items": { + "$ref": "#/definitions/RecoveryOption" + }, + "type": "array" + } + }, + "type": "object" + }, + "AdminCreateUserConfig": { + "additionalProperties": false, + "properties": { + "AllowAdminCreateUserOnly": { + "type": "boolean" + }, + "InviteMessageTemplate": { + "$ref": "#/definitions/InviteMessageTemplate" + }, + "UnusedAccountValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "AdvancedSecurityAdditionalFlows": { + "additionalProperties": false, + "properties": { + "CustomAuthMode": { + "type": "string" + } + }, + "type": "object" + }, + "CustomEmailSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "CustomSMSSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "DeviceConfiguration": { + "additionalProperties": false, + "properties": { + "ChallengeRequiredOnNewDevice": { + "type": "boolean" + }, + "DeviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + }, + "type": "object" + }, + "EmailConfiguration": { + "additionalProperties": false, + "properties": { + "ConfigurationSet": { + "type": "string" + }, + "EmailSendingAccount": { + "type": "string" + }, + "From": { + "type": "string" + }, + "ReplyToEmailAddress": { + "type": "string" + }, + "SourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "InviteMessageTemplate": { + "additionalProperties": false, + "properties": { + "EmailMessage": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "SMSMessage": { + "type": "string" + } + }, + "type": "object" + }, + "LambdaConfig": { + "additionalProperties": false, + "properties": { + "CreateAuthChallenge": { + "type": "string" + }, + "CustomEmailSender": { + "$ref": "#/definitions/CustomEmailSender" + }, + "CustomMessage": { + "type": "string" + }, + "CustomSMSSender": { + "$ref": "#/definitions/CustomSMSSender" + }, + "DefineAuthChallenge": { + "type": "string" + }, + "KMSKeyID": { + "type": "string" + }, + "PostAuthentication": { + "type": "string" + }, + "PostConfirmation": { + "type": "string" + }, + "PreAuthentication": { + "type": "string" + }, + "PreSignUp": { + "type": "string" + }, + "PreTokenGeneration": { + "type": "string" + }, + "PreTokenGenerationConfig": { + "$ref": "#/definitions/PreTokenGenerationConfig" + }, + "UserMigration": { + "type": "string" + }, + "VerifyAuthChallengeResponse": { + "type": "string" + } + }, + "type": "object" + }, + "NumberAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxValue": { + "type": "string" + }, + "MinValue": { + "type": "string" + } + }, + "type": "object" + }, + "PasswordPolicy": { + "additionalProperties": false, + "properties": { + "MinimumLength": { + "type": "integer" + }, + "PasswordHistorySize": { + "type": "integer" + }, + "RequireLowercase": { + "type": "boolean" + }, + "RequireNumbers": { + "type": "boolean" + }, + "RequireSymbols": { + "type": "boolean" + }, + "RequireUppercase": { + "type": "boolean" + }, + "TemporaryPasswordValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "Policies": { + "additionalProperties": false, + "properties": { + "PasswordPolicy": { + "$ref": "#/definitions/PasswordPolicy" + } + }, + "type": "object" + }, + "PreTokenGenerationConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "RecoveryOption": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Priority": { + "type": "integer" + } + }, + "type": "object" + }, + "SchemaAttribute": { + "additionalProperties": false, + "properties": { + "AttributeDataType": { + "type": "string" + }, + "DeveloperOnlyAttribute": { + "type": "boolean" + }, + "Mutable": { + "type": "boolean" + }, + "Name": { + "type": "string" + }, + "NumberAttributeConstraints": { + "$ref": "#/definitions/NumberAttributeConstraints" + }, + "Required": { + "type": "boolean" + }, + "StringAttributeConstraints": { + "$ref": "#/definitions/StringAttributeConstraints" + } + }, + "type": "object" + }, + "SmsConfiguration": { + "additionalProperties": false, + "properties": { + "ExternalId": { + "type": "string" + }, + "SnsCallerArn": { + "type": "string" + }, + "SnsRegion": { + "type": "string" + } + }, + "type": "object" + }, + "StringAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxLength": { + "type": "string" + }, + "MinLength": { + "type": "string" + } + }, + "type": "object" + }, + "UserAttributeUpdateSettings": { + "additionalProperties": false, + "properties": { + "AttributesRequireVerificationBeforeUpdate": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "AttributesRequireVerificationBeforeUpdate" + ], + "type": "object" + }, + "UserPoolAddOns": { + "additionalProperties": false, + "properties": { + "AdvancedSecurityAdditionalFlows": { + "$ref": "#/definitions/AdvancedSecurityAdditionalFlows" + }, + "AdvancedSecurityMode": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameConfiguration": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + } + }, + "type": "object" + }, + "VerificationMessageTemplate": { + "additionalProperties": false, + "properties": { + "DefaultEmailOption": { + "type": "string" + }, + "EmailMessage": { + "type": "string" + }, + "EmailMessageByLink": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "EmailSubjectByLink": { + "type": "string" + }, + "SmsMessage": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId" + ], + "properties": { + "AccountRecoverySetting": { + "$ref": "#/definitions/AccountRecoverySetting" + }, + "AdminCreateUserConfig": { + "$ref": "#/definitions/AdminCreateUserConfig" + }, + "AliasAttributes": { + "items": { + "enum": [ + "email", + "phone_number", + "preferred_username" + ], + "type": "string" + }, + "type": "array" + }, + "Arn": { + "type": "string" + }, + "AutoVerifiedAttributes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DeletionProtection": { + "type": "string" + }, + "DeviceConfiguration": { + "$ref": "#/definitions/DeviceConfiguration" + }, + "EmailConfiguration": { + "$ref": "#/definitions/EmailConfiguration" + }, + "EmailVerificationMessage": { + "maxLength": 20000, + "minLength": 6, + "type": "string" + }, + "EmailVerificationSubject": { + "maxLength": 140, + "minLength": 1, + "type": "string" + }, + "EnabledMfas": { + "items": { + "type": "string" + }, + "type": "array" + }, + "LambdaConfig": { + "$ref": "#/definitions/LambdaConfig" + }, + "MfaConfiguration": { + "enum": [ + "OFF", + "ON", + "OPTIONAL" + ], + "type": "string" + }, + "Policies": { + "$ref": "#/definitions/Policies" + }, + "ProviderName": { + "type": "string" + }, + "ProviderURL": { + "type": "string" + }, + "Schema": { + "items": { + "$ref": "#/definitions/SchemaAttribute" + }, + "type": "array" + }, + "SmsAuthenticationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "SmsConfiguration": { + "$ref": "#/definitions/SmsConfiguration" + }, + "SmsVerificationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "UserAttributeUpdateSettings": { + "$ref": "#/definitions/UserAttributeUpdateSettings" + }, + "UserPoolAddOns": { + "$ref": "#/definitions/UserPoolAddOns" + }, + "UserPoolId": { + "type": "string" + }, + "UserPoolName": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "UserPoolTags": { + "additionalProperties": false, + "patternProperties": { + "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameAttributes": { + "items": { + "enum": [ + "email", + "phone_number" + ], + "type": "string" + }, + "type": "array" + }, + "UsernameConfiguration": { + "$ref": "#/definitions/UsernameConfiguration" + }, + "VerificationMessageTemplate": { + "$ref": "#/definitions/VerificationMessageTemplate" + } + }, + "propertyTransform": { + "/properties/Schema/*/Name": "'custom:' & '' & Name" + }, + "readOnlyProperties": [ + "/properties/ProviderName", + "/properties/UserPoolId", + "/properties/ProviderURL", + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/UserPoolTags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Cognito::UserPool", + "writeOnlyProperties": [ + "/properties/EnabledMfas" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-route53profiles-profileassociation.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-route53profiles-profileassociation.json new file mode 100644 index 0000000000..b1857370f9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_north_1/aws-route53profiles-profileassociation.json @@ -0,0 +1,78 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name", + "/properties/ResourceId", + "/properties/ProfileId" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "ProfileId": { + "type": "string" + }, + "ResourceId": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "ResourceId", + "ProfileId", + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Profiles::ProfileAssociation", + "writeOnlyProperties": [ + "/properties/Arn", + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-securityhub-automationrule.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-securityhub-automationrule.json deleted file mode 100644 index 07eef12ca5..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_north_1/aws-securityhub-automationrule.json +++ /dev/null @@ -1,690 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AutomationRulesAction": { - "properties": { - "FindingFieldsUpdate": { - "$ref": "#/definitions/AutomationRulesFindingFieldsUpdate" - }, - "Type": { - "enum": [ - "FINDING_FIELDS_UPDATE" - ], - "type": "string" - } - }, - "required": [ - "Type", - "FindingFieldsUpdate" - ], - "type": "object" - }, - "AutomationRulesFindingFieldsUpdate": { - "properties": { - "Confidence": { - "$ref": "#/definitions/int100" - }, - "Criticality": { - "$ref": "#/definitions/int100" - }, - "Note": { - "$ref": "#/definitions/NoteUpdate", - "type": "object" - }, - "RelatedFindings": { - "items": { - "$ref": "#/definitions/RelatedFinding" - }, - "maxItems": 10, - "minItems": 1, - "type": "array" - }, - "Severity": { - "$ref": "#/definitions/SeverityUpdate", - "type": "object" - }, - "Types": { - "items": { - "pattern": "^([^/]+)(/[^/]+){0,2}$", - "type": "string" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UserDefinedFields": { - "$ref": "#/definitions/map" - }, - "VerificationState": { - "enum": [ - "UNKNOWN", - "TRUE_POSITIVE", - "FALSE_POSITIVE", - "BENIGN_POSITIVE" - ], - "type": "string" - }, - "Workflow": { - "$ref": "#/definitions/WorkflowUpdate", - "type": "object" - } - }, - "type": "object" - }, - "AutomationRulesFindingFilters": { - "additionalProperties": false, - "properties": { - "AwsAccountId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "CompanyName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceAssociatedStandardsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceSecurityControlId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ComplianceStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Confidence": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "CreatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Criticality": { - "items": { - "$ref": "#/definitions/NumberFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Description": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "FirstObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "GeneratorId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Id": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "LastObservedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteText": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "NoteUpdatedBy": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ProductName": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RecordState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "RelatedFindingsProductArn": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceDetailsOther": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceId": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "ResourcePartition": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceRegion": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceTags": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "ResourceType": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SeverityLabel": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "SourceUrl": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "Title": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 100, - "type": "array" - }, - "Type": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UpdatedAt": { - "items": { - "$ref": "#/definitions/DateFilter" - }, - "maxItems": 20, - "type": "array" - }, - "UserDefinedFields": { - "items": { - "$ref": "#/definitions/MapFilter" - }, - "maxItems": 20, - "type": "array" - }, - "VerificationState": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - }, - "WorkflowStatus": { - "items": { - "$ref": "#/definitions/StringFilter" - }, - "maxItems": 20, - "type": "array" - } - }, - "type": "object" - }, - "BooleanFilter": { - "additionalProperties": false, - "properties": { - "Value": { - "type": "boolean" - } - }, - "required": [ - "Value" - ], - "type": "object" - }, - "DateFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "DateRange" - ] - }, - { - "allOf": [ - { - "required": [ - "Start" - ] - }, - { - "required": [ - "End" - ] - } - ] - } - ], - "properties": { - "DateRange": { - "$ref": "#/definitions/DateRange" - }, - "End": { - "$ref": "#/definitions/ISO8601DateString" - }, - "Start": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "type": "object" - }, - "DateRange": { - "additionalProperties": false, - "properties": { - "Unit": { - "enum": [ - "DAYS" - ], - "type": "string" - }, - "Value": { - "type": "number" - } - }, - "required": [ - "Unit", - "Value" - ], - "type": "object" - }, - "ISO8601DateString": { - "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$", - "type": "string" - }, - "MapFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "enum": [ - "EQUALS", - "NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Key", - "Value" - ], - "type": "object" - }, - "NonEmptyString": { - "minLength": 1, - "type": "string" - }, - "NoteUpdate": { - "additionalProperties": false, - "properties": { - "Text": { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - "UpdatedBy": { - "$ref": "#/definitions/arnOrId" - } - }, - "required": [ - "Text", - "UpdatedBy" - ], - "type": "object" - }, - "NumberFilter": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "Eq" - ] - }, - { - "anyOf": [ - { - "required": [ - "Gte" - ] - }, - { - "required": [ - "Lte" - ] - } - ] - } - ], - "properties": { - "Eq": { - "type": "number" - }, - "Gte": { - "type": "number" - }, - "Lte": { - "type": "number" - } - }, - "type": "object" - }, - "RelatedFinding": { - "additionalProperties": false, - "properties": { - "Id": { - "$ref": "#/definitions/arnOrId" - }, - "ProductArn": { - "$ref": "#/definitions/arn" - } - }, - "required": [ - "ProductArn", - "Id" - ], - "type": "object" - }, - "SeverityUpdate": { - "additionalProperties": false, - "properties": { - "Label": { - "enum": [ - "INFORMATIONAL", - "LOW", - "MEDIUM", - "HIGH", - "CRITICAL" - ], - "type": "string" - }, - "Normalized": { - "$ref": "#/definitions/int100" - }, - "Product": { - "type": "number" - } - }, - "type": "object" - }, - "StringFilter": { - "additionalProperties": false, - "properties": { - "Comparison": { - "$ref": "#/definitions/StringFilterComparison" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Comparison", - "Value" - ], - "type": "object" - }, - "StringFilterComparison": { - "enum": [ - "EQUALS", - "PREFIX", - "NOT_EQUALS", - "PREFIX_NOT_EQUALS", - "CONTAINS", - "NOT_CONTAINS" - ], - "type": "string" - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - "^[a-zA-Z0-9]{1,128}$": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "WorkflowUpdate": { - "additionalProperties": false, - "properties": { - "Status": { - "enum": [ - "NEW", - "NOTIFIED", - "RESOLVED", - "SUPPRESSED" - ], - "type": "string" - } - }, - "required": [ - "Status" - ], - "type": "object" - }, - "arn": { - "maxLength": 2048, - "minLength": 12, - "pattern": "^arn:(aws|aws-cn|aws-us-gov|aws-iso-?[a-z]{0,2}):[A-Za-z0-9]{1,63}:[a-z]+-([a-z]{1,10}-)?[a-z]+-[0-9]+:([0-9]{12})?:.+$", - "type": "string" - }, - "arnOrId": { - "anyOf": [ - { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - { - "$ref": "#/definitions/arn" - } - ] - }, - "int100": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "map": { - "additionalProperties": false, - "maxProperties": 50, - "minProperties": 1, - "patternProperties": { - "^[-_+=.:/@\\w\\s]{1,128}$": { - "maxLength": 1024, - "minLength": 0, - "type": "string" - } - }, - "type": "object" - }, - "timestamp": { - "format": "date-time", - "pattern": "(\\d\\d\\d\\d)-[0-1](\\d)-[0-3](\\d)[Tt](?:[0-2](\\d):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?(?:[Zz]|[+-](\\d\\d)(?::?(\\d\\d))?)$", - "type": "string" - } - }, - "primaryIdentifier": [ - "/properties/RuleArn" - ], - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/AutomationRulesAction" - }, - "maxItems": 1, - "minItems": 1, - "type": "array" - }, - "CreatedAt": { - "$ref": "#/definitions/ISO8601DateString" - }, - "CreatedBy": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "Criteria": { - "$ref": "#/definitions/AutomationRulesFindingFilters" - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "IsTerminal": { - "type": "boolean" - }, - "RuleArn": { - "pattern": "arn:aws\\S*:securityhub:\\S*", - "type": "string" - }, - "RuleName": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "RuleOrder": { - "maximum": 1000, - "minimum": 1, - "type": "integer" - }, - "RuleStatus": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "Tags": { - "$ref": "#/definitions/Tags" - }, - "UpdatedAt": { - "$ref": "#/definitions/ISO8601DateString" - } - }, - "readOnlyProperties": [ - "/properties/RuleArn", - "/properties/CreatedAt", - "/properties/UpdatedAt", - "/properties/CreatedBy" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecurityHub::AutomationRule" -} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py b/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py index 1bcf2a6df3..d59f19ec60 100644 --- a/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py @@ -808,7 +808,6 @@ "aws-acmpca-certificateauthorityactivation.json", "aws-acmpca-permission.json", "aws-amazonmq-broker.json", - "aws-amazonmq-configuration.json", "aws-amplify-app.json", "aws-amplify-branch.json", "aws-amplify-domain.json", @@ -965,7 +964,6 @@ "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", "aws-cognito-logdeliveryconfiguration.json", - "aws-cognito-userpool.json", "aws-cognito-userpoolclient.json", "aws-cognito-userpoolgroup.json", "aws-cognito-userpoolresourceserver.json", @@ -1215,7 +1213,6 @@ "aws-guardduty-threatintelset.json", "aws-iam-group.json", "aws-iam-grouppolicy.json", - "aws-iam-instanceprofile.json", "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", @@ -1260,6 +1257,7 @@ "aws-lambda-codesigningconfig.json", "aws-lambda-eventinvokeconfig.json", "aws-lambda-eventsourcemapping.json", + "aws-lambda-function.json", "aws-lambda-layerversion.json", "aws-lambda-layerversionpermission.json", "aws-lambda-permission.json", @@ -1375,8 +1373,6 @@ "aws-route53-keysigningkey.json", "aws-route53-recordset.json", "aws-route53-recordsetgroup.json", - "aws-route53profiles-profile.json", - "aws-route53profiles-profileassociation.json", "aws-route53profiles-profileresourceassociation.json", "aws-route53resolver-firewalldomainlist.json", "aws-route53resolver-firewallrulegroup.json", @@ -1431,6 +1427,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-securityhub-automationrule.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-hub.json", "aws-securityhub-insight.json", diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-amazonmq-configuration.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-amazonmq-configuration.json new file mode 100644 index 0000000000..81cc7369f7 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_1/aws-amazonmq-configuration.json @@ -0,0 +1,77 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/EngineType", + "/properties/Name", + "/properties/AuthenticationStrategy", + "/properties/EngineVersion" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AuthenticationStrategy": { + "type": "string" + }, + "Data": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "EngineType": { + "type": "string" + }, + "EngineVersion": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "Revision": { + "type": "integer" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Revision", + "/properties/Id", + "/properties/Arn" + ], + "required": [ + "EngineType", + "Data", + "Name" + ], + "typeName": "AWS::AmazonMQ::Configuration" +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-cognito-userpool.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-cognito-userpool.json new file mode 100644 index 0000000000..be46ed5eb0 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_1/aws-cognito-userpool.json @@ -0,0 +1,502 @@ +{ + "additionalProperties": false, + "definitions": { + "AccountRecoverySetting": { + "additionalProperties": false, + "properties": { + "RecoveryMechanisms": { + "items": { + "$ref": "#/definitions/RecoveryOption" + }, + "type": "array" + } + }, + "type": "object" + }, + "AdminCreateUserConfig": { + "additionalProperties": false, + "properties": { + "AllowAdminCreateUserOnly": { + "type": "boolean" + }, + "InviteMessageTemplate": { + "$ref": "#/definitions/InviteMessageTemplate" + }, + "UnusedAccountValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "AdvancedSecurityAdditionalFlows": { + "additionalProperties": false, + "properties": { + "CustomAuthMode": { + "type": "string" + } + }, + "type": "object" + }, + "CustomEmailSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "CustomSMSSender": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "DeviceConfiguration": { + "additionalProperties": false, + "properties": { + "ChallengeRequiredOnNewDevice": { + "type": "boolean" + }, + "DeviceOnlyRememberedOnUserPrompt": { + "type": "boolean" + } + }, + "type": "object" + }, + "EmailConfiguration": { + "additionalProperties": false, + "properties": { + "ConfigurationSet": { + "type": "string" + }, + "EmailSendingAccount": { + "type": "string" + }, + "From": { + "type": "string" + }, + "ReplyToEmailAddress": { + "type": "string" + }, + "SourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "InviteMessageTemplate": { + "additionalProperties": false, + "properties": { + "EmailMessage": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "SMSMessage": { + "type": "string" + } + }, + "type": "object" + }, + "LambdaConfig": { + "additionalProperties": false, + "properties": { + "CreateAuthChallenge": { + "type": "string" + }, + "CustomEmailSender": { + "$ref": "#/definitions/CustomEmailSender" + }, + "CustomMessage": { + "type": "string" + }, + "CustomSMSSender": { + "$ref": "#/definitions/CustomSMSSender" + }, + "DefineAuthChallenge": { + "type": "string" + }, + "KMSKeyID": { + "type": "string" + }, + "PostAuthentication": { + "type": "string" + }, + "PostConfirmation": { + "type": "string" + }, + "PreAuthentication": { + "type": "string" + }, + "PreSignUp": { + "type": "string" + }, + "PreTokenGeneration": { + "type": "string" + }, + "PreTokenGenerationConfig": { + "$ref": "#/definitions/PreTokenGenerationConfig" + }, + "UserMigration": { + "type": "string" + }, + "VerifyAuthChallengeResponse": { + "type": "string" + } + }, + "type": "object" + }, + "NumberAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxValue": { + "type": "string" + }, + "MinValue": { + "type": "string" + } + }, + "type": "object" + }, + "PasswordPolicy": { + "additionalProperties": false, + "properties": { + "MinimumLength": { + "type": "integer" + }, + "PasswordHistorySize": { + "type": "integer" + }, + "RequireLowercase": { + "type": "boolean" + }, + "RequireNumbers": { + "type": "boolean" + }, + "RequireSymbols": { + "type": "boolean" + }, + "RequireUppercase": { + "type": "boolean" + }, + "TemporaryPasswordValidityDays": { + "type": "integer" + } + }, + "type": "object" + }, + "Policies": { + "additionalProperties": false, + "properties": { + "PasswordPolicy": { + "$ref": "#/definitions/PasswordPolicy" + } + }, + "type": "object" + }, + "PreTokenGenerationConfig": { + "additionalProperties": false, + "properties": { + "LambdaArn": { + "type": "string" + }, + "LambdaVersion": { + "type": "string" + } + }, + "type": "object" + }, + "RecoveryOption": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Priority": { + "type": "integer" + } + }, + "type": "object" + }, + "SchemaAttribute": { + "additionalProperties": false, + "properties": { + "AttributeDataType": { + "type": "string" + }, + "DeveloperOnlyAttribute": { + "type": "boolean" + }, + "Mutable": { + "type": "boolean" + }, + "Name": { + "type": "string" + }, + "NumberAttributeConstraints": { + "$ref": "#/definitions/NumberAttributeConstraints" + }, + "Required": { + "type": "boolean" + }, + "StringAttributeConstraints": { + "$ref": "#/definitions/StringAttributeConstraints" + } + }, + "type": "object" + }, + "SmsConfiguration": { + "additionalProperties": false, + "properties": { + "ExternalId": { + "type": "string" + }, + "SnsCallerArn": { + "type": "string" + }, + "SnsRegion": { + "type": "string" + } + }, + "type": "object" + }, + "StringAttributeConstraints": { + "additionalProperties": false, + "properties": { + "MaxLength": { + "type": "string" + }, + "MinLength": { + "type": "string" + } + }, + "type": "object" + }, + "UserAttributeUpdateSettings": { + "additionalProperties": false, + "properties": { + "AttributesRequireVerificationBeforeUpdate": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "AttributesRequireVerificationBeforeUpdate" + ], + "type": "object" + }, + "UserPoolAddOns": { + "additionalProperties": false, + "properties": { + "AdvancedSecurityAdditionalFlows": { + "$ref": "#/definitions/AdvancedSecurityAdditionalFlows" + }, + "AdvancedSecurityMode": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameConfiguration": { + "additionalProperties": false, + "properties": { + "CaseSensitive": { + "type": "boolean" + } + }, + "type": "object" + }, + "VerificationMessageTemplate": { + "additionalProperties": false, + "properties": { + "DefaultEmailOption": { + "type": "string" + }, + "EmailMessage": { + "type": "string" + }, + "EmailMessageByLink": { + "type": "string" + }, + "EmailSubject": { + "type": "string" + }, + "EmailSubjectByLink": { + "type": "string" + }, + "SmsMessage": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId" + ], + "properties": { + "AccountRecoverySetting": { + "$ref": "#/definitions/AccountRecoverySetting" + }, + "AdminCreateUserConfig": { + "$ref": "#/definitions/AdminCreateUserConfig" + }, + "AliasAttributes": { + "items": { + "enum": [ + "email", + "phone_number", + "preferred_username" + ], + "type": "string" + }, + "type": "array" + }, + "Arn": { + "type": "string" + }, + "AutoVerifiedAttributes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DeletionProtection": { + "type": "string" + }, + "DeviceConfiguration": { + "$ref": "#/definitions/DeviceConfiguration" + }, + "EmailConfiguration": { + "$ref": "#/definitions/EmailConfiguration" + }, + "EmailVerificationMessage": { + "maxLength": 20000, + "minLength": 6, + "type": "string" + }, + "EmailVerificationSubject": { + "maxLength": 140, + "minLength": 1, + "type": "string" + }, + "EnabledMfas": { + "items": { + "type": "string" + }, + "type": "array" + }, + "LambdaConfig": { + "$ref": "#/definitions/LambdaConfig" + }, + "MfaConfiguration": { + "enum": [ + "OFF", + "ON", + "OPTIONAL" + ], + "type": "string" + }, + "Policies": { + "$ref": "#/definitions/Policies" + }, + "ProviderName": { + "type": "string" + }, + "ProviderURL": { + "type": "string" + }, + "Schema": { + "items": { + "$ref": "#/definitions/SchemaAttribute" + }, + "type": "array" + }, + "SmsAuthenticationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "SmsConfiguration": { + "$ref": "#/definitions/SmsConfiguration" + }, + "SmsVerificationMessage": { + "maxLength": 140, + "minLength": 6, + "type": "string" + }, + "UserAttributeUpdateSettings": { + "$ref": "#/definitions/UserAttributeUpdateSettings" + }, + "UserPoolAddOns": { + "$ref": "#/definitions/UserPoolAddOns" + }, + "UserPoolId": { + "type": "string" + }, + "UserPoolName": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "UserPoolTags": { + "additionalProperties": false, + "patternProperties": { + "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$": { + "type": "string" + } + }, + "type": "object" + }, + "UsernameAttributes": { + "items": { + "enum": [ + "email", + "phone_number" + ], + "type": "string" + }, + "type": "array" + }, + "UsernameConfiguration": { + "$ref": "#/definitions/UsernameConfiguration" + }, + "VerificationMessageTemplate": { + "$ref": "#/definitions/VerificationMessageTemplate" + } + }, + "propertyTransform": { + "/properties/Schema/*/Name": "'custom:' & '' & Name" + }, + "readOnlyProperties": [ + "/properties/ProviderName", + "/properties/UserPoolId", + "/properties/ProviderURL", + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/UserPoolTags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Cognito::UserPool", + "writeOnlyProperties": [ + "/properties/EnabledMfas" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-iam-instanceprofile.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-iam-instanceprofile.json new file mode 100644 index 0000000000..ad7fe07aca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_1/aws-iam-instanceprofile.json @@ -0,0 +1,44 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/InstanceProfileName", + "/properties/Path" + ], + "primaryIdentifier": [ + "/properties/InstanceProfileName" + ], + "properties": { + "Arn": { + "type": "string" + }, + "InstanceProfileName": { + "type": "string" + }, + "Path": { + "type": "string" + }, + "Roles": { + "insertionOrder": false, + "items": { + "pattern": "[a-zA-Z0-9+=,.@\\-_]+", + "type": "string" + }, + "maxItems": 1, + "minItems": 1, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Roles" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "taggable": false + }, + "typeName": "AWS::IAM::InstanceProfile" +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-lambda-function.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-lambda-function.json deleted file mode 100644 index b06dc5379c..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_1/aws-lambda-function.json +++ /dev/null @@ -1,505 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/FunctionName" - ], - "definitions": { - "Code": { - "additionalProperties": false, - "properties": { - "ImageUri": { - "type": "string" - }, - "S3Bucket": { - "maxLength": 63, - "minLength": 3, - "pattern": "^[0-9A-Za-z\\.\\-_]*(?