Skip to content
This repository was archived by the owner on Oct 23, 2025. It is now read-only.

[AWS::Redshift::Cluster] Drift Detection false positive for KmsKeyId property under AWS::Redshift::Cluster resource #132

@FarrOut

Description

@FarrOut

There is an issue with this resource type whereby false-positive drift is reported for the KmsKeyId property. A similar issue has been opened in the Cloudformation roadmap, but opening another here as this team is responsible for this resource type handler.

Will be happy to provide any further info as required.


Name of the resource
AWS::Redshift::Cluster

Issue Description
The KmsKeyId property for the AWS::Redshift::Cluster resource is marked as drifted when just the Id (not full ARN) is specified in the template and the stack is created.

Ideally, drift detection should not have been performed on the KmsKeyId property as per - https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html#drift-considerations

CloudFormation does not perform drift detection on the KMSKeyId property of any resources. Because AWS KMS keys can be referenced by multiple aliases, CloudFormation can't guarantee consistently accurate drift results for this property.

Expected Behavior

The KmsKeyId property should be IN_SYNC or NOT_CHECKED status.
Observed Behavior

The KmsKeyId property is marked as NOT_EQUAL with

expected = xxxx-xxxx-xxxx-xxxx
actual = arn:aws:kms:us-east-1:000000000:key/xxxx-xxxx-xxxx-xxxx

Test Cases

Steps to reproduce:

  • Create Stack using following template -
Resources:
    myCluster:
      Type: 'AWS::Redshift::Cluster'
      Properties:
        DBName: mydb
        Encrypted: true
        MasterUsername: master
        MasterUserPassword: xxxxxxxxxx
        NodeType: ds2.xlarge
        ClusterType: single-node
        KmsKeyId: xxxx-xxxx-xxxx-xxxx
  • Run drift detection
  • View drift results

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions