

# 使用成本分配 S3 存储桶标签
<a name="CostAllocTagging"></a>

要跟踪单个项目或项目组的存储成本或其他标准，请使用成本分配标签标记您的 Amazon S3 存储桶。*成本分配标签*是与 S3 存储桶相关联的键-值对。在激活成本分配标签后，Amazon 将使用这些标签在成本分配报告上整理您的资源成本。成本分配标签只能用于标记存储桶。有关用于标记对象的标签的信息，请参阅[使用标签对对象进行分类](object-tagging.md)。

*成本分配报告*会按产品分类和关联的账户用户列出您账户的 Amazon 使用量。该报告包含与详细账单报告相同的行项目 (请参阅[了解 Amazon S3 的 Amazon 账单和使用情况报告](aws-usage-report-understand.md)) 和用于您的标签键的附加列。

Amazon 提供了两种类型的成本分配标签，即 Amazon 生成的标签和用户定义的标签。Amazon 在 Amazon S3 CreateBucket 事件之后为您定义、创建和应用 Amazon 生成的 `createdBy` 标签。您定义、创建*用户定义的* 标签并将其应用到 S3 存储桶。

必须在账单和成本管理控制台中分别激活这两种类型的标签，然后它们才能出现在账单报告中。有关 Amazon 生成的标签的更多信息，请参阅 [Amazon 生成的成本分配标签](https://docs.amazonaws.cn/awsaccountbilling/latest/aboutv2/aws-tags.html)。

有关激活标签的更多信息，请参阅《*Amazon Billing 用户指南*》中的[使用成本分配标签](https://docs.amazonaws.cn/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html)。

**用户定义的成本分配标签**  
用户定义的成本分配标签有以下组成部分：
+ 标签键。标签键是标签的名称。例如，在标签 project/Trinity 中，project 是键。标记键是一个区分大小写的字符串，它可以包含 1 到 128 个 Unicode 字符。
+ 标签值。标签值是必需的字符串。例如，在标签 project/Trinity 中，Trinity 是值。标记值是一个区分大小写的字符串，它可以包含 0 到 256 个 Unicode 字符。

有关用户定义的标签的允许字符以及其他限制的详细信息，请参阅《*Amazon Billing 用户指南*》中的[用户定义的标签限制](https://docs.amazonaws.cn/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html)。有关用户定义的标签的更多信息，请参阅《*Amazon Billing 用户指南*》中的[用户定义的成本分配标签](https://docs.amazonaws.cn/awsaccountbilling/latest/aboutv2/custom-tags.html)。

**S3 存储桶标签**  
每个 S3 存储桶都有一个标签集。*标签集*包含了分配到该存储桶的所有标签。一个标签集可以包含多达 50 个标签，也可以为空。键在标签集中必须是唯一的，但标签集中的值不必是唯一的。例如，您可以在名为 project/Trinity 和 cost-center/Trinity 的标签集中使用相同的值。

在存储桶内，如果您要添加的标签与现有标签的键相同，则新值会覆盖旧值。

Amazon不会对您的标签应用任何语义意义。我们严格按字符串解释标签。

要添加、列出、编辑或删除标签，您可以使用 Amazon S3 控制台、Amazon Command Line Interface (Amazon CLI) 或 Amazon S3 API。

## 管理通用存储桶的标签
<a name="working-with-tags-gpb"></a>

可以使用 Amazon S3 控制台、Amazon 命令行界面（CLI）、Amazon SDK 或 S3 API 为通用存储桶添加或管理标签。有关更多信息，请参阅下列内容。

**使用 Amazon S3 控制台**  
要在控制台中创建标签，请参阅：
+ [查看 S3 通用存储桶的属性](view-bucket-properties.md).

**使用 API**  
要使用 Amazon S3 API 管理标签，请参阅《Amazon Simple Storage Service API Reference》**中的以下 API 页面。
+ [PutBucketTagging](https://docs.amazonaws.cn/AmazonS3/latest/API/API_PutBucketTagging.html)
+ [GetBucketTagging](https://docs.amazonaws.cn/AmazonS3/latest/API/API_GetBucketTagging.html)
+ [DeleteBucketTagging](https://docs.amazonaws.cn/AmazonS3/latest/API/API_DeleteBucketTagging.html)

**注意**  
启用 ABAC 后，`PutBucketTagging` 或 `DeleteBucketTagging` 操作将不再起作用，而是改为使用 `TagResource` 和 `UntagResource` API 在存储桶上添加或删除标签。建议您在存储桶上启用 ABAC 之前，使用 `TagResource` 和 `UntagResource` API 来管理标签事宜。要了解有关 ABAC 的更多信息，请参阅[在通用存储桶中启用 ABAC](buckets-tagging-enable-abac.md)。

**使用 CLI**  
要使用 Amazon CLI 管理标签，请参阅《Amazon CLI Command Reference》中的以下页面。
+ [put-bucket-tagging](https://docs.amazonaws.cn/cli/latest/reference/s3api/put-bucket-tagging.html)
+ [get-bucket-tagging](https://docs.amazonaws.cn/cli/latest/reference/s3api/get-bucket-tagging.html)
+ [delete-bucket-tagging](https://docs.amazonaws.cn/cli/latest/reference/s3api/delete-bucket-tagging.html)

## 更多信息
<a name="CostAllocTagging-more-info"></a>
+ 《*Amazon Billing 用户指南*》中的[使用成本分配标签](https://docs.amazonaws.cn/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html)
+ [了解 Amazon S3 的 Amazon 账单和使用情况报告](aws-usage-report-understand.md)
+ [Amazon S3 的 Amazon Billing报告](aws-billing-reports.md)