How AWS Auto Scaling works with IAM - AWS Auto Scaling

How AWS Auto Scaling works with IAM

Before you use IAM to manage access to AWS Auto Scaling, you should understand what IAM features are available to use with AWS Auto Scaling. To get a high-level view of how AWS Auto Scaling and other AWS services work with IAM, see AWS services that work with IAM in the IAM User Guide.

AWS Auto Scaling identity-based policies

With IAM identity-based policies, you can specify allowed or denied actions and resources, and the conditions under which actions are allowed or denied. AWS Auto Scaling supports specific actions, resources, and condition keys. To learn about all of the elements that you use in a JSON policy, see IAM JSON policy elements reference in the IAM User Guide.


Administrators can use AWS JSON policies to specify who has access to what. That is, which principal can perform actions on what resources, and under what conditions.

The Action element of a JSON policy describes the actions that you can use to allow or deny access in a policy. Policy actions usually have the same name as the associated AWS API operation. There are some exceptions, such as permission-only actions that don't have a matching API operation. There are also some operations that require multiple actions in a policy. These additional actions are called dependent actions.

Include actions in a policy to grant permissions to perform the associated operation.

Policy actions in AWS Auto Scaling use the following prefix before the action: autoscaling-plans:. Policy statements must include either an Action or NotAction element. AWS Auto Scaling defines its own set of actions that describe tasks that you can perform with this service.

To specify multiple actions in a single statement, separate them with commas as shown in the following example.

"Action": [ "autoscaling-plans:DescribeScalingPlans", "autoscaling-plans:DescribeScalingPlanResources"

You can specify multiple actions using wildcards (*). For example, to specify all actions that begin with the word Describe, include the following action.

"Action": "autoscaling-plans:Describe*"

To see a list of AWS Auto Scaling actions, see Actions in the AWS Auto Scaling API Reference.


The Resource element specifies the object or objects to which the action applies.

AWS Auto Scaling has no service-defined resources that can be used as the Resource element of an IAM policy statement. Therefore, there are no Amazon Resource Names (ARNs) for AWS Auto Scaling for you to use in an IAM policy. To control access to AWS Auto Scaling actions, always use an * (asterisk) as the resource when writing an IAM policy.

Condition keys

The Condition element (or Condition block) lets you specify conditions in which a statement is in effect. For example, you might want a policy to be applied only after a specific date. To express conditions, use predefined condition keys.

AWS Auto Scaling does not provide any service-specific condition keys, but it does support using some global condition keys. To see all AWS global condition keys, see AWS global condition context keys in the IAM User Guide.

The Condition element is optional.


To view examples of AWS Auto Scaling identity-based policies, see AWS Auto Scaling identity-based policy examples.

AWS Auto Scaling resource-based policies

Other Amazon Web Services, such as Amazon Simple Storage Service, support resource-based permissions policies. For example, you can attach a permissions policy to an S3 bucket to manage access permissions to that bucket.

AWS Auto Scaling does not support resource-based policies.

Access Control Lists (ACLs)

AWS Auto Scaling does not support Access Control Lists (ACLs).

Authorization based on AWS Auto Scaling tags

AWS Auto Scaling has no service-defined resources that can be tagged. Therefore, it does not support controlling access based on tags.

AWS Auto Scaling IAM roles

An IAM role is an entity within your AWS account that has specific permissions.

Using temporary credentials with AWS Auto Scaling

You can use temporary credentials to sign in with federation, to assume an IAM role, or to assume a cross-account role. You obtain temporary security credentials by calling AWS STS API operations such as AssumeRole or GetFederationToken.

AWS Auto Scaling supports using temporary credentials.

Service-linked roles

AWS Auto Scaling supports service-linked roles.

Depending on which resources you add to your scaling plan, this automatically creates a service-linked role for Amazon EC2 Auto Scaling and one service-linked role per resource type for Application Auto Scaling.

If you enable predictive scaling, this automatically creates the AWS Auto Scaling service-linked role.

For more information, see the applicable role-specific documentation:

You can use the following procedure to determine if your account already has a service-linked role.

To determine whether a service-linked role already exists

  1. Open the IAM console at

  2. In the navigation pane, choose Roles.

  3. Search the list for "AWSServiceRole" to find the service linked roles that exist in your account. Look for the name of the service-linked role that you want to check.

Service roles

AWS Auto Scaling has no service roles.