

# 标记 IAM 角色
<a name="id_tags_roles"></a>

您可以使用 IAM 标签键值对向 IAM 角色添加自定义属性。例如，要向角色添加位置信息，您可以添加标签键 **location** 和标签值 **us\$1wa\$1seattle**。或者，也可以使用三种单独的位置标签键值对：**loc-country = us**、**loc-state = wa** 和 **loc-city = seattle**。您可以使用标签控制角色对资源的访问权限或控制可附加到角色的标签。要了解有关使用标签控制访问的更多信息，请参阅 [使用标签控制对 IAM 用户和角色的访问以及他们进行的访问](access_iam-tags.md)。

您还可以在 Amazon STS 中使用标签，以在代入角色或联合身份用户身份时添加自定义属性。有关更多信息，请参阅 [在 Amazon STS 中传递会话标签](id_session-tags.md)。

## 标记 IAM 角色所需的权限
<a name="id_tags_roles_permissions"></a>

您必须配置权限以允许 IAM 角色标记其他实体（用户或角色）。您可以在 IAM policy 中指定以下一项或所有 IAM 标签操作：
+ `iam:ListRoleTags`
+ `iam:TagRole`
+ `iam:UntagRole`
+ `iam:ListUserTags`
+ `iam:TagUser`
+ `iam:UntagUser`

**要允许 IAM 角色为特定用户添加、列出或删除标签**  
将以下语句添加到需要管理标签的 IAM 角色的权限策略。使用您的账号并将 *<username>* 替换为需要管理其标签的用户的名称。要了解如何使用该示例 JSON 策略文档创建策略，请参阅 [使用 JSON 编辑器创建策略](access_policies_create-console.md#access_policies_create-json-editor)。

```
{
    "Effect": "Allow",
    "Action": [
        "iam:ListUserTags",
        "iam:TagUser",
        "iam:UntagUser"
    ],
    "Resource": "arn:aws:iam::<account-number>:user/<username>"
}
```

**要允许 IAM 角色将标签添加到特定用户**  
将以下语句添加到需要为特定用户添加而不是删除标签的 IAM 角色的权限策略。

要使用此策略，请将 *<username>* 替换为需要管理其标签的用户的名称。要了解如何使用该示例 JSON 策略文档创建策略，请参阅 [使用 JSON 编辑器创建策略](access_policies_create-console.md#access_policies_create-json-editor)。

```
{
    "Effect": "Allow",
    "Action": [
        "iam:ListUserTags",
        "iam:TagUser"
    ],
    "Resource": "arn:aws:iam::<account-number>:user/<username>"
}
```

**要运行 IAM 角色为特定角色添加、列出或删除标签**  
将以下语句添加到需要管理标签的 IAM 角色的权限策略。将 *<rolename>* 替换为需要管理其标签的角色的名称。要了解如何使用该示例 JSON 策略文档创建策略，请参阅 [使用 JSON 编辑器创建策略](access_policies_create-console.md#access_policies_create-json-editor)。

```
{
    "Effect": "Allow",
    "Action": [
        "iam:ListRoleTags",
        "iam:TagRole",
        "iam:UntagRole"
    ],
    "Resource": "arn:aws:iam::<account-number>:role/<rolename>"
}
```

或者，也可以使用 Amazon 托管策略（如 [IAMFullAccess](https://console.amazonaws.cn/iam/home#policies/arn:aws:iam::aws:policy/IAMFullAccess)）来提供对 IAM 的完全访问权限。

## 管理 IAM 角色的标签（控制台）
<a name="id_tags_roles_procs-console"></a>

您可以从 Amazon Web Services 管理控制台 中管理 IAM 角色的标签。

**要管理角色的标签（控制台）**

1. 登录Amazon Web Services 管理控制台，然后通过以下网址打开 IAM 控制台：[https://console.aws.amazon.com/iam/](https://console.amazonaws.cn/iam/)。

1. 在控制台的导航窗格中，选择**角色**，然后选择要编辑的角色的名称。

1. 选择 **Tags (标签)** 选项卡，然后完成下列操作之一：
   + 如果用户还没有标签，请选择 **Add new tag**（添加新标签）。
   + 选择 **Manage tags**（管理标签）来管理一组现有的标签。

1. 添加或删除标签以完成标签集。然后选择 **Save changes**（保存更改）。

## 管理 IAM 角色（Amazon CLI 或 Amazon API）的标签
<a name="id_tags_roles_procs-cli-api"></a>

您可以为 IAM 角色列出、附加或删除标签。您可以使用 Amazon CLI 或 Amazon API 管理 IAM 角色的标签。

**列出当前附加到 IAM 角色的标签（Amazon CLI 或 Amazon API）**
+ Amazon CLI：[aws iam list-role-tags](https://docs.amazonaws.cn/cli/latest/reference/iam/list-role-tags.html)
+ Amazon API：[ListRoleTags](https://docs.amazonaws.cn/IAM/latest/APIReference/API_ListRoleTags.html)

**将标签附加到 IAM 角色（Amazon CLI 或 Amazon API）**
+ Amazon CLI：[aws iam tag-role](https://docs.amazonaws.cn/cli/latest/reference/iam/tag-role.html)
+ Amazon API：[TagRole](https://docs.amazonaws.cn/IAM/latest/APIReference/API_TagRole.html)

**从 IAM 角色中删除标签（Amazon CLI 或 Amazon API）**
+ Amazon CLI：[aws iam untag-role](https://docs.amazonaws.cn/cli/latest/reference/iam/untag-role.html)
+ Amazon API：[UntagRole](https://docs.amazonaws.cn/IAM/latest/APIReference/API_UntagRole.html)

有关将标签附加到其他 Amazon 服务的资源的信息，请参阅这些服务的文档。

有关使用标签通过 IAM 权限策略设置更精细权限的信息，请参阅 [IAM policy 元素：变量和标签](reference_policies_variables.md)。