Document history for IAM - AWS Identity and Access Management

Document history for IAM

The following table describes major documentation updates for IAM.


Support for multiple multi-factor authentication (MFA) devices for root users and IAM users

Now you can to add up to eight MFA devices per user, including FIDO security keys, software time-based one-time password (TOTP) with virtual authenticator applications, or hardware TOTP tokens.

November 16, 2022

IAM Access Analyzer support for new resource types

IAM Access Analyzer added support for the following resource types:

  • 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

U2F deprecation and WebAuthn/FIDO update

Removed mentions of U2F as an MFA option and added information about WebAuthn, FIDO2, and FIDO security keys.

May 31, 2022

Updates to resilience in IAM

Added information about maintaining access to IAM credentials when an event disrupts communication between AWS Regions.

May 16, 2022

New global condition keys for resources

You can now control access to resources based on the account, Organizational Unit (OU), or organization in AWS Organizations that contains your resources. You can use the aws:ResourceAccount, aws:ResourceOrgID, and aws:ResourceOrgPaths global condition keys in an IAM policy.

April 27, 2022

Code examples for IAM using AWS SDKs

Added code examples that show how to use IAM with an AWS software development kit (SDK). The examples are divided into code excerpts that show you how to call individual service functions and examples that show you how to accomplish a specific task by calling multiple functions within the same service.

April 7, 2022

Updates to policy evaluation logic flow chart

Updates to the policy evaluation logic flow chart and related text in the Determining whether a request is allowed or denied within an account section.

November 17, 2021

Updates to security best practices

Added information about creating administrative users instead of using root user credentials, removed the best practice of using user groups to assign permissions to IAM users, and clarified when to use managed policies instead of inline policies.

October 5, 2021

Updates to policy evaluation logic topic for resource-based policies

Added information about the impact of resource-based policies and different principal types in the same account.

October 5, 2021

Updates to single-valued and multivalued condition keys

The differences between single-valued and multivalued condition keys are now explained in more detail. The value type was added to each AWS global condition context key.

September 30, 2021

IAM Access Analyzer supports Amazon S3 Multi-Region Access Points

IAM Access Analyzer identifies Amazon S3 buckets that allow public and cross-account access, including those that use Amazon S3 Multi-Region Access Points.

September 2, 2021

AWS managed policy updates - Update to an existing policy

IAM Access Analyzer updated an existing AWS managed policy.

September 2, 2021

More services supported for action-level policy generation

IAM Access Analyzer can generate IAM policies with action-level access activity information for additional AWS services.

August 24, 2021

Generate IAM policies for cross-account trails

You can now use IAM Access Analyzer to generate fine-grained policies based on your access activity using a AWS CloudTrail trail in a different account, for example, a centralized AWS Organizations trail.

August 18, 2021

Additional IAM Access Analyzer policy checks

IAM Access Analyzer extended policy validation by adding new policy checks that validate conditions included in IAM policies. These checks analyze the condition block in your policy statement and report security warnings, errors, and suggestions along with actionable recommendations.

IAM Access Analyzer added the following policy checks:

June 29, 2021

Action last accessed support for more services

You can now view action last accessed information in the IAM console about the last time an IAM principal used an action for the following services: Amazon EC2, IAM, Lambda, and Amazon S3 management actions. You can also use the AWS CLI or AWS API to retrieve a data report. You can use this information to identify unnecessary permissions so that you can refine your IAM policies to better adhere to the principle of least privilege.

April 19, 2021

Monitor and control actions taken with assumed roles

Administrators can configure IAM roles to require that identities pass a source identity, which is logged in AWS CloudTrail. Reviewing source identity information helps administrators determine who or what performed actions with assumed role sessions.

April 13, 2021

Generate IAM policies based on access activity

You can now use IAM Access Analyzer to generate fine-grained policies based on your access activity found in your AWS CloudTrail.

April 7, 2021

IAM Access Analyzer policy checks

IAM Access Analyzer now provides over 100 policy checks with actionable recommendations during policy authoring.

March 16, 2021

Expanded policy validation options

Expanded policy validation available in the IAM console, AWS API, and AWS CLI using policy checks in IAM Access Analyzer to help you author secure and functional JSON policies.

March 15, 2021

Tagging IAM resources

You can now tag additional IAM resources using a tag key-value pair.

February 11, 2021

Default password policy for IAM users

If you do not set a custom password policy for your AWS account, IAM user passwords must now meet the default AWS password policy.

November 18, 2020

The actions, resources, and condition keys pages for AWS services have moved

Each AWS service can define actions, resources, and condition context keys for use in IAM policies. You can now find the list of AWS services and their actions, resources, and condition context keys in the Service Authorization Reference.

November 16, 2020

IAM users longer role session duration

IAM users can now have a longer role session duration when switching roles in the AWS Management Console, reducing interruptions due to session expiration. Users are granted the maximum session duration set for the role, or the remaining time in the IAM user's session, whichever is less.

July 24, 2020

Use Service Quotas to request quick increases for IAM entities

You can request quota increases for adjustable IAM quotas using the Service Quotas console. Now, some increases are automatically approved in Service Quotas and available in your account within a few minutes. Larger requests are submitted to AWS Support.

June 25, 2020

Last accessed information in IAM now includes Amazon S3 management actions

In addition to service last accessed information, you can now view information in the IAM console about the last time an IAM principal used an Amazon S3 action. You can also use the AWS CLI or AWS API to retrieve the data report. The report includes information about the allowed services and actions that principals last attempted to access and when. You can use this information to identify unnecessary permissions so that you can refine your IAM policies to better adhere to the principle of least privilege.

June 3, 2020

Security chapter addition

The security chapter helps you understand how to configure IAM and AWS STS to meet your security and compliance objectives. You also learn how to use other AWS services that help you to monitor and secure your IAM resources.

April 29, 2020


You can now write a policy that grants permissions based on the session name that a principal specifies when assuming a role.

April 21, 2020

AWS sign-in page update

When you sign in on the main AWS sign-in page, you can no choose to sign in as the AWS account root user or an IAM user. When you do, the label on the page indicates whether you should provide your root user email address or your IAM user information. This documentation includes updated screen captures to help you understand the AWS sign-in pages.

March 4, 2020

aws:ViaAWSService and aws:CalledVia condition keys

You can now write a policy to limit whether services can make requests on behalf of an IAM principal (user or role). When a principal makes a request to an AWS service, that service might use the principal's credentials to make subsequent requests to other services. Use the aws:ViaAWSService condition key to match if any service makes a request using a principal's credentials. Use the aws:CalledVia condition keys to match if specific services make a request using a principal's credentials.

February 20, 2020

Policy simulator adds support for permissions boundaries

You can now test the effect of permissions boundaries on IAM entities with the IAM policy simulator.

January 23, 2020

Cross-account policy evaluation

You can now learn how AWS evaluates policies for cross-account access. This occurs when a resource in a trusting account includes a resource-based policy that allows a principal in another account to access the resource. The request must be allowed in both accounts.

January 2, 2020

Session tags

You can now include tags when you assume a role or federate a user in AWS STS. When you perform the AssumeRole or GetFederationToken operation, you can pass the session tags as attributes. When you perform the AssumeRoleWithSAML or AssumeRoleWithWebIdentity operations, you can pass attributes from your corporate identities to AWS.

November 22, 2019

Control access for groups of AWS accounts in AWS Organizations

You can now reference organizational units (OUs) from AWS Organizations in IAM policies. If you use Organizations to organize your accounts into OUs, you can require that principals belong to a specific OU before granting access to your resources. Principals include AWS account root user, IAM users and IAM roles. To do this, specify the OU path in the aws:PrincipalOrgPaths condition key in your policies.

November 20, 2019

Role last used

You can now view the date, time, and Region where a role was last used. This information also helps you identify unused roles in your account. You can use the AWS Management Console, AWS CLI and AWS API to view information about when a role was last used.

November 19, 2019

Update to the global condition context keys page

You can now learn when each of the global condition keys is included in the context of a request. You can also navigate to each key more easily using the page table of contents (TOC). The information on the page helps you to write more accurate policies. For example, if your employees use federation with IAM roles, you should use the aws:userId key and not the aws:userName key. The aws:userName key applies only to IAM users and not roles.

October 6, 2019


Learn how attribute-based access control (ABAC) works in AWS using tags, and how it compares to the traditional AWS authorization model. Use the ABAC tutorial to learn how to create and test a policy that allows IAM roles with principal tags to access resources with matching tags. This strategy allows individuals to view or edit only the AWS resources required for their jobs.

October 3, 2019

AWS STS GetAccessKeyInfo operation

You can review the AWS access keys in your code to determine whether the keys are from an account that you own. You can pass an access key ID using the aws sts get-access-key-info AWS CLI command or the GetAccessKeyInfo AWS API operation.

July 24, 2019

Viewing Organizations service last accessed information in IAM

You can now view service last accessed information for an AWS Organizations entity or policy in the AWS Organizations section of the IAM console. You can also use the AWS CLI or AWS API to retrieve the data report. This data includes information about the allowed services that principals in an Organizations account last attempted to access and when. You can use this information to identify unnecessary permissions so that you can refine your Organizations policies to better adhere to the principle of least privilege.

June 20, 2019

Using a managed policy as a session policy

You can now pass up to 10 managed policy ARNs when you assume a role. This allows you to limit the permissions of the role's temporary credentials.

May 7, 2019

AWS STS Region compatibility of session tokens for the global endpoint

You can now choose whether to use version 1 or version 2 global endpoint tokens. Version 1 tokens are valid only in AWS Regions that are available by default. These tokens will not work in manually enabled Regions, such as Asia Pacific (Hong Kong). Version 2 tokens are valid in all Regions. However, version 2 tokens are longer and might affect systems where you temporarily store tokens.

April 26, 2019

Allow enabling and disabling AWS regions

You can now create a policy that allows an administrator to enable and disable the Asia Pacific (Hong Kong) Region (ap-east-1).

April 24, 2019

IAM user my security credentials page

IAM users can now manage all of their own credentials on the My Security Credentials page. This AWS Management Console page displays account information such as the account ID and canonical user ID. Users can also view and edit their own passwords, access keys, X.509 certificates, SSH keys, and Git credentials.

January 24, 2019

Access advisor API

You can now use the AWS CLI and AWS API to view service last accessed information.

December 7, 2018

Tagging IAM users and roles

You can now use IAM tags to add custom attributes to an identity (IAM user or role) using a tag key-value pair. You can also use tags to control an identity's access to resources or to control what tags can be attached to an identity.

November 14, 2018

U2F security keys

You can now use U2F security keys as a multi-factor authentication (MFA) option when signing in to the AWS Management Console.

September 25, 2018

Support for Amazon VPC endpoints

You can now establish a private connection between your VPC and AWS STS in the US West (Oregon) Region.

July 31, 2018

Permissions boundaries

New feature makes it easier to grant trusted employees the ability to manage IAM permissions without also granting full IAM administrative access.

July 12, 2018


New condition key provides an easier way to control access to AWS resources by specifying the AWS organization of IAM principals.

May 17, 2018


New condition key provides an easier way to use IAM policies to control access to AWS Regions.

April 25, 2018

Increased session duration for IAM roles

An IAM role can now have a session duration of 12 hours.

March 28, 2018

Updated role-creation workflow

New workflow improves the process of creating trust relationships and attaching permissions to roles.

September 8, 2017

AWS account sign-in process

Updated AWS sign-in experience allows both the root user and IAM users to use the Sign In to the Console link on the AWS Management Console's home page.

August 25, 2017

Example IAM policies

Documentation update features more than 30 example policies.

August 2, 2017

IAM best practices

Information added to the Users section of the IAM console makes it easier to follow IAM best practices.

July 5, 2017

Auto Scaling resources

Resource-level permissions can control access to and permissions for Auto Scaling resources.

May 16, 2017

Amazon RDS for MySQL and Amazon Aurora databases

Database administrators can associate database users with IAM users and roles and thus manage user access to all AWS resources from a single location.

April 24, 2017

Service-linked roles

Service-linked roles provide an easier and more secure way to delegate permissions to AWS services.

April 19, 2017

Policy summaries

New policy summaries make it easier to understand permissions in IAM policies.

March 23, 2017