版本与别名功能的授权 - Amazon Step Functions
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

版本与别名功能的授权

要使用版本或别名调用 Step Functions API 操作,您需要适当的权限。要授权某个版本或别名调用 API 操作,Step Functions 会使用状态机的 ARN,而不是使用版本 ARN 或别名 ARN。您也可以缩小特定版本或别名的权限范围。有关更多信息,请参阅缩小权限范围

您可以使用以下名为 myStateMachine 的状态机的 IAM 策略示例,调用 CreateStateMachineAlias 操作来创建状态机别名。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "states:CreateStateMachineAlias", "Resource": "arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine" } ] }

在设置允许或拒绝访问使用状态机版本或别名的 API 操作权限时,请考虑以下几点:

本主题内容

缩小版本或别名的权限范围

您可以使用限定符进一步缩小版本或别名所需的授权权限范围。限定符指的是版本号或别名名称。您可以使用限定符来限定状态机。以下示例是使用名为 PROD 的别名作为限定符的状态机 ARN。

arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine:PROD

有关限定和非限定 ARN 的更多信息,请参阅将执行与版本或别名关联

在 IAM 策略的 Condition 语句中,使用名为 states:StateMachineQualifier 的可选上下文密钥缩小权限范围。例如,以下 IAM 策略针对名为 myStateMachine 的状态机,拒绝调用别名为 PROD 或版本 1DescribeStateMachine API 操作。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "states:DescribeStateMachine", "Resource": "arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine", "Condition": { "ForAnyValue:StringEquals": { "states:StateMachineQualifier": [ "PROD", "1" ] } } } ] }

以下列表说明了您可以使用 StateMachineQualifier 上下文密钥缩小权限范围的 API 操作。