

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

# 使用标签控制对 AWS CodeConnections 资源的访问权限
<a name="connections-tag-based-access-control"></a>

标签可以附加到资源，也可以从请求传入支持标签的服务。在中 AWS CodeConnections，资源可以有标签，有些操作可以包含标签。在创建 IAM 策略时，您可以使用标签条件键来控制以下：
+ 基于资源已有的标签，哪些用户可以对管道资源执行操作。
+ 哪些标签可以在操作的请求中传递。
+ 特定的标签键是否能在请求中使用。

以下示例演示了如何在策略中为 AWS CodeConnections 用户指定标签条件。

**Example 1：基于请求中的标签允许操作**  
以下策略授予用户在中创建连接的权限 AWS CodeConnections。  
为此，如果请求指定一个名为 `Project` 的带有值 `ProjectA` 的标签，则它允许 `CreateConnection` 和 `TagResource` 操作。（`aws:RequestTag` 条件键用于控制可以通过 IAM 请求传递哪些标签。） `aws:TagKeys` 条件确保标签键区分大小写。    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "codeconnections:CreateConnection",
        "codeconnections:TagResource"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:RequestTag/Project": "ProjectA"
        },
        "ForAllValues:StringEquals": {
          "aws:TagKeys": ["Project"]
        }
      }
    }
  ]
}
```

**Example 2：基于资源标签允许操作**  
以下策略授予用户对 AWS CodeConnections中的资源执行操作以及获取其相关信息的权限。  
为此，如果该管道具有名为 `Project`、值为 `ProjectA` 的标签，则它允许特定操作。（`aws:RequestTag` 条件键用于控制可以通过 IAM 请求传递哪些标签。） `aws:TagKeys` 条件确保标签键区分大小写。    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "codeconnections:CreateConnection",
        "codeconnections:DeleteConnection",
        "codeconnections:ListConnections"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:ResourceTag/Project": "ProjectA"
        },
        "ForAllValues:StringEquals": {
          "aws:TagKeys": ["Project"]
        }
      }
    }
  ]
}
```