Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅
中国的 Amazon Web Services 服务入门
(PDF)。
本页向您介绍如何使用 Amazon Web Services Management Console、Amazon SDK 和 Amazon CLI 为 Amazon SNS 主题配置标签。
请勿在标签中添加个人身份信息(PII)或其他机密或敏感信息。标签可供许多其他亚马逊云科技访问,包括计费。标签不适合用于私有或敏感数据。
登录 Amazon SNS 控制台。
-
在导航面板上,选择主题。
-
在主题页面上,选择主题,然后选择编辑。
-
展开标签部分。
将列出添加到主题的标签。
-
修改主题标签:
-
选择保存更改。
使用 Amazon SDK 将标签添加到主题
要使用 Amazon SDK,您必须使用您的凭证对其进行配置。有关更多信息,请参阅 Amazon 开发工具包和工具参考指南中的共享配置和凭证文件。
以下代码示例演示如何使用 TagResource
。
- CLI
-
- Amazon CLI
-
为主题添加标签
以下 tag-resource
示例将元数据标签添加到指定 Amazon SNS 主题。
aws sns tag-resource \
--resource-arn arn:aws:sns:us-west-2:123456789012:MyTopic
\
--tags Key=Team,Value=Alpha
此命令不生成任何输出。
- Java
-
- 适用于 Java 的 SDK 2.x
-
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.sns.SnsClient;
import software.amazon.awssdk.services.sns.model.SnsException;
import software.amazon.awssdk.services.sns.model.Tag;
import software.amazon.awssdk.services.sns.model.TagResourceRequest;
import java.util.ArrayList;
import java.util.List;
/**
* Before running this Java V2 code example, set up your development
* environment, including your credentials.
*
* For more information, see the following documentation topic:
*
* https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/get-started.html
*/
public class AddTags {
public static void main(String[] args) {
final String usage = """
Usage: <topicArn>
Where:
topicArn - The ARN of the topic to which tags are added.
""";
if (args.length != 1) {
System.out.println(usage);
System.exit(1);
}
String topicArn = args[0];
SnsClient snsClient = SnsClient.builder()
.region(Region.US_EAST_1)
.build();
addTopicTags(snsClient, topicArn);
snsClient.close();
}
public static void addTopicTags(SnsClient snsClient, String topicArn) {
try {
Tag tag = Tag.builder()
.key("Team")
.value("Development")
.build();
Tag tag2 = Tag.builder()
.key("Environment")
.value("Gamma")
.build();
List<Tag> tagList = new ArrayList<>();
tagList.add(tag);
tagList.add(tag2);
TagResourceRequest tagResourceRequest = TagResourceRequest.builder()
.resourceArn(topicArn)
.tags(tagList)
.build();
snsClient.tagResource(tagResourceRequest);
System.out.println("Tags have been added to " + topicArn);
} catch (SnsException e) {
System.err.println(e.awsErrorDetails().errorMessage());
System.exit(1);
}
}
}
- Kotlin
-
- 适用于 Kotlin 的 SDK
-
suspend fun addTopicTags(topicArn: String) {
val tag =
Tag {
key = "Team"
value = "Development"
}
val tag2 =
Tag {
key = "Environment"
value = "Gamma"
}
val tagList = mutableListOf<Tag>()
tagList.add(tag)
tagList.add(tag2)
val request =
TagResourceRequest {
resourceArn = topicArn
tags = tagList
}
SnsClient { region = "us-east-1" }.use { snsClient ->
snsClient.tagResource(request)
println("Tags have been added to $topicArn")
}
}
要使用 Amazon SNS API 管理标签,请使用以下 API 操作:
支持 ABAC 的 API 操作
以下是支持基于属性的访问控制 (ABAC) 的 API 操作列表。有关 ABAC 的更多详细信息,请参阅 IAM 用户指南中的什么是 Amazon 的 ABAC?。