More Info:

Inactive access keys should be dropped.

Risk Level

Medium

Address

Security

Compliance Standards

HIPAA, GDPR, NIST, SOC2, CISAWS, CBP

Triage and Remediation

How to Prevent

To prevent inactive user account access keys in IAM using the AWS Management Console, follow these steps:

  1. Enable Access Key Rotation Policy:

    • Navigate to the IAM Dashboard in the AWS Management Console.
    • Go to “Policies” and create a new policy or modify an existing one.
    • Define a policy that enforces access key rotation, ensuring that keys older than a specified period (e.g., 90 days) are rotated or deactivated.
  2. Set Up CloudWatch Alarms:

    • Go to the CloudWatch Dashboard.
    • Create a new alarm that monitors IAM access key usage.
    • Set the alarm to trigger if an access key has not been used within a specified period (e.g., 30 days).
    • Configure notifications to alert administrators when the alarm is triggered.
  3. Enable IAM Credential Reports:

    • In the IAM Dashboard, go to “Credential Report.”
    • Generate a credential report to review the status of all IAM users’ access keys.
    • Schedule regular reviews of this report to identify and take action on inactive access keys.
  4. Implement IAM Access Analyzer:

    • Navigate to the IAM Dashboard and select “Access Analyzer.”
    • Enable Access Analyzer to continuously monitor and analyze permissions granted using access keys.
    • Review findings and take action to remove or deactivate any unnecessary or inactive access keys.

By following these steps, you can proactively manage and prevent inactive user account access keys in AWS IAM.

Additional Reading: