Ensure `arn` prefix is in use for resource in AWS IAM Policy

LOW

Description

Resource and NotResource params don't have 'arn' prefix. This may cause errors during AWS API calls.

Remediation

In AWS Console -

  1. Sign in to the AWS console and go to the IAM console.
  2. In the Navigation pane, select Policies.
  3. In the list of policies, select the policy to edit.
  4. Select the Permissions tab, and then choose Edit policy.
  5. On the review page, review the changes and click Save.

In Terraform -

  1. In the aws_iam_policy, aws_iam_role_policy, aws_iam_group_policy, and aws_iam_user_policy resources, edit the policy field so that the allowed Action list and/or Principal have appropriate values rather than a wildcard.
  2. Update the Resource (or NotResource) ARN list to use specific IDs with valid regions rather than a wildcard. Ensure that they have the arn prefix and that the entire ARN is in lowercase.
    For more information on how to effectively write an IAM policy see the AWS and Terraform documentation.

References:
https://docs.aws.amazon.com/IAM/latest/UserGuide/service_code_examples_iam.html
https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_policy

Policy Details

Rule Reference ID: AC_AWS_0050
CSP: AWS
Remediation Available: Yes
Resource: aws_iam_policy
Resource Type: Policy

Frameworks