View a markdown version of this page

Actions, resources, and condition keys for Amazon Step Functions - Service Authorization Reference
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).

Actions, resources, and condition keys for Amazon Step Functions

Amazon Step Functions (service prefix: states) provides the following service-specific operations, resources, actions, and condition keys for use in IAM permission policies.

References:

API operations defined by Amazon Step Functions

The following table maps API operations to the IAM actions they authorize. Only condition keys that have static values for the given API and action are listed; for the full set of condition keys supported by each action, see the Actions table.

Operation IAM action Condition key Possible value(s) Access level

CreateActivity

states:CreateActivity

Write

states:TagResource

Tagging, Write

CreateStateMachine

states:CreateStateMachine

Write

states:PublishStateMachineVersion

Write

states:TagResource

Tagging, Write

iam:PassRole

iam:PassedToService

states.amazonaws.com

Write

CreateStateMachineAlias

states:CreateStateMachineAlias

Write

DeleteActivity

states:DeleteActivity

Write

DeleteStateMachine

states:DeleteStateMachine

Write

DeleteStateMachineAlias

states:DeleteStateMachineAlias

Write

DeleteStateMachineVersion

states:DeleteStateMachineVersion

Write

DescribeActivity

states:DescribeActivity

Read

DescribeExecution

states:DescribeExecution

Read

DescribeMapRun

states:DescribeMapRun

Read

DescribeStateMachine

states:DescribeStateMachine

Read

DescribeStateMachineAlias

states:DescribeStateMachineAlias

Read

DescribeStateMachineForExecution

states:DescribeStateMachineForExecution

Read

GetActivityTask

states:GetActivityTask

Write

GetExecutionHistory

states:GetExecutionHistory

Read

ListActivities

states:ListActivities

List

ListExecutions

states:ListExecutions

List

ListMapRuns

states:ListMapRuns

List

ListStateMachineAliases

states:ListStateMachineAliases

List

ListStateMachineVersions

states:ListStateMachineVersions

List

ListStateMachines

states:ListStateMachines

List

ListTagsForResource

states:ListTagsForResource

List

PublishStateMachineVersion

states:PublishStateMachineVersion

Write

RedriveExecution

states:RedriveExecution

Write

SendTaskFailure

states:SendTaskFailure

Write

SendTaskHeartbeat

states:SendTaskHeartbeat

Write

SendTaskSuccess

states:SendTaskSuccess

Write

StartExecution

states:DescribeExecution

Read

states:StartExecution

Write

StartSyncExecution

states:StartSyncExecution

Write

StopExecution

states:StopExecution

Write

TagResource

states:TagResource

Tagging, Write

TestState

states:RevealSecrets

Read

states:TestState

Write

iam:PassRole

iam:PassedToService

states.amazonaws.com

Write

UntagResource

states:UntagResource

Tagging, Write

UpdateMapRun

states:UpdateMapRun

Write

UpdateStateMachine

states:PublishStateMachineVersion

Write

states:UpdateStateMachine

Write

iam:PassRole

iam:PassedToService

states.amazonaws.com

Write

UpdateStateMachineAlias

states:UpdateStateMachineAlias

Write

ValidateStateMachineDefinition

states:ValidateStateMachineDefinition

Read

Actions defined by Amazon Step Functions

You can specify the following actions in the Action element of an IAM policy statement. Use policies to grant permissions to perform an operation in Amazon. When you use an action in a policy, you usually allow or deny access to the API operation or CLI command with the same name. However, in some cases, a single action controls access to more than one operation. Alternatively, some operations require several different actions.

Actions Description Resource types (*required) Condition keys Access level

CreateActivity

Grants permission to create an activity

activity*

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

Write

CreateStateMachine

Grants permission to create a state machine

statemachine*

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

Write

CreateStateMachineAlias

Grants permission to create a state machine alias

statemachine*

aws:ResourceTag/${TagKey}

states:StateMachineQualifier

Write

DeleteActivity

Grants permission to delete an activity

activity*

aws:ResourceTag/${TagKey}

Write

DeleteStateMachine

Grants permission to delete a state machine

statemachine*

aws:ResourceTag/${TagKey}

Write

DeleteStateMachineAlias

Grants permission to delete a state machine alias

statemachine*

aws:ResourceTag/${TagKey}

states:StateMachineQualifier

Write

DeleteStateMachineVersion

Grants permission to delete a state machine version

statemachine*

aws:ResourceTag/${TagKey}

states:StateMachineQualifier

Write

DescribeActivity

Grants permission to describe an activity

activity*

aws:ResourceTag/${TagKey}

Read

DescribeExecution

Grants permission to describe an execution

execution*

aws:ResourceTag/${TagKey}

Read

express*

DescribeMapRun

Grants permission to describe a map run

maprun*

Read

DescribeStateMachine

Grants permission to describe a state machine

statemachine*

aws:ResourceTag/${TagKey}

states:StateMachineQualifier

Read

DescribeStateMachineAlias

Grants permission to describe a state machine alias

statemachine*

aws:ResourceTag/${TagKey}

states:StateMachineQualifier

Read

DescribeStateMachineForExecution

Grants permission to describe the state machine for an execution

execution*

aws:ResourceTag/${TagKey}

Read

GetActivityTask

Grants permission to be used by workers to retrieve a task (with the specified activity ARN) which has been scheduled for execution by a running state machine

activity*

aws:ResourceTag/${TagKey}

Write

GetExecutionHistory

Grants permission to return the history of the specified execution as a list of events

execution*

aws:ResourceTag/${TagKey}

Read

ListActivities

Grants permission to list the existing activities

List

ListExecutions

Grants permission to list the executions of a state machine

maprun*

states:StateMachineQualifier

List

statemachine*

aws:ResourceTag/${TagKey}

states:StateMachineQualifier

ListMapRuns

Grants permission to list the map runs of an execution

execution*

aws:ResourceTag/${TagKey}

List

ListStateMachineAliases

Grants permission to list the aliases of a state machine

statemachine*

aws:ResourceTag/${TagKey}

states:StateMachineQualifier

List

ListStateMachineVersions

Grants permission to list the versions of a state machine

statemachine*

aws:ResourceTag/${TagKey}

List

ListStateMachines

Grants permission to lists the existing state machines

List

ListTagsForResource

Grants permission to list tags for an Amazon Step Functions resource

activity

aws:ResourceTag/${TagKey}

List

statemachine

aws:ResourceTag/${TagKey}

PublishStateMachineVersion

Grants permission to publish a state machine version

statemachine*

aws:ResourceTag/${TagKey}

Write

RedriveExecution

Grants permission to redrive an execution

execution*

aws:ResourceTag/${TagKey}

Write

SendTaskFailure

Grants permission to report that the task identified by the taskToken failed

Write

SendTaskHeartbeat

Grants permission to report to the service that the task represented by the specified taskToken is still making progress

Write

SendTaskSuccess

Grants permission to report that the task identified by the taskToken completed successfully

Write

StartExecution

Grants permission to start a state machine execution

statemachine*

aws:ResourceTag/${TagKey}

states:StateMachineQualifier

Write

StartSyncExecution

Grants permission to start a Synchronous Express state machine execution

statemachine*

aws:ResourceTag/${TagKey}

states:StateMachineQualifier

Write

StopExecution

Grants permission to stop an execution

execution*

aws:ResourceTag/${TagKey}

Write

TagResource

Grants permission to tag an Amazon Step Functions resource

activity

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

Tagging, Write

statemachine

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

TestState

Grants permission to test a state machine definition

Write

UntagResource

Grants permission to remove a tag from an Amazon Step Functions resource

activity

aws:ResourceTag/${TagKey}

aws:TagKeys

Tagging, Write

statemachine

aws:ResourceTag/${TagKey}

aws:TagKeys

UpdateMapRun

Grants permission to update a map run

maprun*

Write

UpdateStateMachine

Grants permission to update a state machine

statemachine*

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

Write

UpdateStateMachineAlias

Grants permission to update a state machine alias

statemachine*

aws:ResourceTag/${TagKey}

states:StateMachineQualifier

Write

ValidateStateMachineDefinition

Grants permission to validate a state machine definition

Read

Permission-only actions for Amazon Step Functions

The following actions are defined by Amazon Step Functions but are not directly invocable through any API operation. They can only be used in IAM policy statements to grant or deny permissions.

Actions Description Resource types (*required) Condition keys Access level

InvokeHTTPEndpoint

Grants permission to invoke the HTTP Task state

Write

RevealSecrets

Grants permission to reveal sensitive data from an execution

Read

Resource types defined by Amazon Step Functions

The following resource types are defined by this service and can be used in the Resource element of IAM permission policy statements.

Resource types ARN Condition keys

activity

arn:${Partition}:states:${Region}:${Account}:activity:${ActivityName}

aws:ResourceTag/${TagKey}

execution

arn:${Partition}:states:${Region}:${Account}:execution:${StateMachineName}:${ExecutionId}

aws:ResourceTag/${TagKey}

express

arn:${Partition}:states:${Region}:${Account}:express:${StateMachineName}:${ExecutionId}:${ExpressId}

labelled execution

arn:${Partition}:states:${Region}:${Account}:execution:${StateMachineName}/${MapRunLabel}:${ExecutionId}

labelled express

arn:${Partition}:states:${Region}:${Account}:express:${StateMachineName}/${MapRunLabel}:${ExecutionId}:${ExpressId}

maprun

arn:${Partition}:states:${Region}:${Account}:mapRun:${StateMachineName}/${MapRunLabel}:${MapRunId}

statemachine

arn:${Partition}:states:${Region}:${Account}:stateMachine:${StateMachineName}

aws:ResourceTag/${TagKey}

statemachinealias

arn:${Partition}:states:${Region}:${Account}:stateMachine:${StateMachineName}:${StateMachineAliasName}

aws:ResourceTag/${TagKey}

statemachineversion

arn:${Partition}:states:${Region}:${Account}:stateMachine:${StateMachineName}:${StateMachineVersionId}

aws:ResourceTag/${TagKey}

Condition keys for Amazon Step Functions

Amazon Step Functions defines the following condition keys that can be used in the Condition element of an IAM policy.

Condition keys Description Type

aws:RequestTag/${TagKey}

Filters access by a tag key and value pair that is allowed in the request

String

aws:ResourceTag/${TagKey}

Filters access by a tag key and value pair of a resource

String

aws:TagKeys

Filters access by a list of tag keys that are allowed in the request

ArrayOfString

states:HTTPEndpoint

Filters access by the endpoint that the HTTP Task state allows in the request

String

states:HTTPMethod

Filters access by the method that the HTTP Task state allows in the request

String

states:StateMachineQualifier

Filters access by the qualifier of a state machine ARN

ArrayOfString