

# 向存储桶添加标签
<a name="bucket-tag-add"></a>



您可以向 Amazon S3 存储桶添加标签并修改这些标签。在存储桶上使用标签时，除了标准 S3 API 请求费率之外，没有任何其他费用。有关更多信息，请参阅 [Amazon S3 定价](https://docs.aws.amazon.com/s3/pricing/)。有关为存储桶添加标签的更多信息，请参阅[将标签与 S3 通用存储桶结合使用](buckets-tagging.md)。

## 权限
<a name="bucket-tag-add-permissions"></a>

要向存储桶添加标签，您必须具有以下权限：
+ `s3:TagResource`

## 错误故障排除
<a name="bucket-tag-add-troubleshooting"></a>

如果您在尝试向存储桶添加标签时遇到错误，可以执行以下操作：
+ 确认您具有向存储桶添加标签所需的[权限](#bucket-tag-add-permissions)。
+ 如果您尝试添加以 AWS 保留前缀 `aws:` 开头的标签键，请更改标签键并重试。

## Steps
<a name="bucket-tag-add-steps"></a>

您可以使用 Amazon S3 控制台、AWS 命令行界面（AWS CLI）、Amazon S3 REST API 和 AWS SDK 向存储桶添加标签。

## 使用 S3 控制台
<a name="bucket-tag-add-console"></a>

使用 Amazon S3 控制台向存储桶添加标签，请执行以下操作：

1. 登录到 Amazon S3 控制台，网址为：[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)。

1. 在左侧导航窗格中，选择**存储桶**。

1. 选择存储桶名称。

1. 选择**属性**选项卡。

1. 滚动到**标签**部分，然后选择**添加新标签**。

1. 这会打开**添加标签**页面。最多可以输入 50 个标签键值对。

1. 如果您添加的新标签与现有标签具有相同的键名称，则新标签的值将覆盖现有标签的值。

1. 还可以在此页面上编辑现有标签的值。

1. 添加标签后，选择**保存更改**。

## 使用 AWS SDK
<a name="bucket-tag-add-sdks"></a>

------
#### [ SDK for Java 2.x ]

此示例说明如何使用AWS SDK for Java 2.x 向通用存储桶添加标签。要使用该命令，请将{{用户输入占位符}} 替换为您自己的信息。

```
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.s3control.S3ControlClient;
import software.amazon.awssdk.services.s3control.model.Tag;
import software.amazon.awssdk.services.s3control.model.TagResourceRequest;
import software.amazon.awssdk.services.s3control.model.TagResourceResponse;

public class TagResourceExample {
    public static void tagResourceExample() {
        S3ControlClient s3Control = S3ControlClient.builder().region(Region.US_WEST_2).build();

        TagResourceRequest tagResourceRequest = TagResourceRequest.builder()
                .resourceArn("arn:aws::s3:::bucket/my-bucket")
                .accountId("111122223333")
                .tags(Tag.builder().key("MyTagKey").value("MyTagValue").build())
                .build();

        TagResourceResponse response = s3Control.tagResource(tagResourceRequest);
        System.out.println("Status code (should be 204):");
        System.out.println(response.sdkHttpResponse().statusCode());
    }
}
```

------

## 使用 REST API
<a name="bucket-tag-add-api"></a>

有关 Amazon S3 REST API 支持向通用存储桶添加标签的相关信息，请参阅《Amazon Simple Storage Service API 参考》**中的以下部分：
+ [TagResource](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_TagResource.html)

## 使用 AWS CLI
<a name="bucket-tag-add-cli"></a>

要安装 AWS CLI，请参阅《AWS Command Line Interface 用户指南》**中的[安装 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)。

以下 CLI 示例说明如何使用 AWS CLI 向通用存储桶添加标签。要使用该命令，请将{{用户输入占位符}} 替换为您自己的信息。

**请求**

```
aws s3control tag-resource --resource-arn arn:aws:s3:::amzn-s3-demo-bucket --region us-east-2 --account-id 444455556666 --tags '[{"Key":"mykey","Value":"myvalue"}]'
```