Skip to main content

Triage and Remediation

Remediation

Using Console

For AWS RDS, the Backtrack feature applies only to Amazon Aurora MySQL-Compatible Edition. It must be configured at cluster creation (or when restoring from snapshot); you cannot just “turn it on” for an existing cluster.Below are the step‑by‑step options using the AWS Management Console.

1. When creating a new Aurora MySQL cluster (preferred if you can recreate)

  1. Sign in to the AWS Management Console and open RDS:
    • Services → RDS
  2. In the left navigation pane, choose Databases.
  3. Choose Create database.
  4. Under Engine options:
    • Engine type: Amazon Aurora
    • Edition: Amazon Aurora MySQL-Compatible Edition
  5. Scroll down to Settings and DB cluster identifier, fill as required.
  6. In the Additional configuration (or Backup / Additional settings, UI wording can vary):
    • Find the Backtrack section.
    • Check/enable Backtrack.
    • Set Backtrack window (in hours or seconds depending on UI; e.g., 24 hours).
  7. Configure the rest of the options as desired (instance class, VPC, security groups, etc.).
  8. At the bottom, choose Create database.
Your new Aurora MySQL cluster will now have Backtrack enabled.

2. Enabling Backtrack for an existing cluster (requires creating a new one)

If you already have an Aurora MySQL cluster without Backtrack, you must create a new cluster from a snapshot with Backtrack enabled.

2.1 Take a snapshot (if you don’t already have one)

  1. In the RDS console, go to Databases.
  2. Select your Aurora MySQL DB cluster.
  3. Choose ActionsTake snapshot.
  4. Provide a Snapshot name and choose Take snapshot.
  5. Wait for the snapshot status to become Available.

2.2 Restore from snapshot with Backtrack enabled

  1. In the RDS console, go to Snapshots (left navigation).
  2. Select the snapshot you want to use (DB cluster snapshot for Aurora).
  3. Choose ActionsRestore snapshot (or Restore DB cluster).
  4. In the restore wizard:
    • Engine should show Amazon Aurora MySQL-Compatible Edition.
    • Provide a new DB cluster identifier.
  5. Under Additional configuration / Backup / Backtrack:
    • Enable Backtrack.
    • Set the Backtrack window (e.g., 24 hours).
  6. Configure networking, security groups, parameter groups, and instance sizes as you need.
  7. Choose Restore DB cluster (or Create database).
  8. Wait for the new cluster and its instances to become Available.
  9. Update your applications to point to the new cluster endpoint ( writer endpoint and any reader endpoints if used).
  10. After you confirm everything works and traffic is fully cut over, you can:
    • Optionally delete the old cluster to avoid extra cost.

3. Verify Backtrack is enabled

  1. In RDSDatabases, select your Aurora MySQL cluster.
  2. On the Configuration tab:
    • Check for Backtrack settings (enabled and window value).
You’ve now remediated the “Backtrack Feature Should Be Enabled” requirement for the Aurora MySQL cluster via the AWS console.
Below are the concrete AWS CLI steps to enable the Backtrack feature on an Amazon Aurora MySQL DB cluster (the only engine that supports it).
Prerequisites
  • DB engine must be Aurora MySQL (not Aurora PostgreSQL or standard RDS engines).
  • Engine version must support Backtrack (Aurora MySQL 1.x/2.x+ for MySQL 5.6/5.7 compatible).
  • The cluster must use aurora or aurora-mysql engine type.

1. Identify the DB cluster and verify engine

Confirm:
  • Engine is aurora-mysql (or a compatible Aurora MySQL engine string).
  • BacktrackWindow is 0 or unset (meaning not enabled).

2. Choose a Backtrack window

Decide how far back you want to be able to backtrack, in seconds.
Example: 24 hours:

3. Enable Backtrack on the cluster

Run modify-db-cluster with --backtrack-window set to your chosen value:
Notes:
  • --apply-immediately applies the change right away.
  • To defer to next maintenance window, omit --apply-immediately.

4. Confirm that Backtrack is enabled

  • BacktrackWindow should now show your value (e.g., 86400).
  • EarliestBacktrackTime appears after some transaction history accumulates.

5. (Optional) Create a new cluster with Backtrack enabled from the start

If you’re creating a new Aurora MySQL cluster and want Backtrack on from the beginning:

If your cluster is not Aurora MySQL or the version doesn’t support Backtrack, there is no CLI remediation for “Backtrack feature should be enabled” other than migrating to a supported Aurora MySQL engine/version.
For AWS RDS, Backtrack is only supported on Amazon Aurora MySQL-compatible DB clusters, not on standard RDS engines. You enable it by setting BacktrackWindow on the DB cluster, not the instance.Below are the steps and sample Python (boto3) code.

1. Prerequisites & checks

  1. Install boto3 (if not already):
  2. Ensure:
    • The DB is Aurora MySQL (e.g., aurora-mysql).
    • Engine version supports backtrack (e.g., Aurora MySQL 1.11 or later, or 2.04 or later; check AWS docs for current versions).
    • You have IAM permissions:
      • rds:DescribeDBClusters
      • rds:ModifyDBCluster
  3. Identify the DB cluster identifier (not DB instance identifier).
    You can find this in the console (RDS → Databases → your Aurora cluster → “DB cluster identifier”).

2. Python example – enable backtrack on a cluster

This script:
  • Verifies the cluster exists
  • Confirms it’s Aurora MySQL
  • Enables backtrack with a specific window (e.g., 8 hours)

3. Adjusting / disabling later (if needed)

  • To change the window, call modify_db_cluster again with a new BacktrackWindow value.
  • To disable backtrack, set:

If you share your cluster identifier and region (redacted as needed), I can adapt the exact Python snippet for your setup.
Substitute:
  • AURORA_MYSQL_CLUSTER_IDENTIFIER with your cluster identifier.
  • AURORA_MYSQL_ENGINE_VERSION with a Backtrack-supported Aurora MySQL engine version.
  • MASTER_USERNAME / MASTER_PASSWORD with your credentials or references to secrets.
This change updates the existing cluster in place (no forced replacement), though AWS may perform a brief modification operation on the cluster.For verification, terraform plan should show the existing aws_rds_cluster with:
  • ~ backtrack_window: "0" => "86400" (or your chosen non-zero value).