Control: 1.4 Ensure no 'root' user account access key exists
Description
The 'root' user account is the most privileged user in an AWS account. AWS Access Keys provide programmatic access to a given AWS account. It is recommended that all access keys associated with the 'root' user account be deleted.
Deleting access keys associated with the 'root' user account limits vectors by which the account can be compromised. Additionally, deleting the 'root' access keys encourages the creation and use of role based accounts that are least privileged.
Remediation
Perform the following to delete active 'root' user access keys.
From Console:
- Sign in to the AWS Management Console as 'root' and open the IAM console at https://console.aws.amazon.com/iam/.
- Click on
<root_account>
at the top right and selectMy Security Credentials
from the drop down list. - On the pop out screen click on
Continue to Security Credentials
. - Click on
Access Keys
(Access Key ID and Secret Access Key). - If there are active keys, under Status, click Delete (Note: Deleted keys cannot be recovered).
Note: While a key can be made inactive, this inactive key will still show up in the CLI command from the audit procedure, and may lead to the root user being falsely flagged as being non-compliant.
Usage
Run the control in your terminal:
powerpipe control run aws_compliance.control.cis_v400_1_4
Snapshot and share results via Turbot Pipes:
powerpipe loginpowerpipe control run aws_compliance.control.cis_v400_1_4 --share
SQL
This control uses a named query:
iam_root_user_no_access_keys