如何通过 Amazon Simple Notification Service 发送警报?
主页 / 知识库 / 如何通过 Amazon Simple Notification Service 发送警报?

我可以向 SNS 主题发布警报吗?

Q: 是否可以通过 Amazon SNS 发送警报?

A: 是的; 下面解释了一种可能的实现方式。

一、Amazon SNS(Simple Notification Service)简介

Amazon SNS(简单通知服务)是一种 Web 服务,用于协调和管理向订阅端点(客户端)发送或传送消息。 用户定义所谓的 SNS 主题(逻辑访问点),并定义哪些订阅者可以接收消息。 各种通信协议(AWS Lambda、AWS Simple Queue Service、SMS、HTTP/S 或电子邮件)允许定义对任何特定监控事件的任意复杂反应。

注意:假设阅读本文档的人能够设置 SNS 主题并通过 AWS IAM(身份和访问管理)定义用户(访问凭证)以将消息发布到 SNS 话题。

有关如何执行此操作的分步说明超出了本文的范围; 请参考上面提到的链接和相应的在线文档。

下面我们提供有关从 IPHost 网络监视器警报发布到 SNS 主题的分步说明。

2. 从alert发帖到SNS话题的说明

2.1. 安装 AWS 命令行界面实用程序

请按照相应的在线手册在运行 IPHost Network Monitor 的系统上安装 AWS 命令行实用程序。

安装时使用默认设置。 在下面的示例中,我们假设您使用的是 64 位 Windows 系统。 否则,请根据需要更换安装路径(即使用“C:\Program Files (x86)”而不是“C:\Program Files”)。

您可能希望将 AWS CLI 二进制文件安装路径(默认情况下为“C:\Program Files\Amazon\AWSCLI\bin\aws.exe”)添加到系统 PATH(这些说明不需要这样做)。

2.2. 创建 IAM 凭证以发布到 SNS 主题

从 AWS 管理控制台登录后,继续 IAM 仪表板并创建对相应 SNS 主题具有“发布”访问权限的用户。 为它生成访问密钥和秘密访问密钥,并将两者都写下来。

请注意,预定义策略“AmazonSNSFullAccess”非常适合测试/快速启动,但出于安全原因,我们建议仅允许“发布”访问某些 SNS 主题。请注意,预定义策略“AmazonSNSFullAccess”非常适合测试/快速启动 ,但出于安全原因,我们建议仅允许“发布”访问某些 SNS 主题。

单个 SNS 主题“发布”访问策略的 JSON 定义可能如下所示

{
       "Version": "2012-10-17",
       "Statement": [
              {
               "Effect": "Allow",
               "Action": "sns: Publish",
               "Resource": "arn:aws:sns:us-east-1:12345456778:test"
              }
        ]
}

其中“资源”是相应主题的 ARN。 您可以通过从 SNS 仪表板中选择相应的主题来找到 ARN(不要使用上面的示例 ARN)。

注意:此时,您应该准备好四个参数:

  • SNS 主题 ARN(其 AWS 标识符)
  • 提供 SNS 主题的 AWS 区域
  • AWS 访问密钥
  • AWS 秘密访问密钥
京公网安备 11010802041237号    |    备案号:京ICP备09015132号-1011