This rule ensures that S3 buckets have default encryption enabled with Key Management Service (KMS).
Rule | S3 bucket default encryption should be enabled with KMS |
Framework | CISA-cyber-essentials |
Severity | ✔ Medium |
Rule Description
S3 bucket default encryption with KMS should be enabled for CISA Cyber Essentials compliance. This rule ensures that all objects stored in the S3 bucket are automatically encrypted using AWS Key Management Service (KMS) for enhanced security and compliance.
Enabling default encryption with KMS provides an added layer of protection for sensitive data stored in S3 buckets and helps organizations adhere to data protection regulations such as CISA Cyber Essentials.
Troubleshooting Steps
If the default encryption with KMS is not enabled for your S3 bucket, you can follow these troubleshooting steps:
Check S3 Bucket Encryption Settings:
Check KMS Key Policy:
Check IAM Policies and Roles:
Necessary Codes
If default encryption with KMS is not enabled for an S3 bucket, you can use the following AWS CLI command to enable it:
aws s3api put-bucket-encryption --bucket <bucket-name> --server-side-encryption-configuration '{"Rules": [{"ApplyServerSideEncryptionByDefault": {"SSEAlgorithm": "aws:kms","KMSMasterKeyID": "<KMS-key-ID>"}}]}'
Make sure to replace
<bucket-name>
with the name of your S3 bucket and <KMS-key-ID>
with the ARN of the desired KMS key.Remediation Steps
To enable default encryption with KMS for an S3 bucket, follow these step-by-step instructions:
Open the AWS Management Console and go to the Amazon S3 service.
Select the desired S3 bucket for which you want to enable default encryption.
Click on the "Properties" tab.
In the "Default encryption" section, click on the "Edit" button.
Choose "AWS Key Management Service (AWS KMS)" as the encryption type.
Select the appropriate KMS key from the dropdown menu or enter the ARN of the desired KMS key manually.
Click on the "Save" button to enable default encryption with KMS for the S3 bucket.
Once the default encryption with KMS is enabled, all objects stored in the S3 bucket will be automatically encrypted using the specified KMS key, enhancing the security and compliance of your data.