

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Step Functions 工作流程中版本和別名的授權
<a name="auth-version-alias"></a>

若要使用版本或別名叫用 Step Functions API 動作，您需要適當的許可。若要授權版本或別名叫用 API 動作，Step Functions 會使用狀態機器的 ARN，而不是使用版本 ARN 或別名 ARN。您也可以縮小特定版本或別名的許可範圍。如需詳細資訊，請參閱[縮小許可範圍](#auth-scope-permission-version-alias)。

您可以使用下列名為 的狀態機器 IAM 政策範例`myStateMachine`，叫用 [CreateStateMachineAlias](https://docs.aws.amazon.com/step-functions/latest/apireference/API_CreateStateMachineAlias.html) API 動作來建立狀態機器別名。

****  

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

當您設定允許或拒絕使用狀態機器版本或別名存取 API 動作的許可時，請考慮下列事項：
+ 如果您使用 [CreateStateMachine](https://docs.aws.amazon.com/step-functions/latest/apireference/API_CreateStateMachine.html) 和 [UpdateStateMachine](https://docs.aws.amazon.com/step-functions/latest/apireference/API_UpdateStateMachine.html) API 動作的 `publish` 參數來發佈新的狀態機器版本，您也需要 [PublishStateMachineVersion](https://docs.aws.amazon.com/step-functions/latest/apireference/API_PublishStateMachineVersion.html) API 動作的 `ALLOW` 許可。
+ [DeleteStateMachine](https://docs.aws.amazon.com/step-functions/latest/apireference/API_DeleteStateMachine.html) API 動作會刪除與狀態機器相關聯的所有版本和別名。

## 縮小版本或別名的許可範圍
<a name="auth-scope-permission-version-alias"></a>

您可以使用限定詞進一步縮小版本或別名所需的授權許可範圍。限定詞是指版本編號或別名名稱。您可以使用 限定詞來限定狀態機器。下列範例是狀態機器 ARN，使用名為 的別名`PROD`做為限定詞。

```
arn:aws:states:region:account-id:stateMachine:myStateMachine:PROD
```

如需合格和不合格 ARNs的詳細資訊，請參閱 [將執行與版本或別名建立關聯](execution-alias-version-associate.md)。

您可以使用 IAM 政策`Condition`陳述式`states:StateMachineQualifier`中名為 的選用內容金鑰來縮小許可範圍。例如，名為 之狀態機器的下列 IAM 政策會`myStateMachine`拒絕使用名為 `PROD`或 版本的別名叫用 [DescribeStateMachine](https://docs.aws.amazon.com/step-functions/latest/apireference/API_DescribeStateMachine.html) API 動作的存取權`1`。

****  

```
{
  "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"
          ]
        }
      }
    }
  ]
}
```

下列清單指定 API 動作，您可以在其中使用`StateMachineQualifier`內容索引鍵縮小許可範圍。
+ [CreateStateMachineAlias](https://docs.aws.amazon.com/step-functions/latest/apireference/API_CreateStateMachineAlias.html)
+ [DeleteStateMachineAlias](https://docs.aws.amazon.com/step-functions/latest/apireference/API_DeleteStateMachineAlias.html)
+ [DeleteStateMachineVersion](https://docs.aws.amazon.com/step-functions/latest/apireference/API_DeleteStateMachineVersion.html)
+ [DescribeStateMachine](https://docs.aws.amazon.com/step-functions/latest/apireference/API_DescribeStateMachine.html)
+ [DescribeStateMachineAlias](https://docs.aws.amazon.com/step-functions/latest/apireference/API_DescribeStateMachineAlias.html)
+ [ListExecutions](https://docs.aws.amazon.com/step-functions/latest/apireference/API_ListExecutions.html)
+ [ListStateMachineAliases](https://docs.aws.amazon.com/step-functions/latest/apireference/API_ListStateMachineAliases.html)
+ [StartExecution](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html)
+ [StartSyncExecution](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartSyncExecution.html)
+ [UpdateStateMachineAlias](https://docs.aws.amazon.com/step-functions/latest/apireference/API_UpdateStateMachineAlias.html)