@critiq/rules 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -2
- package/catalog.yaml +798 -0
- package/package.json +1 -1
- package/rules/cfn/cfn.correctness.attributedefinitions-keyschemas-mismatch.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.base64-validation-of-parameters.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.basic-cloudformation-resource-check.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.basic-cloudformation-template-configuration.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.cannot-reference-resources-in-the-conditions-block-of-the-template.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-at-least-one-essential-container-is-specified.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-deletionpolicy-values-for-resources.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-dependson-values-for-resources.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-ec2-ebs-properties.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-elastic-cache-redis-cluster-settings.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-events-rule-targets-are-less-than-or-equal-to-5.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-fargate-service-scheduling-strategy.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-fn-and-structure-for-validity.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-fn-equals-structure-for-validity.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-fn-if-structure-for-validity.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-fn-not-structure-for-validity.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-fn-or-structure-for-validity.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-for-subscriptionfilters-have-beyond-2-attachments-to-a-cloudwatch-log-group.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-if-a-json-object-is-within-size-limits.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-if-a-list-has-between-min-and-max-number-of-values-specified.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-if-a-list-has-duplicate-values.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-if-a-number-is-between-min-and-max.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-if-a-string-has-between-min-and-max-number-of-values-specified.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-if-eol-lambda-function-runtimes-are-used.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-if-properties-have-a-valid-value.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-if-property-values-adhere-to-a-specific-pattern.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-if-refing-to-a-iam-resource-with-path-set.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-if-refs-exist.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-if-serverless-resources-have-serverless-transform.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-if-the-referenced-conditions-are-defined.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-minimum-90-period-is-met-between-backupplan-cold-and-delete.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-properties-that-are-mutually-exclusive.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-properties-that-are-required-together.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-properties-that-need-at-least-one-of-a-list-of-properties.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-properties-that-need-only-one-of-a-list-of-properties.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-resource-properties-values.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-state-machine-definition-for-proper-syntax.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-that-modules-resources-are-valid.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-the-configuration-of-a-resources-updatepolicy.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-updatereplacepolicy-values-for-resources.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.check-values-of-properties-for-valid-refs-and-getatts.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.cidr-validation-of-parameters.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.cloudfront-aliases.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.codepipeline-stage-actions.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.codepipeline-stages.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.conditions-have-appropriate-properties.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.default-value-cannot-use-refs.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.default-value-is-within-parameter-constraints.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.error-processing-rule-on-the-template.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.findinmap-validation-of-configuration.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.getatt-validation-of-parameters.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.getaz-validation-of-parameters.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.importvalue-validation-of-parameters.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.join-validation-of-parameters.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.length-validation-of-parameters.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.mapping-attribute-limit-not-exceeded.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.mapping-keys-are-strings-and-alphanumeric.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.mapping-limit-not-exceeded.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.mapping-name-limit-not-exceeded.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.mappings-are-appropriately-configured.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.mappings-have-appropriate-names.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.metadata-interface-have-appropriate-properties.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.output-description-limit-not-exceeded.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.output-limit-not-exceeded.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.output-name-limit-not-exceeded.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.outputs-descriptions-can-only-be-strings.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.outputs-have-appropriate-names.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.outputs-have-appropriate-properties.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.outputs-have-required-properties.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.outputs-have-values-of-strings.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.parameter-limit-not-exceeded.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.parameter-name-limit-not-exceeded.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.parameter-value-limit-not-exceeded.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.parameters-have-appropriate-names.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.parameters-have-appropriate-properties.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.parameters-have-appropriate-type.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.property-is-required-based-on-another-properties-value.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.property-is-unwanted-based-on-another-properties-value.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.rds-instance-type-is-compatible-with-the-rds-type.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.recordset-hostedzonename-is-a-superdomain-of-name.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.ref-validation-of-value.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.required-resource-properties-are-missing.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.resource-dependencies-are-not-circular.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.resource-ec2-security-group-ingress-properties.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.resource-elb-properties.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.resource-limit-not-exceeded.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.resource-name-limit-not-exceeded.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.resource-properties-are-invalid.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.resource-schema.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.resource-subnetroutetableassociation-properties.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.resources-have-appropriate-names.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.select-validation-of-parameters.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.snapstart-supports-the-configured-runtime.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.split-validation-of-parameters.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.sub-is-required-if-a-variable-is-used-in-a-string.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.sub-validation-of-parameters.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.template-description-can-only-be-a-string.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.template-description-limit.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.template-size-limit.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.tojsonstring-validation-of-parameters.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.unique-resource-and-parameter-names.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.validate-accesscontrol-are-set-with-ownershipcontrols.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.validate-aws-event-scheduleexpression-format.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.validate-parameters-for-in-a-nested-stack.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.validate-route53-recordsets.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.validate-the-configuration-of-the-metadata-section.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.validates-foreach-functions.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.validation-not-function-configuration.rule.yaml +49 -0
- package/rules/cfn/cfn.correctness.validationdomain-is-superdomain-of-domainname.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.arns-should-use-correctly-placed-pseudo-parameters.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.availability-zone-parameters-should-not-be-hardcoded.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.check-iam-resource-policies-syntax.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.check-if-a-list-that-allows-duplicates-has-any-duplicates.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.check-if-conditions-are-used.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.check-if-eol-lambda-function-runtimes-are-used-w2531.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.check-if-imageid-parameters-have-the-correct-type.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.check-if-mappings-are-used.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.check-if-parameters-are-used.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.check-if-parameters-have-a-valid-value-based-on-an-allowed-pattern.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.check-if-parameters-have-a-valid-value.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.check-obsolete-dependson-configuration-for-resources.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.check-outputs-using-importvalue.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.check-required-properties-for-lambda-if-the-deployment-package-is-a-zip-file.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.check-resources-with-auto-expiring-content-have-explicit-retention-period.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.check-resources-with-updatereplacepolicy-deletionpolicy-have-both.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.check-stateful-resources-have-a-set-updatereplacepolicy-deletionpolicy.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.checks-for-legacy-instance-type-generations.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.findinmap-keys-exist-in-the-map.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.fn-equals-will-always-return-true-or-false.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.mapping-attribute-limit.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.mapping-limit.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.mapping-name-limit.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.metadata-interface-parameters-exist.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.output-description-limit.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.output-limit.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.output-name-limit.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.parameter-limit.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.parameter-memory-size-attributes-should-have-max-and-min.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.parameter-name-limit.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.parameter-value-limit.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.ref-getatt-to-resource-that-is-available-when-conditions-are-applied.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.resource-limit.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.resource-name-limit.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.sub-isn-t-needed-if-it-doesn-t-have-a-variable-defined.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.sub-validation-of-parameters-w1019.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.template-description-limit-i1003.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.template-size-limit-i1002.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.use-sub-instead-of-join.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.validate-that-snapstart-is-configured-for-java11-runtimes.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.validate-that-snapstart-is-properly-configured.rule.yaml +49 -0
- package/rules/cfn/cfn.maintainability.warn-when-properties-are-configured-to-only-work-with-the-package-command.rule.yaml +49 -0
- package/rules/cfn/cfn.security.check-dynamic-references-secure-strings-are-in-supported-locations.rule.yaml +53 -0
- package/rules/cfn/cfn.security.check-for-noecho-references.rule.yaml +53 -0
- package/rules/cfn/cfn.security.check-iam-permission-configuration.rule.yaml +53 -0
- package/rules/cfn/cfn.security.check-if-iam-policies-are-properly-configured.rule.yaml +53 -0
- package/rules/cfn/cfn.security.check-if-password-properties-are-correctly-configured.rule.yaml +53 -0
- package/rules/cfn/cfn.security.controlling-access-to-an-s3-bucket-should-be-done-with-bucket-policies.rule.yaml +53 -0
- package/rules/php/php.correctness.abstract-method-outside-abstract-class.rule.yaml +36 -0
- package/rules/php/php.correctness.break-continue-outside-loop.rule.yaml +36 -0
- package/rules/php/php.correctness.case-insensitive-define.rule.yaml +36 -0
- package/rules/php/php.correctness.default-parameter-not-last.rule.yaml +36 -0
- package/rules/php/php.correctness.deprecated-filter-constant.rule.yaml +36 -0
- package/rules/php/php.correctness.deprecated-libxml-entity-loader.rule.yaml +36 -0
- package/rules/php/php.correctness.deprecated-unset-cast.rule.yaml +36 -0
- package/rules/php/php.correctness.duplicate-declaration.rule.yaml +36 -0
- package/rules/php/php.correctness.empty-array-literal-slot.rule.yaml +36 -0
- package/rules/php/php.correctness.empty-bracket-array-access.rule.yaml +36 -0
- package/rules/php/php.correctness.empty-code-block.rule.yaml +36 -0
- package/rules/php/php.correctness.empty-function-body.rule.yaml +36 -0
- package/rules/php/php.correctness.function-comparison.rule.yaml +36 -0
- package/rules/php/php.correctness.invalid-cookie-options.rule.yaml +36 -0
- package/rules/php/php.correctness.invalid-regex-literal.rule.yaml +36 -0
- package/rules/php/php.correctness.missing-member-visibility.rule.yaml +36 -0
- package/rules/php/php.correctness.nested-function-declaration.rule.yaml +36 -0
- package/rules/php/php.correctness.nested-switch.rule.yaml +36 -0
- package/rules/php/php.correctness.redundant-string-cast-concat.rule.yaml +36 -0
- package/rules/php/php.correctness.self-assignment.rule.yaml +36 -0
- package/rules/php/php.correctness.todo-fixme-marker.rule.yaml +36 -0
- package/rules/php/php.correctness.unknown-magic-method.rule.yaml +36 -0
- package/rules/php/php.correctness.useless-post-increment.rule.yaml +36 -0
- package/rules/php/php.correctness.useless-unset.rule.yaml +36 -0
- package/rules/php/php.performance.expensive-loop-condition.rule.yaml +36 -0
- package/rules/php/php.security.unsafe-new-static.rule.yaml +42 -0
- package/rules/ruby/ruby.bug-risk.assignment-in-condition.rule.yaml +42 -0
- package/rules/ruby/ruby.bug-risk.deprecated-uri-escape.rule.yaml +42 -0
- package/rules/ruby/ruby.bug-risk.division-by-zero.rule.yaml +42 -0
- package/rules/ruby/ruby.bug-risk.duplicate-hash-keys.rule.yaml +42 -0
- package/rules/ruby/ruby.bug-risk.exception-class-overwritten.rule.yaml +42 -0
- package/rules/ruby/ruby.bug-risk.raw-sql-without-squish.rule.yaml +42 -0
- package/rules/ruby/ruby.security.debugger-call.rule.yaml +53 -0
- package/rules/ruby/ruby.security.dynamic-code-execution.rule.yaml +54 -0
- package/rules/ruby/ruby.security.insecure-json-load.rule.yaml +53 -0
- package/rules/ruby/ruby.security.kernel-open.rule.yaml +53 -0
- package/rules/ruby/ruby.security.plaintext-password-in-callback.rule.yaml +46 -0
- package/rules/ruby/ruby.security.rails-link-to-blank-without-noopener.rule.yaml +48 -0
- package/rules/ruby/ruby.security.rails-output-unsafe.rule.yaml +47 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
apiVersion: critiq.dev/v1alpha1
|
|
2
|
+
kind: Rule
|
|
3
|
+
metadata:
|
|
4
|
+
id: cfn.correctness.template-size-limit
|
|
5
|
+
title: Template size limit
|
|
6
|
+
summary: Template size limit
|
|
7
|
+
rationale: cfn-lint reports E1002 when Template size limit.
|
|
8
|
+
aliases:
|
|
9
|
+
- CFLIN-E1002
|
|
10
|
+
tags:
|
|
11
|
+
- cfn
|
|
12
|
+
- cfn-lint
|
|
13
|
+
- cloudformation
|
|
14
|
+
- e1002
|
|
15
|
+
- rules-catalog
|
|
16
|
+
stability: stable
|
|
17
|
+
appliesTo: file
|
|
18
|
+
detection:
|
|
19
|
+
kind: pattern
|
|
20
|
+
scope:
|
|
21
|
+
languages:
|
|
22
|
+
- all
|
|
23
|
+
paths:
|
|
24
|
+
include:
|
|
25
|
+
- "**/*.yaml"
|
|
26
|
+
- "**/*.yml"
|
|
27
|
+
- "**/*.json"
|
|
28
|
+
exclude:
|
|
29
|
+
- "**/node_modules/**"
|
|
30
|
+
match:
|
|
31
|
+
fact:
|
|
32
|
+
kind: cfn.lint.finding
|
|
33
|
+
bind: finding
|
|
34
|
+
where:
|
|
35
|
+
- path: ruleId
|
|
36
|
+
equals: E1002
|
|
37
|
+
emit:
|
|
38
|
+
finding:
|
|
39
|
+
category: correctness.configuration
|
|
40
|
+
severity: high
|
|
41
|
+
confidence: 0.9
|
|
42
|
+
tags:
|
|
43
|
+
- cfn
|
|
44
|
+
- cloudformation
|
|
45
|
+
message:
|
|
46
|
+
title: Template size limit
|
|
47
|
+
summary: "${captures.finding.text} matches cfn-lint E1002."
|
|
48
|
+
remediation:
|
|
49
|
+
summary: Resolve the cfn-lint E1002 finding in this CloudFormation template.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
apiVersion: critiq.dev/v1alpha1
|
|
2
|
+
kind: Rule
|
|
3
|
+
metadata:
|
|
4
|
+
id: cfn.correctness.tojsonstring-validation-of-parameters
|
|
5
|
+
title: Tojsonstring validation of parameters
|
|
6
|
+
summary: Tojsonstring validation of parameters
|
|
7
|
+
rationale: cfn-lint reports E1031 when Tojsonstring validation of parameters.
|
|
8
|
+
aliases:
|
|
9
|
+
- CFLIN-E1031
|
|
10
|
+
tags:
|
|
11
|
+
- cfn
|
|
12
|
+
- cfn-lint
|
|
13
|
+
- cloudformation
|
|
14
|
+
- e1031
|
|
15
|
+
- rules-catalog
|
|
16
|
+
stability: stable
|
|
17
|
+
appliesTo: file
|
|
18
|
+
detection:
|
|
19
|
+
kind: pattern
|
|
20
|
+
scope:
|
|
21
|
+
languages:
|
|
22
|
+
- all
|
|
23
|
+
paths:
|
|
24
|
+
include:
|
|
25
|
+
- "**/*.yaml"
|
|
26
|
+
- "**/*.yml"
|
|
27
|
+
- "**/*.json"
|
|
28
|
+
exclude:
|
|
29
|
+
- "**/node_modules/**"
|
|
30
|
+
match:
|
|
31
|
+
fact:
|
|
32
|
+
kind: cfn.lint.finding
|
|
33
|
+
bind: finding
|
|
34
|
+
where:
|
|
35
|
+
- path: ruleId
|
|
36
|
+
equals: E1031
|
|
37
|
+
emit:
|
|
38
|
+
finding:
|
|
39
|
+
category: correctness.configuration
|
|
40
|
+
severity: high
|
|
41
|
+
confidence: 0.9
|
|
42
|
+
tags:
|
|
43
|
+
- cfn
|
|
44
|
+
- cloudformation
|
|
45
|
+
message:
|
|
46
|
+
title: Tojsonstring validation of parameters
|
|
47
|
+
summary: "${captures.finding.text} matches cfn-lint E1031."
|
|
48
|
+
remediation:
|
|
49
|
+
summary: Resolve the cfn-lint E1031 finding in this CloudFormation template.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
apiVersion: critiq.dev/v1alpha1
|
|
2
|
+
kind: Rule
|
|
3
|
+
metadata:
|
|
4
|
+
id: cfn.correctness.unique-resource-and-parameter-names
|
|
5
|
+
title: Unique resource and parameter names
|
|
6
|
+
summary: Unique resource and parameter names
|
|
7
|
+
rationale: cfn-lint reports E3007 when Unique resource and parameter names.
|
|
8
|
+
aliases:
|
|
9
|
+
- CFLIN-E3007
|
|
10
|
+
tags:
|
|
11
|
+
- cfn
|
|
12
|
+
- cfn-lint
|
|
13
|
+
- cloudformation
|
|
14
|
+
- e3007
|
|
15
|
+
- rules-catalog
|
|
16
|
+
stability: stable
|
|
17
|
+
appliesTo: file
|
|
18
|
+
detection:
|
|
19
|
+
kind: pattern
|
|
20
|
+
scope:
|
|
21
|
+
languages:
|
|
22
|
+
- all
|
|
23
|
+
paths:
|
|
24
|
+
include:
|
|
25
|
+
- "**/*.yaml"
|
|
26
|
+
- "**/*.yml"
|
|
27
|
+
- "**/*.json"
|
|
28
|
+
exclude:
|
|
29
|
+
- "**/node_modules/**"
|
|
30
|
+
match:
|
|
31
|
+
fact:
|
|
32
|
+
kind: cfn.lint.finding
|
|
33
|
+
bind: finding
|
|
34
|
+
where:
|
|
35
|
+
- path: ruleId
|
|
36
|
+
equals: E3007
|
|
37
|
+
emit:
|
|
38
|
+
finding:
|
|
39
|
+
category: correctness.configuration
|
|
40
|
+
severity: high
|
|
41
|
+
confidence: 0.9
|
|
42
|
+
tags:
|
|
43
|
+
- cfn
|
|
44
|
+
- cloudformation
|
|
45
|
+
message:
|
|
46
|
+
title: Unique resource and parameter names
|
|
47
|
+
summary: "${captures.finding.text} matches cfn-lint E3007."
|
|
48
|
+
remediation:
|
|
49
|
+
summary: Resolve the cfn-lint E3007 finding in this CloudFormation template.
|
package/rules/cfn/cfn.correctness.validate-accesscontrol-are-set-with-ownershipcontrols.rule.yaml
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
apiVersion: critiq.dev/v1alpha1
|
|
2
|
+
kind: Rule
|
|
3
|
+
metadata:
|
|
4
|
+
id: cfn.correctness.validate-accesscontrol-are-set-with-ownershipcontrols
|
|
5
|
+
title: Validate accesscontrol are set with ownershipcontrols
|
|
6
|
+
summary: Validate accesscontrol are set with ownershipcontrols
|
|
7
|
+
rationale: cfn-lint reports E3045 when Validate accesscontrol are set with ownershipcontrols.
|
|
8
|
+
aliases:
|
|
9
|
+
- CFLIN-E3045
|
|
10
|
+
tags:
|
|
11
|
+
- cfn
|
|
12
|
+
- cfn-lint
|
|
13
|
+
- cloudformation
|
|
14
|
+
- e3045
|
|
15
|
+
- rules-catalog
|
|
16
|
+
stability: stable
|
|
17
|
+
appliesTo: file
|
|
18
|
+
detection:
|
|
19
|
+
kind: pattern
|
|
20
|
+
scope:
|
|
21
|
+
languages:
|
|
22
|
+
- all
|
|
23
|
+
paths:
|
|
24
|
+
include:
|
|
25
|
+
- "**/*.yaml"
|
|
26
|
+
- "**/*.yml"
|
|
27
|
+
- "**/*.json"
|
|
28
|
+
exclude:
|
|
29
|
+
- "**/node_modules/**"
|
|
30
|
+
match:
|
|
31
|
+
fact:
|
|
32
|
+
kind: cfn.lint.finding
|
|
33
|
+
bind: finding
|
|
34
|
+
where:
|
|
35
|
+
- path: ruleId
|
|
36
|
+
equals: E3045
|
|
37
|
+
emit:
|
|
38
|
+
finding:
|
|
39
|
+
category: correctness.configuration
|
|
40
|
+
severity: high
|
|
41
|
+
confidence: 0.9
|
|
42
|
+
tags:
|
|
43
|
+
- cfn
|
|
44
|
+
- cloudformation
|
|
45
|
+
message:
|
|
46
|
+
title: Validate accesscontrol are set with ownershipcontrols
|
|
47
|
+
summary: "${captures.finding.text} matches cfn-lint E3045."
|
|
48
|
+
remediation:
|
|
49
|
+
summary: Resolve the cfn-lint E3045 finding in this CloudFormation template.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
apiVersion: critiq.dev/v1alpha1
|
|
2
|
+
kind: Rule
|
|
3
|
+
metadata:
|
|
4
|
+
id: cfn.correctness.validate-aws-event-scheduleexpression-format
|
|
5
|
+
title: Validate aws event scheduleexpression format
|
|
6
|
+
summary: Validate aws event scheduleexpression format
|
|
7
|
+
rationale: cfn-lint reports E3027 when Validate aws event scheduleexpression format.
|
|
8
|
+
aliases:
|
|
9
|
+
- CFLIN-E3027
|
|
10
|
+
tags:
|
|
11
|
+
- cfn
|
|
12
|
+
- cfn-lint
|
|
13
|
+
- cloudformation
|
|
14
|
+
- e3027
|
|
15
|
+
- rules-catalog
|
|
16
|
+
stability: stable
|
|
17
|
+
appliesTo: file
|
|
18
|
+
detection:
|
|
19
|
+
kind: pattern
|
|
20
|
+
scope:
|
|
21
|
+
languages:
|
|
22
|
+
- all
|
|
23
|
+
paths:
|
|
24
|
+
include:
|
|
25
|
+
- "**/*.yaml"
|
|
26
|
+
- "**/*.yml"
|
|
27
|
+
- "**/*.json"
|
|
28
|
+
exclude:
|
|
29
|
+
- "**/node_modules/**"
|
|
30
|
+
match:
|
|
31
|
+
fact:
|
|
32
|
+
kind: cfn.lint.finding
|
|
33
|
+
bind: finding
|
|
34
|
+
where:
|
|
35
|
+
- path: ruleId
|
|
36
|
+
equals: E3027
|
|
37
|
+
emit:
|
|
38
|
+
finding:
|
|
39
|
+
category: correctness.configuration
|
|
40
|
+
severity: high
|
|
41
|
+
confidence: 0.9
|
|
42
|
+
tags:
|
|
43
|
+
- cfn
|
|
44
|
+
- cloudformation
|
|
45
|
+
message:
|
|
46
|
+
title: Validate aws event scheduleexpression format
|
|
47
|
+
summary: "${captures.finding.text} matches cfn-lint E3027."
|
|
48
|
+
remediation:
|
|
49
|
+
summary: Resolve the cfn-lint E3027 finding in this CloudFormation template.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
apiVersion: critiq.dev/v1alpha1
|
|
2
|
+
kind: Rule
|
|
3
|
+
metadata:
|
|
4
|
+
id: cfn.correctness.validate-parameters-for-in-a-nested-stack
|
|
5
|
+
title: Validate parameters for in a nested stack
|
|
6
|
+
summary: Validate parameters for in a nested stack
|
|
7
|
+
rationale: cfn-lint reports E3043 when Validate parameters for in a nested stack.
|
|
8
|
+
aliases:
|
|
9
|
+
- CFLIN-E3043
|
|
10
|
+
tags:
|
|
11
|
+
- cfn
|
|
12
|
+
- cfn-lint
|
|
13
|
+
- cloudformation
|
|
14
|
+
- e3043
|
|
15
|
+
- rules-catalog
|
|
16
|
+
stability: stable
|
|
17
|
+
appliesTo: file
|
|
18
|
+
detection:
|
|
19
|
+
kind: pattern
|
|
20
|
+
scope:
|
|
21
|
+
languages:
|
|
22
|
+
- all
|
|
23
|
+
paths:
|
|
24
|
+
include:
|
|
25
|
+
- "**/*.yaml"
|
|
26
|
+
- "**/*.yml"
|
|
27
|
+
- "**/*.json"
|
|
28
|
+
exclude:
|
|
29
|
+
- "**/node_modules/**"
|
|
30
|
+
match:
|
|
31
|
+
fact:
|
|
32
|
+
kind: cfn.lint.finding
|
|
33
|
+
bind: finding
|
|
34
|
+
where:
|
|
35
|
+
- path: ruleId
|
|
36
|
+
equals: E3043
|
|
37
|
+
emit:
|
|
38
|
+
finding:
|
|
39
|
+
category: correctness.configuration
|
|
40
|
+
severity: high
|
|
41
|
+
confidence: 0.9
|
|
42
|
+
tags:
|
|
43
|
+
- cfn
|
|
44
|
+
- cloudformation
|
|
45
|
+
message:
|
|
46
|
+
title: Validate parameters for in a nested stack
|
|
47
|
+
summary: "${captures.finding.text} matches cfn-lint E3043."
|
|
48
|
+
remediation:
|
|
49
|
+
summary: Resolve the cfn-lint E3043 finding in this CloudFormation template.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
apiVersion: critiq.dev/v1alpha1
|
|
2
|
+
kind: Rule
|
|
3
|
+
metadata:
|
|
4
|
+
id: cfn.correctness.validate-route53-recordsets
|
|
5
|
+
title: Validate route53 recordsets
|
|
6
|
+
summary: Validate route53 recordsets
|
|
7
|
+
rationale: cfn-lint reports E3020 when Validate route53 recordsets.
|
|
8
|
+
aliases:
|
|
9
|
+
- CFLIN-E3020
|
|
10
|
+
tags:
|
|
11
|
+
- cfn
|
|
12
|
+
- cfn-lint
|
|
13
|
+
- cloudformation
|
|
14
|
+
- e3020
|
|
15
|
+
- rules-catalog
|
|
16
|
+
stability: stable
|
|
17
|
+
appliesTo: file
|
|
18
|
+
detection:
|
|
19
|
+
kind: pattern
|
|
20
|
+
scope:
|
|
21
|
+
languages:
|
|
22
|
+
- all
|
|
23
|
+
paths:
|
|
24
|
+
include:
|
|
25
|
+
- "**/*.yaml"
|
|
26
|
+
- "**/*.yml"
|
|
27
|
+
- "**/*.json"
|
|
28
|
+
exclude:
|
|
29
|
+
- "**/node_modules/**"
|
|
30
|
+
match:
|
|
31
|
+
fact:
|
|
32
|
+
kind: cfn.lint.finding
|
|
33
|
+
bind: finding
|
|
34
|
+
where:
|
|
35
|
+
- path: ruleId
|
|
36
|
+
equals: E3020
|
|
37
|
+
emit:
|
|
38
|
+
finding:
|
|
39
|
+
category: correctness.configuration
|
|
40
|
+
severity: high
|
|
41
|
+
confidence: 0.9
|
|
42
|
+
tags:
|
|
43
|
+
- cfn
|
|
44
|
+
- cloudformation
|
|
45
|
+
message:
|
|
46
|
+
title: Validate route53 recordsets
|
|
47
|
+
summary: "${captures.finding.text} matches cfn-lint E3020."
|
|
48
|
+
remediation:
|
|
49
|
+
summary: Resolve the cfn-lint E3020 finding in this CloudFormation template.
|
package/rules/cfn/cfn.correctness.validate-the-configuration-of-the-metadata-section.rule.yaml
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
apiVersion: critiq.dev/v1alpha1
|
|
2
|
+
kind: Rule
|
|
3
|
+
metadata:
|
|
4
|
+
id: cfn.correctness.validate-the-configuration-of-the-metadata-section
|
|
5
|
+
title: Validate the configuration of the metadata section
|
|
6
|
+
summary: Validate the configuration of the metadata section
|
|
7
|
+
rationale: cfn-lint reports E4002 when Validate the configuration of the metadata section.
|
|
8
|
+
aliases:
|
|
9
|
+
- CFLIN-E4002
|
|
10
|
+
tags:
|
|
11
|
+
- cfn
|
|
12
|
+
- cfn-lint
|
|
13
|
+
- cloudformation
|
|
14
|
+
- e4002
|
|
15
|
+
- rules-catalog
|
|
16
|
+
stability: stable
|
|
17
|
+
appliesTo: file
|
|
18
|
+
detection:
|
|
19
|
+
kind: pattern
|
|
20
|
+
scope:
|
|
21
|
+
languages:
|
|
22
|
+
- all
|
|
23
|
+
paths:
|
|
24
|
+
include:
|
|
25
|
+
- "**/*.yaml"
|
|
26
|
+
- "**/*.yml"
|
|
27
|
+
- "**/*.json"
|
|
28
|
+
exclude:
|
|
29
|
+
- "**/node_modules/**"
|
|
30
|
+
match:
|
|
31
|
+
fact:
|
|
32
|
+
kind: cfn.lint.finding
|
|
33
|
+
bind: finding
|
|
34
|
+
where:
|
|
35
|
+
- path: ruleId
|
|
36
|
+
equals: E4002
|
|
37
|
+
emit:
|
|
38
|
+
finding:
|
|
39
|
+
category: correctness.configuration
|
|
40
|
+
severity: high
|
|
41
|
+
confidence: 0.9
|
|
42
|
+
tags:
|
|
43
|
+
- cfn
|
|
44
|
+
- cloudformation
|
|
45
|
+
message:
|
|
46
|
+
title: Validate the configuration of the metadata section
|
|
47
|
+
summary: "${captures.finding.text} matches cfn-lint E4002."
|
|
48
|
+
remediation:
|
|
49
|
+
summary: Resolve the cfn-lint E4002 finding in this CloudFormation template.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
apiVersion: critiq.dev/v1alpha1
|
|
2
|
+
kind: Rule
|
|
3
|
+
metadata:
|
|
4
|
+
id: cfn.correctness.validates-foreach-functions
|
|
5
|
+
title: Validates foreach functions
|
|
6
|
+
summary: Validates foreach functions
|
|
7
|
+
rationale: cfn-lint reports E1032 when Validates foreach functions.
|
|
8
|
+
aliases:
|
|
9
|
+
- CFLIN-E1032
|
|
10
|
+
tags:
|
|
11
|
+
- cfn
|
|
12
|
+
- cfn-lint
|
|
13
|
+
- cloudformation
|
|
14
|
+
- e1032
|
|
15
|
+
- rules-catalog
|
|
16
|
+
stability: stable
|
|
17
|
+
appliesTo: file
|
|
18
|
+
detection:
|
|
19
|
+
kind: pattern
|
|
20
|
+
scope:
|
|
21
|
+
languages:
|
|
22
|
+
- all
|
|
23
|
+
paths:
|
|
24
|
+
include:
|
|
25
|
+
- "**/*.yaml"
|
|
26
|
+
- "**/*.yml"
|
|
27
|
+
- "**/*.json"
|
|
28
|
+
exclude:
|
|
29
|
+
- "**/node_modules/**"
|
|
30
|
+
match:
|
|
31
|
+
fact:
|
|
32
|
+
kind: cfn.lint.finding
|
|
33
|
+
bind: finding
|
|
34
|
+
where:
|
|
35
|
+
- path: ruleId
|
|
36
|
+
equals: E1032
|
|
37
|
+
emit:
|
|
38
|
+
finding:
|
|
39
|
+
category: correctness.configuration
|
|
40
|
+
severity: high
|
|
41
|
+
confidence: 0.9
|
|
42
|
+
tags:
|
|
43
|
+
- cfn
|
|
44
|
+
- cloudformation
|
|
45
|
+
message:
|
|
46
|
+
title: Validates foreach functions
|
|
47
|
+
summary: "${captures.finding.text} matches cfn-lint E1032."
|
|
48
|
+
remediation:
|
|
49
|
+
summary: Resolve the cfn-lint E1032 finding in this CloudFormation template.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
apiVersion: critiq.dev/v1alpha1
|
|
2
|
+
kind: Rule
|
|
3
|
+
metadata:
|
|
4
|
+
id: cfn.correctness.validation-not-function-configuration
|
|
5
|
+
title: Validation not function configuration
|
|
6
|
+
summary: Validation not function configuration
|
|
7
|
+
rationale: cfn-lint reports E1023 when Validation not function configuration.
|
|
8
|
+
aliases:
|
|
9
|
+
- CFLIN-E1023
|
|
10
|
+
tags:
|
|
11
|
+
- cfn
|
|
12
|
+
- cfn-lint
|
|
13
|
+
- cloudformation
|
|
14
|
+
- e1023
|
|
15
|
+
- rules-catalog
|
|
16
|
+
stability: stable
|
|
17
|
+
appliesTo: file
|
|
18
|
+
detection:
|
|
19
|
+
kind: pattern
|
|
20
|
+
scope:
|
|
21
|
+
languages:
|
|
22
|
+
- all
|
|
23
|
+
paths:
|
|
24
|
+
include:
|
|
25
|
+
- "**/*.yaml"
|
|
26
|
+
- "**/*.yml"
|
|
27
|
+
- "**/*.json"
|
|
28
|
+
exclude:
|
|
29
|
+
- "**/node_modules/**"
|
|
30
|
+
match:
|
|
31
|
+
fact:
|
|
32
|
+
kind: cfn.lint.finding
|
|
33
|
+
bind: finding
|
|
34
|
+
where:
|
|
35
|
+
- path: ruleId
|
|
36
|
+
equals: E1023
|
|
37
|
+
emit:
|
|
38
|
+
finding:
|
|
39
|
+
category: correctness.configuration
|
|
40
|
+
severity: high
|
|
41
|
+
confidence: 0.9
|
|
42
|
+
tags:
|
|
43
|
+
- cfn
|
|
44
|
+
- cloudformation
|
|
45
|
+
message:
|
|
46
|
+
title: Validation not function configuration
|
|
47
|
+
summary: "${captures.finding.text} matches cfn-lint E1023."
|
|
48
|
+
remediation:
|
|
49
|
+
summary: Resolve the cfn-lint E1023 finding in this CloudFormation template.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
apiVersion: critiq.dev/v1alpha1
|
|
2
|
+
kind: Rule
|
|
3
|
+
metadata:
|
|
4
|
+
id: cfn.correctness.validationdomain-is-superdomain-of-domainname
|
|
5
|
+
title: Validationdomain is superdomain of domainname
|
|
6
|
+
summary: Validationdomain is superdomain of domainname
|
|
7
|
+
rationale: cfn-lint reports E3503 when Validationdomain is superdomain of domainname.
|
|
8
|
+
aliases:
|
|
9
|
+
- CFLIN-E3503
|
|
10
|
+
tags:
|
|
11
|
+
- cfn
|
|
12
|
+
- cfn-lint
|
|
13
|
+
- cloudformation
|
|
14
|
+
- e3503
|
|
15
|
+
- rules-catalog
|
|
16
|
+
stability: stable
|
|
17
|
+
appliesTo: file
|
|
18
|
+
detection:
|
|
19
|
+
kind: pattern
|
|
20
|
+
scope:
|
|
21
|
+
languages:
|
|
22
|
+
- all
|
|
23
|
+
paths:
|
|
24
|
+
include:
|
|
25
|
+
- "**/*.yaml"
|
|
26
|
+
- "**/*.yml"
|
|
27
|
+
- "**/*.json"
|
|
28
|
+
exclude:
|
|
29
|
+
- "**/node_modules/**"
|
|
30
|
+
match:
|
|
31
|
+
fact:
|
|
32
|
+
kind: cfn.lint.finding
|
|
33
|
+
bind: finding
|
|
34
|
+
where:
|
|
35
|
+
- path: ruleId
|
|
36
|
+
equals: E3503
|
|
37
|
+
emit:
|
|
38
|
+
finding:
|
|
39
|
+
category: correctness.configuration
|
|
40
|
+
severity: high
|
|
41
|
+
confidence: 0.9
|
|
42
|
+
tags:
|
|
43
|
+
- cfn
|
|
44
|
+
- cloudformation
|
|
45
|
+
message:
|
|
46
|
+
title: Validationdomain is superdomain of domainname
|
|
47
|
+
summary: "${captures.finding.text} matches cfn-lint E3503."
|
|
48
|
+
remediation:
|
|
49
|
+
summary: Resolve the cfn-lint E3503 finding in this CloudFormation template.
|
package/rules/cfn/cfn.maintainability.arns-should-use-correctly-placed-pseudo-parameters.rule.yaml
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
apiVersion: critiq.dev/v1alpha1
|
|
2
|
+
kind: Rule
|
|
3
|
+
metadata:
|
|
4
|
+
id: cfn.maintainability.arns-should-use-correctly-placed-pseudo-parameters
|
|
5
|
+
title: Arns should use correctly placed pseudo parameters
|
|
6
|
+
summary: Arns should use correctly placed pseudo parameters
|
|
7
|
+
rationale: cfn-lint reports I3042 when Arns should use correctly placed pseudo parameters.
|
|
8
|
+
aliases:
|
|
9
|
+
- CFLIN-I3042
|
|
10
|
+
tags:
|
|
11
|
+
- cfn
|
|
12
|
+
- cfn-lint
|
|
13
|
+
- cloudformation
|
|
14
|
+
- i3042
|
|
15
|
+
- rules-catalog
|
|
16
|
+
stability: stable
|
|
17
|
+
appliesTo: file
|
|
18
|
+
detection:
|
|
19
|
+
kind: pattern
|
|
20
|
+
scope:
|
|
21
|
+
languages:
|
|
22
|
+
- all
|
|
23
|
+
paths:
|
|
24
|
+
include:
|
|
25
|
+
- "**/*.yaml"
|
|
26
|
+
- "**/*.yml"
|
|
27
|
+
- "**/*.json"
|
|
28
|
+
exclude:
|
|
29
|
+
- "**/node_modules/**"
|
|
30
|
+
match:
|
|
31
|
+
fact:
|
|
32
|
+
kind: cfn.lint.finding
|
|
33
|
+
bind: finding
|
|
34
|
+
where:
|
|
35
|
+
- path: ruleId
|
|
36
|
+
equals: I3042
|
|
37
|
+
emit:
|
|
38
|
+
finding:
|
|
39
|
+
category: maintainability.configuration
|
|
40
|
+
severity: low
|
|
41
|
+
confidence: 0.8
|
|
42
|
+
tags:
|
|
43
|
+
- cfn
|
|
44
|
+
- cloudformation
|
|
45
|
+
message:
|
|
46
|
+
title: Arns should use correctly placed pseudo parameters
|
|
47
|
+
summary: "${captures.finding.text} matches cfn-lint I3042."
|
|
48
|
+
remediation:
|
|
49
|
+
summary: Resolve the cfn-lint I3042 finding in this CloudFormation template.
|
package/rules/cfn/cfn.maintainability.availability-zone-parameters-should-not-be-hardcoded.rule.yaml
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
apiVersion: critiq.dev/v1alpha1
|
|
2
|
+
kind: Rule
|
|
3
|
+
metadata:
|
|
4
|
+
id: cfn.maintainability.availability-zone-parameters-should-not-be-hardcoded
|
|
5
|
+
title: Availability zone parameters should not be hardcoded
|
|
6
|
+
summary: Availability zone parameters should not be hardcoded
|
|
7
|
+
rationale: cfn-lint reports W3010 when Availability zone parameters should not be hardcoded.
|
|
8
|
+
aliases:
|
|
9
|
+
- CFLIN-W3010
|
|
10
|
+
tags:
|
|
11
|
+
- cfn
|
|
12
|
+
- cfn-lint
|
|
13
|
+
- cloudformation
|
|
14
|
+
- w3010
|
|
15
|
+
- rules-catalog
|
|
16
|
+
stability: stable
|
|
17
|
+
appliesTo: file
|
|
18
|
+
detection:
|
|
19
|
+
kind: pattern
|
|
20
|
+
scope:
|
|
21
|
+
languages:
|
|
22
|
+
- all
|
|
23
|
+
paths:
|
|
24
|
+
include:
|
|
25
|
+
- "**/*.yaml"
|
|
26
|
+
- "**/*.yml"
|
|
27
|
+
- "**/*.json"
|
|
28
|
+
exclude:
|
|
29
|
+
- "**/node_modules/**"
|
|
30
|
+
match:
|
|
31
|
+
fact:
|
|
32
|
+
kind: cfn.lint.finding
|
|
33
|
+
bind: finding
|
|
34
|
+
where:
|
|
35
|
+
- path: ruleId
|
|
36
|
+
equals: W3010
|
|
37
|
+
emit:
|
|
38
|
+
finding:
|
|
39
|
+
category: maintainability.configuration
|
|
40
|
+
severity: medium
|
|
41
|
+
confidence: 0.85
|
|
42
|
+
tags:
|
|
43
|
+
- cfn
|
|
44
|
+
- cloudformation
|
|
45
|
+
message:
|
|
46
|
+
title: Availability zone parameters should not be hardcoded
|
|
47
|
+
summary: "${captures.finding.text} matches cfn-lint W3010."
|
|
48
|
+
remediation:
|
|
49
|
+
summary: Resolve the cfn-lint W3010 finding in this CloudFormation template.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
apiVersion: critiq.dev/v1alpha1
|
|
2
|
+
kind: Rule
|
|
3
|
+
metadata:
|
|
4
|
+
id: cfn.maintainability.check-iam-resource-policies-syntax
|
|
5
|
+
title: Check iam resource policies syntax
|
|
6
|
+
summary: Check iam resource policies syntax
|
|
7
|
+
rationale: cfn-lint reports W2511 when Check iam resource policies syntax.
|
|
8
|
+
aliases:
|
|
9
|
+
- CFLIN-W2511
|
|
10
|
+
tags:
|
|
11
|
+
- cfn
|
|
12
|
+
- cfn-lint
|
|
13
|
+
- cloudformation
|
|
14
|
+
- w2511
|
|
15
|
+
- rules-catalog
|
|
16
|
+
stability: stable
|
|
17
|
+
appliesTo: file
|
|
18
|
+
detection:
|
|
19
|
+
kind: pattern
|
|
20
|
+
scope:
|
|
21
|
+
languages:
|
|
22
|
+
- all
|
|
23
|
+
paths:
|
|
24
|
+
include:
|
|
25
|
+
- "**/*.yaml"
|
|
26
|
+
- "**/*.yml"
|
|
27
|
+
- "**/*.json"
|
|
28
|
+
exclude:
|
|
29
|
+
- "**/node_modules/**"
|
|
30
|
+
match:
|
|
31
|
+
fact:
|
|
32
|
+
kind: cfn.lint.finding
|
|
33
|
+
bind: finding
|
|
34
|
+
where:
|
|
35
|
+
- path: ruleId
|
|
36
|
+
equals: W2511
|
|
37
|
+
emit:
|
|
38
|
+
finding:
|
|
39
|
+
category: maintainability.configuration
|
|
40
|
+
severity: medium
|
|
41
|
+
confidence: 0.85
|
|
42
|
+
tags:
|
|
43
|
+
- cfn
|
|
44
|
+
- cloudformation
|
|
45
|
+
message:
|
|
46
|
+
title: Check iam resource policies syntax
|
|
47
|
+
summary: "${captures.finding.text} matches cfn-lint W2511."
|
|
48
|
+
remediation:
|
|
49
|
+
summary: Resolve the cfn-lint W2511 finding in this CloudFormation template.
|