Amazon managed policies for Amazon Identity and Access Management and Access Analyzer - Amazon Identity and Access Management
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

Amazon managed policies for Amazon Identity and Access Management and Access Analyzer

An Amazon managed policy is a standalone policy that is created and administered by Amazon. Amazon managed policies are designed to provide permissions for many common use cases so that you can start assigning permissions to users, groups, and roles.

Keep in mind that Amazon managed policies might not grant least-privilege permissions for your specific use cases because they're available for all Amazon customers to use. We recommend that you reduce permissions further by defining customer managed policies that are specific to your use cases.

You cannot change the permissions defined in Amazon managed policies. If Amazon updates the permissions defined in an Amazon managed policy, the update affects all principal identities (users, groups, and roles) that the policy is attached to. Amazon is most likely to update an Amazon managed policy when a new Amazon Web Services service is launched or new API operations become available for existing services.

For more information, see Amazon managed policies in the IAM User Guide.

IAMReadOnlyAccess

Use the IAMReadOnlyAccess managed policy to allow read only access to IAM resources. This policy grants permission to get and list all IAM resources. It allows viewing details and activity reports for users, groups, roles, policies, identity providers, and MFA devices. It does not include the ability to create or delete resources or access to IAM Access Analyzer resources. View the policy for the full list of services and actions supported by this policy.

IAMUserChangePassword

Use the IAMUserChangePassword managed policy to allow IAM users to change their password.

You configure your IAM Account settings and the Password policy to allow IAM users to change their IAM account password. When you allow this action, IAM attaches the following policy to each user:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:ChangePassword" ], "Resource": [ "arn:aws-cn:iam::*:user/${aws:username}" ] }, { "Effect": "Allow", "Action": [ "iam:GetAccountPasswordPolicy" ], "Resource": "*" } ] }

IAMAccessAnalyzerFullAccess

Use the IAMAccessAnalyzerFullAccess Amazon managed policy to allow your administrators to access IAM Access Analyzer.

Permissions groupings

This policy is grouped into statements based on the set of permissions provided.

  • IAM Access Analyzer – Allows full administrative permissions to all resources in IAM Access Analyzer.

  • Create service linked role – Allows the administrator to create a service-linked role, which allows IAM Access Analyzer to analyze resources in other services on your behalf. This permission allows creating the service-linked role only for use by IAM Access Analyzer.

  • Amazon Organizations – Allows administrators to use IAM Access Analyzer for an organization in Amazon Organizations. After enabling trusted access for IAM Access Analyzer in Amazon Organizations, members of the management account can view findings across their organization.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "access-analyzer:*" ], "Resource": "*" }, { "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "*", "Condition": { "StringEquals": { "iam:AWSServiceName": "access-analyzer.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "organizations:DescribeAccount", "organizations:DescribeOrganization", "organizations:DescribeOrganizationalUnit", "organizations:ListAccounts", "organizations:ListAccountsForParent", "organizations:ListAWSServiceAccessForOrganization", "organizations:ListChildren", "organizations:ListDelegatedAdministrators", "organizations:ListOrganizationalUnitsForParent", "organizations:ListParents", "organizations:ListRoots" ], "Resource": "*" } ] }

IAMAccessAnalyzerReadOnlyAccess

Use the IAMAccessAnalyzerReadOnlyAccess Amazon managed policy to allow read-only access to IAM Access Analyzer.

To also allow read-only access to IAM Access Analyzer for Amazon Organizations, create a customer managed policy that allows the Describe and List actions from the IAMAccessAnalyzerFullAccess Amazon managed policy.

Service-level permissions

This policy provides read-only access to IAM Access Analyzer. No other service permissions are included in this policy.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "IAMAccessAnalyzerReadOnlyAccess", "Effect": "Allow", "Action": [ "access-analyzer:CheckAccessNotGranted", "access-analyzer:CheckNoNewAccess", "access-analyzer:Get*", "access-analyzer:List*", "access-analyzer:ValidatePolicy" ], "Resource": "*" } ] }

AccessAnalyzerServiceRolePolicy

You can't attach AccessAnalyzerServiceRolePolicy to your IAM entities. This policy is attached to a service-linked role that allows IAM Access Analyzer to perform actions on your behalf. For more information, see Using service-linked roles for Amazon Identity and Access Management and Access Analyzer.

Permissions groupings

This policy allows access to IAM Access Analyzer to analyze resource metadata from multiple Amazon Web Services services.

  • Amazon DynamoDB – Allows permissions to view DynamoDB streams and tables.

  • Amazon Elastic Compute Cloud – Allows permissions to describe IP addresses, snapshots, and VPCs.

  • Amazon Elastic Container Registry – Allows permissions to describe image repositories, retrieve account settings, and retrieve registry and repository policies.

  • Amazon Elastic File System – Allows permissions to view the description of an Amazon EFS file system and view the resource-level policy for an Amazon EFS file system.

  • Amazon Identity and Access Management – Allows permissions to retrieve information about a specified role and list the IAM roles that have a specified path prefix. Allows permissions to retrieve information about users, IAM groups, login profiles, access keys, and service last accessed data.

  • Amazon Key Management Service – Allows permissions to view detailed information about an KMS key and its key policies and grants.

  • Amazon Lambda – Allows permissions to view information about Lambda aliases, functions, layers, and aliases.

  • Amazon Organizations – Allows permissions to Organizations and allows the creation of an analyzer within the Amazon organization as the zone of trust.

  • Amazon Relational Database Service – Allows permissions to view detailed information about Amazon RDS DB snapshots and Amazon RDS DB cluster snapshots.

  • Amazon Simple Storage Service – Allows permissions to view detailed information about Amazon S3 access points, buckets, and Amazon S3 directory buckets that use the Amazon S3 Express One storage class.

  • Amazon Secrets Manager – Allows permissions to view detailed information about secrets and resource policies attached to secrets.

  • Amazon Simple Notification Service – Allows permissions to view detailed information about a topic.

  • Amazon Simple Queue Service – Allows permissions to view detailed information about specified queues.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AccessAnalyzerServiceRolePolicy", "Effect": "Allow", "Action": [ "dynamodb:GetResourcePolicy", "dynamodb:ListStreams", "dynamodb:ListTables", "ec2:DescribeAddresses", "ec2:DescribeByoipCidrs", "ec2:DescribeSnapshotAttribute", "ec2:DescribeSnapshots", "ec2:DescribeVpcEndpoints", "ec2:DescribeVpcs", "ec2:GetSnapshotBlockPublicAccessState", "ecr:DescribeRepositories", "ecr:GetAccountSetting", "ecr:GetRegistryPolicy", "ecr:GetRepositoryPolicy", "elasticfilesystem:DescribeFileSystemPolicy", "elasticfilesystem:DescribeFileSystems", "iam:GetRole", "iam:ListEntitiesForPolicy", "iam:ListRoles", "iam:ListUsers", "iam:ListRoleTags", "iam:ListUserTags", "iam:GetUser", "iam:GetGroup", "iam:GenerateServiceLastAccessedDetails", "iam:GetServiceLastAccessedDetails", "iam:ListAccessKeys", "iam:GetLoginProfile", "iam:GetAccessKeyLastUsed", "iam:ListRolePolicies", "iam:GetRolePolicy", "iam:ListAttachedRolePolicies", "iam:ListUserPolicies", "iam:GetUserPolicy", "iam:ListAttachedUserPolicies", "iam:GetPolicy", "iam:GetPolicyVersion", "iam:ListGroupsForUser", "kms:DescribeKey", "kms:GetKeyPolicy", "kms:ListGrants", "kms:ListKeyPolicies", "kms:ListKeys", "lambda:GetFunctionUrlConfig", "lambda:GetLayerVersionPolicy", "lambda:GetPolicy", "lambda:ListAliases", "lambda:ListFunctions", "lambda:ListLayers", "lambda:ListLayerVersions", "lambda:ListVersionsByFunction", "organizations:DescribeAccount", "organizations:DescribeOrganization", "organizations:DescribeOrganizationalUnit", "organizations:ListAccounts", "organizations:ListAccountsForParent", "organizations:ListAWSServiceAccessForOrganization", "organizations:ListChildren", "organizations:ListDelegatedAdministrators", "organizations:ListOrganizationalUnitsForParent", "organizations:ListParents", "organizations:ListRoots", "rds:DescribeDBClusterSnapshotAttributes", "rds:DescribeDBClusterSnapshots", "rds:DescribeDBSnapshotAttributes", "rds:DescribeDBSnapshots", "s3:DescribeMultiRegionAccessPointOperation", "s3:GetAccessPoint", "s3:GetAccessPointPolicy", "s3:GetAccessPointPolicyStatus", "s3:GetAccountPublicAccessBlock", "s3:GetBucketAcl", "s3:GetBucketLocation", "s3:GetBucketPolicyStatus", "s3:GetBucketPolicy", "s3:GetBucketPublicAccessBlock", "s3:GetMultiRegionAccessPoint", "s3:GetMultiRegionAccessPointPolicy", "s3:GetMultiRegionAccessPointPolicyStatus", "s3:ListAccessPoints", "s3:ListAllMyBuckets", "s3:ListMultiRegionAccessPoints", "s3express:GetBucketPolicy", "s3express:ListAllMyDirectoryBuckets", "sns:GetTopicAttributes", "sns:ListTopics", "secretsmanager:DescribeSecret", "secretsmanager:GetResourcePolicy", "secretsmanager:ListSecrets", "sqs:GetQueueAttributes", "sqs:ListQueues" ], "Resource": "*" } ] }

IAMAuditRootUserCredentials

Use the IAMAuditRootUserCredentials Amazon managed policy to scope down permissions when you perform a privileged task on an Amazon Organizations member account to audit root user credential status of a member account. You can list or get individual root user credential information like:

  • Whether there is a root user password

  • If the root user has an access key and when it was last used

  • If the root user has associated signing certificates

  • The root user associated MFA devices

  • List of the consolidated root user credential status

You can't attach IAMAuditRootUserCredentials to your IAM entities. This policy is attached to AssumeRoot to perform privileged tasks on a member account in your organization. For more information, see Centrally manage root access for member accounts.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAllOtherActionsOnAnyResource", "NotAction": [ "iam:ListAccessKeys", "iam:ListSigningCertificates", "iam:GetLoginProfile", "iam:ListMFADevices", "iam:GetAccountSummary", "iam:GetUser", "iam:GetAccessKeyLastUsed" ], "Effect": "Deny", "Resource": "*" }, { "Sid": "DenyAuditingCredentialsOnNonRootUserResource", "Action": [ "iam:ListAccessKeys", "iam:ListSigningCertificates", "iam:GetLoginProfile", "iam:ListMFADevices" , "iam:GetUser", "iam:GetAccessKeyLastUsed" ], "Effect": "Deny", "NotResource": "arn:aws:iam::*:root" } ] }

Permissions groupings

This policy is grouped into statements based on the set of permissions provided.

  • DenyAllOtherActionsOnAnyResource – Denies access to credentials for all resources.

  • DenyAuditingCredentialsOnNonRootUserResource – Denies access to credentials for all non-root user resources.

IAMCreateRootUserPassword

Use the IAMCreateRootUserPassword Amazon managed policy to scope down permissions when you perform a privileged task on an Amazon Organizations member account to allow password recovery for a member account with no root user credentials.

You can't attach IAMCreateRootUserPassword to your IAM entities. This policy is attached to AssumeRoot to perform privileged tasks on a member account in your organization. For more information, see Centrally manage root access for member accounts.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAllOtherActionsOnAnyResource", "NotAction": [ "iam:CreateLoginProfile", "iam:GetLoginProfile" ], "Effect": "Deny", "Resource": "*" }, { "Sid": "DenyCreatingPasswordOnNonRootUserResource", "Action": [ "iam:CreateLoginProfile", "iam:GetLoginProfile" ], "Effect": "Deny", "NotResource": "arn:aws:iam::*:root" } ] }

Permissions groupings

This policy is grouped into statements based on the set of permissions provided.

  • DenyAllOtherActionsOnAnyResource – Denies access to get or create a password for all resources.

  • DenyCreatingPasswordOnNonRootUserResource – Denies access to get or create a password for all non-root user resources.

IAMDeleteRootUserCredentials

Use the IAMDeleteRootUserCredentials Amazon managed policy to scope down permissions when you perform a privileged task on an Amazon Organizations member account to remove root user credentials including password, access keys, signing certificates, and deactivating MFA. Additional permissions are required for this privileged action, so you can view last used credential information, verify last used information for the member account root user, and list permissions for all root user credentials to be deleted.

You can't attach IAMDeleteRootUserCredentials to your IAM entities. This policy is attached to AssumeRoot to perform privileged tasks on a member account in your organization. For more information, see Centrally manage root access for member accounts.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAllOtherActionsOnAnyResource", "Effect": "Deny", "NotAction": [ "iam:DeleteAccessKey", "iam:DeleteSigningCertificate", "iam:DeleteLoginProfile", "iam:DeactivateMFADevice", "iam:ListAccessKeys", "iam:ListSigningCertificates", "iam:GetLoginProfile", "iam:ListMFADevices", "iam:GetUser", "iam:GetAccessKeyLastUsed" ], "Resource": "*" }, { "Sid": "DenyDeletingRootUserCredentialsOnNonRootUserResource", "Effect": "Deny", "Action": [ "iam:DeleteAccessKey", "iam:DeleteSigningCertificate", "iam:DeleteLoginProfile", "iam:DeactivateMFADevice", "iam:ListAccessKeys", "iam:ListSigningCertificates", "iam:GetLoginProfile", "iam:ListMFADevices", "iam:GetUser", "iam:GetAccessKeyLastUsed" ], "NotResource": "arn:aws:iam::*:root" } ] }

Permissions groupings

This policy is grouped into statements based on the set of permissions provided.

  • DenyAllOtherActionsOnAnyResource – Denies access to get or delete credentials for all resources.

  • DenyDeletingRootUserCredentialsOnNonRootUserResource – Denies access to get or delete credentials for all non-root user resources.

S3UnlockBucketPolicy

Use the S3UnlockBucketPolicy Amazon managed policy to scope down permissions when you perform a privileged task on an Amazon Organizations member account to remove a misconfigured bucket policy that denies all principals from accessing an Amazon S3 bucket.

You can't attach S3UnlockBucketPolicy to your IAM entities. This policy is attached to AssumeRoot to perform privileged tasks on a member account in your organization. For more information, see Centrally manage root access for member accounts.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAllOtherActionsOnAnyResource", "NotAction": [ "s3:DeleteBucketPolicy", "s3:PutBucketPolicy", "s3:GetBucketPolicy", "s3:ListAllMyBuckets" ], "Effect": "Deny", "Resource": "*" }, { "Sid": "DenyManagingBucketPolicyForNonRootCallers", "Action": [ "s3:DeleteBucketPolicy", "s3:PutBucketPolicy", "s3:GetBucketPolicy", "s3:ListAllMyBuckets" ], "Effect": "Deny", "Resource": "*", "Condition" : { "StringNotLike" : { "aws:PrincipalArn" : "arn:aws:iam::*:root" } } } ] }

Permissions groupings

This policy is grouped into statements based on the set of permissions provided.

  • DenyAllOtherActionsOnAnyResource – Denies access to bucket policies for all resources.

  • DenyManagingBucketPolicyForNonRootCallers – Denies access to bucket policies for all non-root user resources.

SQSUnlockQueuePolicy

Use the SQSUnlockQueuePolicy Amazon managed policy to scope down permissions when you perform a privileged task on an Amazon Organizations member account to delete an Amazon Simple Queue Service resource-based policy that denies all principals from accessing an Amazon SQS queue.

You can't attach SQSUnlockQueuePolicy to your IAM entities. This policy is attached to AssumeRoot to perform privileged tasks on a member account in your organization. For more information, see Centrally manage root access for member accounts.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAllOtherActionsOnAnyResource", "Effect": "Deny", "NotAction": [ "sqs:SetQueueAttributes", "sqs:GetQueueAttributes", "sqs:ListQueues", "sqs:GetQueueUrl" ], "Resource": "*" }, { "Sid": "DenyGettingQueueAttributesOnNonOwnQueue", "Effect": "Deny", "Action": [ "sqs:GetQueueAttributes" ], "Resource": "arn:aws:sqs:*:*:*", "Condition": { "StringNotEqualsIfExists": { "aws:ResourceAccount": [ "${aws:PrincipalAccount}" ] } } }, { "Sid": "DenyActionsForNonRootUser", "Effect": "Deny", "Action": [ "sqs:SetQueueAttributes", "sqs:GetQueueAttributes", "sqs:ListQueues", "sqs:GetQueueUrl" ], "Resource": "*", "Condition" : { "StringNotLike" : { "aws:PrincipalArn" : "arn:aws:iam::*:root" } } } ] }

Permissions groupings

This policy is grouped into statements based on the set of permissions provided.

  • DenyAllOtherActionsOnAnyResource – Denies access to Amazon SQS actions for all resources.

  • DenyGettingQueueAttributesOnNonOwnQueue – Denies access to Amazon SQS queue attributes for queues owned by another account.

  • DenyActionsForNonRootUser – Denies access to Amazon SQS actions for all non-root user resources.

IAM and IAM Access Analyzer updates to Amazon managed policies

View details about updates to IAM and Amazon managed policies since the service began tracking these changes. For automatic alerts about changes to this page, subscribe to the RSS feed on the IAM and IAM Access Analyzer Document history pages.

Change Description Date
IAMDeleteRootUserCredentials – Removed permissions IAM removed the iam:DeleteVirtualMFADevice permission from the managed policy. January 7, 2025
AccessAnalyzerServiceRolePolicy – Added permissions IAM Access Analyzer added support for permission to retrieve information about Amazon ECR account settings and registry policies to the service-level permissions of AccessAnalyzerServiceRolePolicy. December 10, 2024
IAMAuditRootUserCredentials – Added managed policy IAM added managed policies for Centrally manage root access for member accounts to scope privileged tasks you can perform on Amazon Organizations member accounts. November 14, 2024
IAMCreateRootUserPassword – Added managed policy IAM added managed policies for Centrally manage root access for member accounts to scope privileged tasks you can perform on Amazon Organizations member accounts. November 14, 2024
IAMDeleteRootUserCredentials – Added managed policy IAM added managed policies for Centrally manage root access for member accounts to scope privileged tasks you can perform on Amazon Organizations member accounts. November 14, 2024
S3UnlockBucketPolicy – Added managed policy IAM added managed policies for Centrally manage root access for member accounts to scope privileged tasks you can perform on Amazon Organizations member accounts. November 14, 2024
SQSUnlockQueuePolicy – Added managed policy IAM added managed policies for Centrally manage root access for member accounts to scope privileged tasks you can perform on Amazon Organizations member accounts. November 14, 2024
AccessAnalyzerServiceRolePolicy – Added permissions IAM Access Analyzer added support for permission to retrieve information about IAM user and role tags to the service-level permissions of AccessAnalyzerServiceRolePolicy. October 29, 2024
AccessAnalyzerServiceRolePolicy – Added permissions IAM Access Analyzer added support for permission to retrieve information about IAM user and role policies to the service-level permissions of AccessAnalyzerServiceRolePolicy. May 30, 2024
AccessAnalyzerServiceRolePolicy – Added permissions IAM Access Analyzer added support for permission to retrieve the current state of the block public access for Amazon EC2 snapshots to the service-level permissions of AccessAnalyzerServiceRolePolicy. January 23, 2024
AccessAnalyzerServiceRolePolicy – Added permissions IAM Access Analyzer added support for DynamoDB streams and tables to the service-level permissions of AccessAnalyzerServiceRolePolicy. January 11, 2024
AccessAnalyzerServiceRolePolicy – Added permissions IAM Access Analyzer added support for Amazon S3 directory buckets to the service-level permissions of AccessAnalyzerServiceRolePolicy. December 1, 2023

IAMAccessAnalyzerReadOnlyAccess – Added permissions

IAM Access Analyzer added permissions to allow you to check whether updates to your policies grant additional access.

This permission is required by IAM Access Analyzer to perform policy checks on your policies.

November 26, 2023
AccessAnalyzerServiceRolePolicy – Added permissions IAM Access Analyzer added IAM actions to the service-level permissions of AccessAnalyzerServiceRolePolicy to support the following actions:
  • Listing entities for a policy

  • Generating service last accessed details

  • Listing access key information

November 26, 2023
AccessAnalyzerServiceRolePolicy – Added permissions IAM Access Analyzer added support for the following resource types to the service-level permissions of AccessAnalyzerServiceRolePolicy:
  • Amazon EBS volume snapshots

  • Amazon ECR repositories

  • Amazon EFS file systems

  • Amazon RDS DB snapshots

  • Amazon RDS DB cluster snapshots

  • Amazon SNS topics

October 25, 2022
AccessAnalyzerServiceRolePolicy – Added permissions IAM Access Analyzer added the lambda:GetFunctionUrlConfig action to the service-level permissions of AccessAnalyzerServiceRolePolicy. April 6, 2022
AccessAnalyzerServiceRolePolicy – Added permissions IAM Access Analyzer added new Amazon S3 actions to analyze metadata associated with multi-region access points. September 2, 2021

IAMAccessAnalyzerReadOnlyAccess – Added permissions

IAM Access Analyzer added a new action to grant ValidatePolicy permissions to allow you to use the policy checks for validation.

This permission is required by IAM Access Analyzer to perform policy checks on your policies.

March 16, 2021

IAM Access Analyzer started tracking changes

IAM Access Analyzer started tracking changes for its Amazon managed policies.

March 1, 2021