

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

# 在 Step Functions 中创建基于标签的 IAM 策略
<a name="tag-based-policies"></a>

Step Functions 支持基于标签的策略。例如，您可能会限制对下面这样的所有 Step Functions 资源的访问：在这些资源包含的标签中，具有键 `environment` 和值 `production`。

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Deny",
            "Action": [
                "states:TagResource",
                "states:UntagResource",
                "states:DeleteActivity",
                "states:DeleteStateMachine",
                "states:StopExecution"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {"aws:ResourceTag/environment": "production"}
            }
        }
    ]
}
```

此策略将使用 `Deny` 来拒绝对已标记为 `environment/production` 的所有资源的以下功能：删除状态机或活动、停止执行以及添加或删除新的标签。

对于基于标签的授权，状态机执行资源（如下例所示）会继承与状态机关联的标签。

```
arn:{{partition}}:states:{{region}}:{{account-id}}:execution:{{<StateMachineName>:<ExecutionId>}}
```

当您调用[DescribeExecution](https://docs.aws.amazon.com/step-functions/latest/apireference/API_DescribeExecution.html)或 APIs 以其他方式指定执行资源 ARN 时，Step Functions 会在执行基于标签的授权时使用与状态机关联的标签来接受或拒绝请求。这有助于在状态机级别允许或拒绝对状态机执行的访问。

有关标记的更多信息，请参阅以下内容：
+ [在 Step Functions 中标记状态机和活动](sfn-best-practices.md#concepts-tagging)
+ [使用 IAM 标签控制访问](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_iam-tags.html)