最佳实践和策略 - 标记 Amazon 资源和标签编辑器
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

最佳实践和策略

这些部分提供有关为 Amazon 资源添加标签和使用标签编辑器时的最佳做法和策略的信息。

标记最佳实践

在为 Amazon 资源创建标签策略时,请遵循最佳实践:

  • 请勿在标签中添加个人身份信息 (PII) 或其他机密或敏感信息。许多 Amazon 服务都可以访问标签,包括账单。标签不适合用于私有或敏感数据。

  • 对标签使用标准化的区分大小写格式,并跨所有资源类型一致地应用该格式。

  • 考虑支持多种用途的标签准则,如管理资源访问控制、成本跟踪、自动化和组织。

  • 运用自动化工具帮助您管理资源标签。标签编辑器和 Res ource Groups Taggin g API 支持对标签进行编程控制,从而更轻松地自动管理、搜索和筛选标签和资源。

  • 使用过多的标签而不是过少的标签。

  • 请记住,更改标签以适应不断变化的业务需求很容易,但要考虑未来更改的后果。例如,更改访问控制标签意味着您还必须更新引用这些标签并控制对资源的访问的策略。

  • 您可以通过使用 Amazon Organizations创建和部署标签策略,自动强制执行贵组织选择采用的标记标准。标签策略使您能够指定标记规则,这些规则可以定义有效密钥名称和对每个密钥有效的值。您可以选择仅监控,从而使您有机会评估和清理现有标签。一旦您的标签符合您选择的标准,您就可以在标签策略中启用强制执行,以防止创建不合规的标签。有关更多信息,请参阅《Amazon Organizations 用户指南》中的标签策略

标签命名最佳实践

以下是我们建议您在使用标签时运用的最佳实践和命名约定。

Amazon 标签的密钥名称区分大小写,因此请确保使用一致性。例如,标签密钥 CostCentercostcenter 是不同的。其中一个标签密钥可能会被配置为成本分配标签,用于财务分析和报告,而另一个标签密钥则可能没有被配置为相同用途。

许多标签是由各种人预定义 Amazon 或自动创建的 Amazon Web Services 服务。很多Amazon 生成标签的密钥名称全部使用小写字母,名称中的单词之间用连字符分隔,使用后跟冒号的前缀来标识标签的源服务。例如,请参阅以下文档:

  • aws:ec2spot:fleet-request-id是一个标识启动该实例的 Amazon EC2 竞价型实例请求的标签。

  • aws:cloudformation:stack-name 是标签,用于标识创建资源的 Amazon CloudFormation 堆栈。

  • elasticbeanstalk:environment-name 是标签,用于标识创建资源的应用程序。

考虑使用以下规则命名您的标签:

  • 单词全部小写。

  • 使用连字符分隔单词。

  • 使用后跟冒号的前缀来标识组织名称或缩写名称。

例如,对于名为的虚构公司 AnyCompany,您可以定义如下标签:

  • anycompany:cost-center 标识内部成本中心代码。

  • anycompany:environment-type 确定环境是开发、测试还是生产环境。

  • anycompany:application-id 标识为其创建资源的应用程序。

前缀可确保标签可以按照您的组织定义清晰识别,而不是由 Amazon 您可能使用的第三方工具进行识别。使用所有小写字母和连字符作为分隔符,可以避免对如何大写标签名称产生混淆。例如,anycompany:project-idANYCOMPANY:ProjectIDanycompany:projectIDAnycompany:ProjectId 更易记。

标签命名限制和要求

标签应遵循以下基本命名和使用要求:

  • 每个资源最多可以有 50 个用户创建的标签。

  • aws: 开头的系统创建标签将保留供 Amazon 使用,并且不计入此限制。您无法编辑或删除以 aws: 前缀开头的标签。

  • 对于每个资源,每个标签键都必须是唯一的,每个标签键只能有一个值。

  • 标签密钥必须至少为 1,在 UTF -8 中最多包含 128 个 Unicode 字符。

  • 标签值必须最小为 0,在 UTF -8 中最多为 256 个 Unicode 字符。

  • 允许的字符可能因 Amazon 服务而异。有关您可以使用哪些字符来标记特定 Amazon 服务中的资源的信息,请参阅其文档。通常,允许使用的字符是字母、数字、可用 UTF -8 表示的空格以及以下字符:_.:/= +-@。

  • 标签键和值区分大小写。最佳实践是,决定利用标签的策略并在所有资源类型中一致地实施该策略。例如,决定是使用 Costcentercostcenter 还是 CostCenter,以及是否对所有标签使用相同的约定。避免将类似的标签用于不一致的案例处理。

常见标签策略

可以使用以下标记策略帮助识别和管理 Amazon 资源。

资源整理标签

标签是在中组织 Amazon 资源的好方法 Amazon Web Services Management Console。您可以配置标签来与资源一起显示,并且可以按标签进行搜索和筛选。使用该 Amazon Resource Groups 服务,您可以基于一个或多个标签或部分标签创建 Amazon 资源组。您也可以根据群组在 Amazon CloudFormation 堆栈中的出现情况来创建群组。使用 Resource Groups 和标签编辑器,您可以在一个位置整合和查看由多个服务、资源和区域组成的应用程序的数据。

成本分配标签

Amazon Cost Explorer 和详细的账单报告可让您按标签细分 Amazon 成本。通常,您可以使用诸如成本中心/业务部门、客户项目之类的业务标签将 Amazon 成本与传统的成本分配维度相关联。但是,成本分配报告中可以包含任何标签。这使您可以将成本与技术或安全维度(例如特定应用程序、环境或合规性项目)关联起来。

对于某些服务,您可以使用 Amazon生成的createdBy标签进行成本分配,以帮助考虑原本可能未分类的资源。createdBy 标签仅适用于受支持的 Amazon 服务和资源。它的值包含与特定事件API或控制台事件相关的数据。有关更多信息,请参阅《Amazon Billing and Cost Management 用户指南》中的 Amazon生成的成本分配标签

自动化标签

资源或特定于服务的标签通常用于在自动化活动期间筛选资源。自动化标签用于选择加入或退出自动化任务,或识别要存档、更新或删除的资源的特定版本。例如,您可以运行自动 startstop 脚本,这些脚本可在非工作时间内关闭开发环境以降低成本。在这种情况下,Amazon Elastic Compute Cloud (AmazonEC2) 实例标签是识别要退出此操作的实例的简单方法。对于查找和删除陈旧或滚动的 Amazon EBS 快照的脚本,快照标签可以增加搜索条件的额外维度。 out-of-date

访问控制标签

IAM策略支持基于标签的条件,允许您根据特定标签或标签值限制IAM权限。例如,IAM用户或角色权限可以包括根据标签限制对特定环境(例如开发、测试或生产)的EC2API调用的条件。同样的策略可用于限制对特定亚马逊虚拟私有云 (AmazonVPC) 网络的API调用。对基于标签的资源级IAM权限的 Support 因服务而异。使用基于标签的条件进行访问控制时,请务必定义和限制谁可以修改标签。有关使用标签控制 Amazon 资源API访问权限的更多信息,请参阅《IAM用户指南》IAM与之配合使用的Amazon 服务

标签监管

有效的标记策略使用标准化标签,并以编程方式在资源之间 Amazon 以一致的方式应用这些标签。您可以使用被动和主动方法来管理 Amazon 环境中的标签。

  • 被动治理用于使用诸如资源组(Resource Groups Taggin API g)和自定义脚本之类的工具查找未正确标记的资源。 Amazon Config 规则要手动查找资源,您可以使用标签编辑器和详细账单报告。

  • 主动式治理使用诸如 Amazon CloudFormation Service Catalog Amazon Organizations、中的标签策略或IAM资源级权限之类的工具来确保在创建资源时一致地应用标准化标签。

    例如,您可以使用 Amazon CloudFormation Resource Tags属性将标签应用于资源类型。在服务目录中,您可以添加在产品启动时自动组合和应用于产品的产品组合和产品标签。更严格的主动监管形式包括自动化任务。例如,您可以使用 Resource Groups 标记API来搜索 Amazon 环境的标签,或者运行脚本来隔离或删除标记不当的资源。