IAM Access Analyzer should be enabled for all regions

Description

Enable IAM Access analyzer for IAM policies about all resources in each region. IAM Access Analyzer is a technology introduced at AWS re:Invent 2019. After the Analyzer is enabled in IAM, scan results are displayed on the console showing the accessible resources. Scans show resources that other accounts and federated users can access, such as KMS keys and IAM roles. So the results allow you to determine if an unintended user is allowed, making it easier for administrators to monitor least privilege access. Access Analyzer analyzes only policies that are applied to resources in the same AWS Region.

Rationale

AWS IAM Access Analyzer helps you identify the resources in your organization and accounts, such as Amazon S3 buckets or IAM roles, that are shared with an external entity. This lets you identify unintended access to your resources and data. Access Analyzer identifies resources that are shared with external principals by using logic- based reasoning to analyze the resource-based policies in your AWS environment. IAM Access Analyzer continuously monitors all policies for S3 bucket, IAM roles, KMS(Key Management Service) keys, AWS Lambda functions, and Amazon SQS(Simple Queue Service) queues.

Remediation

From the console

Perform the following to enable IAM Access analyzer for IAM policies:

  1. Open the IAM console at https://console.aws.amazon.com/iam/.
  2. Select Access analyzer.
  3. Select Create analyzer.
  4. On the Create analyzer page, confirm that the Region displayed is the Region where you want to enable Access Analyzer.
  5. Optionally, enter a name for the analyzer. If you don’t enter a name, it generates one for you automatically.
  6. Optionally, add any tags that you want to apply to the analyzer.
  7. Select Create Analyzer.
  8. Repeat these steps for each active region

From the command line

Run the following command for each active region:

aws accessanalyzer create-analyzer --analyzer-name <NAME> --type <ACCOUNT|ORGANIZATION>

Note: The IAM Access Analyzer is successfully configured only when the account you use has the necessary permissions.

References

  1. https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html
  2. https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-getting-started.html
  3. https://docs.aws.amazon.com/cli/latest/reference/accessanalyzer/get-analyzer.html
  4. https://docs.aws.amazon.com/cli/latest/reference/accessanalyzer/create-analyzer.html
PREVIEWING: may/unit-testing