在 Lambda 函数上使用标签 - Amazon Lambda
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

在 Lambda 函数上使用标签

您可以标记 Amazon Lambda 函数以激活基于属性的访问权限控制 (ABAC) 并按所有者、项目或部门组织它们。标签是自由格式的键值对,在 Amazon 服务中受支持,可用于 ABAC、筛选资源和向账单报告添加详细信息

标签应用在函数级别,而不是应用于版本或别名。标签不会包含在您发布版本时 Lambda 创建快照的版本特定配置的快照中。

使用标签所需的权限

为使用该函数的人员授予 Amazon Identity and Access Management (IAM) 身份(用户、组或角色)的适当权限:

  • lambda: ListTags — 当函数有标签时,请向任何需要调用GetFunctionListTags调用它的人授予此权限。

  • lambda: TagResource — 向需要致电CreateFunctionTagResource的任何人授予此权限。

有关更多信息,请参阅Lambda 的基于身份的 IAM policy

通过 Lambda 控制台使用标签

您可以使用 Lambda 控制台创建具有标签的函数、向现有函数添加标签以及按添加的标签筛选函数。

要在创建函数时添加标签
  1. 打开 Lamba 控制台的 Functions page(函数页面)。

  2. 选择 Create function(创建函数)。

  3. 选择 Author from scratch(从头开始编写)或 Container image(容器映像)。

  4. Basic information(基本信息)中,执行以下操作:

    1. 对于 Function name(函数名称),输入函数名称。函数名称的长度限制为 64 个字符。

    2. 对于Runtime(运行时),请选择函数使用的语言版本。

    3. (可选)对于架构,选择要用于您的函数的指令集架构。默认架构为 x86_64。为您的函数构建部署包时,请确保它与您选择的指令集架构兼容。

  5. 展开 Advanced settings(高级设置),然后选择 Enable tags(启用标签)。

  6. 选择 Add new tag(添加新标签),然后输入 Key(键)和可选 Value(值)。要添加更多标签,请重复此步骤。

  7. 选择 Create function(创建函数)。

要将标签添加到现有函数
  1. 打开 Lamba 控制台的函数页面

  2. 选择一个函数的名称。

  3. 选择 Configuration(配置),然后选择 Tags(标签)。

  4. 标签下,选择管理标签

  5. 选择 Add new tag(添加新标签),然后输入 Key(键)和可选 Value(值)。要添加更多标签,请重复此步骤。

    
              在 Lambda 控制台中为函数添加标签。
  6. 选择 Save(保存)。

使用标签过滤函数
  1. 打开 Lamba 控制台的函数页面

  2. 选择搜索栏以查看函数属性和标签键。

    
              函数搜索栏中的标签。
  3. 选择一个标签键以查看当前 Amazon 区域中正在使用的值的列表。

  4. 选择一个值以查看具有该值的函数,或者选择 (all values)(所有值)查看具有含有此键的标签的所有函数。

    
              按标签值筛选。

搜索栏还支持搜索标签键。输入 tag 以仅查看标签键列表,或输入键的名称以在列表中查找它。

通过 Amazon CLI 使用标签

添加和删除标签

要使用标签创建新的 Lambda 函数,请使用 create-function 命令及 --tags 选项。

aws lambda create-function --function-name my-function --handler index.js --runtime nodejs20.x \ --role arn:aws:iam::123456789012:role/lambda-role \ --tags Department=Marketing,CostCenter=1234ABCD

要将标签添加到现有函数,请使用 tag-resource 命令。

aws lambda tag-resource \ --resource arn:aws:lambda:us-east-2:123456789012:function:my-function \ --tags Department=Marketing,CostCenter=1234ABCD

要删除标签,请使用 untag-resource 命令。

aws lambda untag-resource --resource arn:aws:lambda:us-east-1:123456789012:function:my-function \ --tag-keys Department

查看函数上的标签

如果要查看应用于特定 Lambda 函数的标签,则可以使用以下任一 Amazon CLI 命令:

  • ListTags— 要查看与此函数关联的标签列表,请包括您的 Lambda 函数 ARN(亚马逊资源名称):

    aws lambda list-tags --resource arn:aws:lambda:us-east-1:123456789012:function:my-function
  • GetFunction— 要查看与此函数关联的标签列表,请附上您的 Lambda 函数名称:

    aws lambda get-function --function-name my-function

按标签筛选函数

您可以使用 Amazon Resource Groups Tagging API GetResourcesAPI 操作按标签筛选资源。GetResources 操作最多可接收 10 个筛选条件,每个筛选条件包含一个标签键和最多 10 个标签值。提供具有 ResourceTypeGetResources,可按特定资源类型进行筛选。

有关 Amazon Resource Groups 服务的更多信息,请参阅《Amazon Resource Groups 和标签用户指南》中的什么是资源组?

标签的要求

以下要求适用于标签:

  • 每个资源的最大标签数:50

  • 最大键长度:128 个 Unicode 字符(采用 UTF-8 格式)

  • 最大值长度:256 个 Unicode 字符(采用 UTF-8 格式)

  • 标签键和值区分大小写。

  • 请勿在标签名称或值中使用 aws: 前缀,因为它专为 Amazon 使用预留。您无法编辑或删除带此前缀的标签名称或值。具有此前缀的标签不计入每个资源的标签数限制。

  • 如果计划在多个服务和资源中使用添加标签方案,请记得其他服务可能对允许使用的字符有其他限制。通常允许使用的字符包括:可用 UTF-8 格式表示的字母、空格和数字以及特殊字符 + - = . _ : / @。