本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
为 Amazon Cognito 资源贴标签
标签是您或 Amazon 分配给 Amazon 资源的元数据标签。每个标签均包含一个键 和一个值。对于您分配的标签,需要定义键和值。例如,您可以将键定义为 stage
,将一个资源的值定义为 test
。
标签可帮助您:
-
标识和整理您的 Amazon 资源。许多 Amazon 服务支持标签,因此,您可以将同一标签分配给来自不同服务的资源,以指示这些资源是相关的。这有助于您指示哪些资源是相关的。例如,您可以将相同的标签分配给您分配至 Amazon DynamoDB 表的 Amazon Cognito 用户池。
-
跟踪您的 Amazon 成本。您可以在 Amazon Billing and Cost Management 控制面板上激活标签。Amazon 使用成本分配标签对您的成本进行分类,并向您提供每月成本分配报告。有关更多信息,请参阅《Amazon Billing 用户指南》中的使用成本分配标签。
-
根据分配给资源的标签控制对资源的访问。您可以通过在 Amazon Identity and Access Management(IAM)策略的条件中指定标签键和值来控制访问权限。例如,您可以允许用户更新用户群体,但前提是该用户群体具有
owner
标签且值为该用户的名称。有关更多信息,请参阅《IAM 用户指南》中的使用标签控制访问。
您可以使用 Amazon Command Line Interface 或 Amazon Cognito API 来添加、编辑或删除用户池和身份池的标签。您还可以使用 Amazon Cognito 控制台来管理用户池的标签。
有关使用标签的提示,请参阅 Amazon Answers 博客上的 Amazon tagging strategies
以下各部分提供有关 Amazon Cognito 标签的更多信息。
Amazon Cognito 中支持的资源
Amazon Cognito 中的以下资源支持贴标签:
-
用户池
-
身份池
标签限制
以下限制适用于 Amazon Cognito 资源上的标签:
-
您可以分配给资源的最大标签数量 - 50
-
最大密钥长度 – 128 个 Unicode 字符
-
最大值长度 – 256 个 Unicode 字符
-
键和值的有效字符 – a-z、A-Z、0-9、空格和以下字符:_ . : / = + - 和 @
-
键和值区分大小写
-
请不要使用
aws:
作为键的前缀;它保留为供 Amazon 使用
使用 Amazon Cognito 控制台管理标签
您可以使用 Amazon Cognito 控制台来管理分配给您的用户池的标签。
将标签添加到用户池
-
导航到 Amazon Cognito 控制台
。如果出现提示,请输入 Amazon 凭证。 -
选择 User Pools(用户池)。
-
从列表中选择一个现有用户池,或创建一个用户池。
-
选择 User pool properties(用户池属性)选项卡并找到 Tags(标签)。
-
选择 Add tags(添加标签)即可添加您的第一个标签。如果您之前已将标签分配给此用户池,请在 Manage tags(管理标签)中选择 Add another(添加其它)。
-
为 Tag key(标签键)和 Tag value(标签值)指定值。
-
对于每个要添加的其它标签,请选择 Add another(添加其它)。
-
添加完标签后,选择 Save changes(保存更改)。
在 Manage tags(管理标签)页面上,您还可以编辑任何现有标签的键和值。要删除标签,请选择 Remove(删除)。
Amazon CLI 示例
Amazon CLI 提供帮助您管理分配给 Amazon Cognito 用户池和身份池的标签。
分配标签
使用以下命令可将标签分配给现有的用户池和身份池。
例 适用于用户池的 tag-resource
命令
使用 cognito-idp
命令集中的 tag-resource
将标签分配给用户池:
$
aws cognito-idp tag-resource \>
--resource-arnuser-pool-arn
\>
--tagsStage=Test
此命令包含以下参数:
-
resource-arn
- 您向其应用标签的用户池的 Amazon Resource Name(ARN)。要查找 ARN,请在 Amazon Cognito 控制台中选择该用户池,并查看 General settings(常规设置)选项卡上的 Pool ARN(池 ARN)值。 -
tags
– 以格式
表示的标签的键值对。key
=value
要一次分配多个标签,请以逗号分隔的列表形式指定它们:
$
aws cognito-idp tag-resource \>
--resource-arnuser-pool-arn
\>
--tagsStage=Test,CostCenter=80432,Owner=SysEng
例 适用于身份池的 tag-resource
命令
使用 cognito-identity
命令集中的 tag-resource
将标签分配给身份池:
$
aws cognito-identity tag-resource \>
--resource-arnidentity-pool-arn
\>
--tagsStage=Test
此命令包含以下参数:
-
resource-arn
- 您向其应用标签的身份池的 Amazon Resource Name(ARN)。要查找 ARN,请在 Amazon Cognito 控制台中选择身份池,并选择 Edit identity pool (编辑身份池)。然后,在 Identity pool ID(身份池 ID)中,选择 Show ARN(显示 ARN)。 -
tags
– 以格式
表示的标签的键值对。key
=value
要一次分配多个标签,请以逗号分隔的列表形式指定它们:
$
aws cognito-identity tag-resource \>
--resource-arnidentity-pool-arn
\>
--tagsStage=Test,CostCenter=80432,Owner=SysEng
查看标签
使用以下命令可查看您已分配给用户池和身份池的标签。
例 适用于用户池的 list-tags-for-resource
命令
使用 cognito-idp
命令集中的 list-tags-for-resource
查看分配给用户池的标签:
$
aws cognito-idp list-tags-for-resource --resource-arnuser-pool-arn
例 适用于身份池的 list-tags-for-resource
命令
使用 cognito-identity
命令集中的 list-tags-for-resource
查看分配给身份池的标签:
$
aws cognito-identity list-tags-for-resource --resource-arnidentity-pool-arn
删除标签
使用以下命令从用户池和身份池中删除标签。
例 适用于用户池的 untag-resource
命令
使用 cognito-idp
命令集中的 untag-resource
删除用户池中的标签:
$
aws cognito-idp untag-resource \>
--resource-arnuser-pool-arn
\>
--tag-keysStage CostCenter Owner
对于 --tag-keys
参数,请指定一个或多个标签键。请勿包含标签值。用空格分隔键。
例 适用于身份池的 untag-resource
命令
使用 cognito-identity
命令集中的 untag-resource
删除身份池中的标签:
$
aws cognito-identity untag-resource \>
--resource-arnidentity-pool-arn
\>
--tag-keysStage CostCenter Owner
对于 --tag-keys
参数,请指定一个或多个标签键。请勿包含标签值。
重要
删除用户或身份池后,与已删除池相关的标签在删除后的 30天内仍然可以在控制台或 API 调用中显示。
在创建资源时应用标签
使用以下命令可在创建用户池或身份池时分配标签。
例 create-user-pool
命令以及标签
当您使用 create-user-pool
命令创建用户时,您可以使用 --user-pool-tags
参数指定标签:
$
aws cognito-idp create-user-pool \>
--pool-nameuser-pool-name
\>
--user-pool-tagsStage=Test,CostCenter=80432,Owner=SysEng
标签的键值对必须采用格式
。如果要添加多个标签,请以逗号分隔的列表形式指定它们。key
=value
例 create-identity-pool
命令以及标签
当您使用 create-identity-pool
命令创建用户池时,您可以使用 --identity-pool-tags
参数指定标签:
$
aws cognito-identity create-identity-pool \>
--identity-pool-nameidentity-pool-name
\>
--allow-unauthenticated-identities \>
--identity-pool-tagsStage=Test,CostCenter=80432,Owner=SysEng
标签的键值对必须采用格式
。如果要添加多个标签,请以逗号分隔的列表形式指定它们。key
=value
使用 Amazon Cognito API 管理标签
您可以在 Amazon Cognito API 中使用以下操作来管理用户池和身份池的标签。
适用于用户池标签的 API 操作
使用以下 API 操作来分配、查看和删除用户池的标签。
适用于身份池标签的 API 操作
使用以下 API 操作来分配、查看和删除身份池的标签。