6.2 Ensure Data at Rest and in Transit is Encrypted (Manual)
Description
Ensure that encryption at rest and encryption in transit are both enabled for Amazon MemoryDB for Redis clusters to protect data confidentiality.
Rationale
Encrypting data at rest and in transit protects sensitive information from unauthorized access. Encryption at rest ensures stored data cannot be read even if underlying storage is compromised. Encryption in transit (TLS) protects data as it moves between clients and the MemoryDB cluster.
Impact
Enabling encryption may have a minor performance impact due to cryptographic operations. Applications must support TLS connections when encryption in transit is enabled.
Choose the MemoryDB cluster for which you want to enable encryption at rest and in transit.
Click on the cluster name to access its details page.
Enable Encryption at Rest
In the cluster details page, navigate to the Encryption at Rest section.
Click on Modify to edit the encryption settings.
Select the desired encryption option:
AWS Managed Key (Default): Choose this option to use the default AWS managed key for encryption at rest. Amazon MemoryDB automatically encrypts your data using this key.
Customer Managed Key (CMK): Choose this option if you want to use your own AWS Key Management Service (KMS) customer-managed key for encryption. Select the appropriate CMK from the dropdown menu.
Click "Apply Changes" to enable encryption at rest for the MemoryDB cluster.
Enable Encryption in Transit
In the cluster details page, navigate to the Encryption in Transit section.
Click on Modify to edit the encryption settings.
Select the desired encryption option:
Encryption in Transit Enabled: Choose this option to enable encryption in transit for data transmitted between your client applications and MemoryDB. MemoryDB uses SSL/TLS encryption to secure the communication channel.
Encryption in Transit Disabled: Choose this option if you do not require encryption in transit.
Click Apply Changes to enable encryption in transit for the MemoryDB cluster.
Verify Encryption Status
Wait a few minutes for the changes to propagate and the encryption settings to take effect.
Refresh the cluster details page to see the updated encryption status.
Verify that encryption at rest and in transit are enabled for the MemoryDB cluster.
Expected Result
Both encryption at rest and encryption in transit are enabled for all MemoryDB clusters.
Remediation
Using AWS Console
Follow the audit procedure steps to enable encryption at rest and in transit for each MemoryDB cluster.
Default Value
Amazon MemoryDB for Redis encrypts data at rest by default using AWS managed keys. Encryption in transit (TLS) is enabled by default.
1---2name: cis-aws-database-6-23description: Ensure Data at Rest and in Transit is Encrypted4---56# 6.2 Ensure Data at Rest and in Transit is Encrypted (Manual)78## Description910Ensure that encryption at rest and encryption in transit are both enabled for Amazon MemoryDB for Redis clusters to protect data confidentiality.1112## Rationale1314Encrypting data at rest and in transit protects sensitive information from unauthorized access. Encryption at rest ensures stored data cannot be read even if underlying storage is compromised. Encryption in transit (TLS) protects data as it moves between clients and the MemoryDB cluster.1516## Impact1718Enabling encryption may have a minor performance impact due to cryptographic operations. Applications must support TLS connections when encryption in transit is enabled.1920## Audit Procedure2122### Using AWS Console23241. Sign in to the AWS Management Console25 - Sign in to the AWS Management Console at https://console.aws.amazon.com/ with your AWS account credentials.26272. Open the Amazon MemoryDB Console28 - Navigate to the service using the `Find Services` search bar or by directly accessing the console at https://console.aws.amazon.com/memorydb/.29303. Select the Cluster31 - Choose the MemoryDB cluster for which you want to enable encryption at rest and in transit.32 - Click on the cluster name to access its details page.33344. Enable Encryption at Rest35 - In the cluster details page, navigate to the `Encryption at Rest` section.36 - Click on `Modify` to edit the encryption settings.37 - Select the desired encryption option:38 - AWS Managed Key (Default): Choose this option to use the default AWS managed key for encryption at rest. Amazon MemoryDB automatically encrypts your data using this key.39 - Customer Managed Key (CMK): Choose this option if you want to use your own AWS Key Management Service (KMS) customer-managed key for encryption. Select the appropriate CMK from the dropdown menu.40 - Click "Apply Changes" to enable encryption at rest for the MemoryDB cluster.41425. Enable Encryption in Transit43 - In the cluster details page, navigate to the `Encryption in Transit` section.44 - Click on `Modify` to edit the encryption settings.45 - Select the desired encryption option:46 - Encryption in Transit Enabled: Choose this option to enable encryption in transit for data transmitted between your client applications and MemoryDB. MemoryDB uses SSL/TLS encryption to secure the communication channel.47 - Encryption in Transit Disabled: Choose this option if you do not require encryption in transit.48 - Click `Apply Changes` to enable encryption in transit for the MemoryDB cluster.49506. Verify Encryption Status51 - Wait a few minutes for the changes to propagate and the encryption settings to take effect.52 - Refresh the cluster details page to see the updated encryption status.53 - Verify that encryption at rest and in transit are enabled for the MemoryDB cluster.5455## Expected Result5657Both encryption at rest and encryption in transit are enabled for all MemoryDB clusters.5859## Remediation6061### Using AWS Console6263Follow the audit procedure steps to enable encryption at rest and in transit for each MemoryDB cluster.6465## Default Value6667Amazon MemoryDB for Redis encrypts data at rest by default using AWS managed keys. Encryption in transit (TLS) is enabled by default.6869## References70711. https://aws.amazon.com/products/databases/7273## CIS Controls7475| Controls Version | Control | IG 1 | IG 2 | IG 3 |76| ---------------- | ------------------------------------------------- | ---- | ---- | ---- |77| v8 | 3.10 Encrypt Sensitive Data in Transit | | X | X |78| v8 | 3.11 Encrypt Sensitive Data at Rest | | X | X |79| v7 | 14.4 Encrypt All Sensitive Information in Transit | | X | X |80| v7 | 14.8 Encrypt Sensitive Information at Rest | | | X |8182## Profile8384Level 1 | Manual
Run npx skillmds@latest add cyberstrikeus/cis-aws-database-6-2 in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
Ensure Data at Rest and in Transit is Encrypted It is listed under DevOps & Infra on SkillMD.
SkillMD's automated safety review verdict for this skill is PASS. Independent scanners report: SkillSpector: PASS, Skill Scanner: PASS. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
cyberstrikeus (@cyberstrikeus) published this skill. Their other Agent Skills are listed on their SkillMD profile.