AWS Chatbot 常见问题

一般性问题

AWS Chatbot 是一种交互式座席,可让您轻松地在 Amazon ChimeMicrosoft TeamsSlack 频道中设置适用于 AWS 的 ChatOps,并与多个 AWS 服务安全交互。您可以在聊天室中接收有关操作事件、安全发现或预算警报的通知,您的整个团队可以在聊天室中查看和讨论这些通知。您可以从 Microsoft Teams 和 Slack 频道发出 AWS 命令行界面(CLI)命令,以检索诊断信息、调用 AWS Lambda 函数、配置 Amazon Simple Storage Service (S3) 存储桶、更改 Kinesis 分片、重新启动 Amazon Elastic Compute Cloud (EC2) 实例,以及解决 AWS System Manager 事件。

您可以收到来自 AWS 服务的通知,如 CloudWatch 告警、运行状况事件、Security Hub 检测结果、Budgets 提醒,以及 CloudFormation 堆栈事件。 您还可以收到 Amazon EventBridge 支持的大多数 AWS 服务事件的通知。有关支持的服务的完整列表,请参阅 AWS Chatbot 文档

AWS Chatbot 支持大多数 AWS 服务的只读和变化 CLI 命令。AWS Chatbot 不支持与凭证、授权和 AWS Identity and Access Management (IAM) 权限相关的服务和操作命令,如 IAM、STS、KMS 和 EC2.GetPasswordData。此外,您可以指定防护机制策略权限,定义频道中的可用命令。AWS Chatbot 命令使用大家熟悉的 AWS CLI 语法。要键入命令,请键入“@aws <command>”,在消息中提到 AWS Chatbot。 AWS Chatbot 将提供命令线索,如果使用的语法错误,将提示您需要的其他命令参数。

要开始使用 AWS Chatbot,请转到 AWS Chatbot 控制台,为 Microsoft Teams、Slack 或 Chime 创建配置,并将 AWS Chatbot 添加到频道或聊天室。

AWS Chatbot 可帮助您的整个团队随时了解 AWS 环境中运行的应用程序的操作事件、安全发现或预算警报并对其作出响应和解决。如果使用 AWS Chatbot 支持的聊天应用程序,则可以将 AWS Chatbot 配置为在团队频道或聊天室中发布通知并运行命令,以便您的整个团队可以查看这些通知并快速采取行动。例如,您可以设置 CloudWatch 告警,进入“Cloud DevOps”聊天频道,DevOps 工程师可以在其中查看告警,发生事件后立刻检索诊断信息,讨论迁移计划,通过从聊天频道配置 AWS 资源或运行 AWS Systems Manager 运行手册来解决告警。

AWS Chatbot 是预构建的交互式座席,设计用于监控、操作您的 AWS 资源(ChatOps)并与之交互。借助 AWS Chatbot,您可以安全地接收警报,从 Amazon CloudWatch 和 AWS GuardDuty 等服务请求诊断信息,并通过运行 CLI 命令(如执行 AWS System Manager 运行手册,或增加 Microsoft Teams 或 Slack 频道中 AWS Lambda 并行限制的命令)来解决事件。

Amazon Lex 提供高级深度学习功能,包括用于语音文本转换的自动语音识别(ASR)和自然语言理解(NLU),可识别意图并构建逼真交互。这可以让您快速和轻松构建自己复杂的自然语言对话机器人。

AWS 聊天机器人不额外收费。您仅为用于 AWS Chatbot 的 AWS 资源付费,例如 Amazon Simple Notification Service (SNS) 主题或 Amazon CloudWatch 告警。

您可以使用 AWS CloudFormation 预置 Microsoft Teams 和 Slack 频道配置。当前不支持使用 AWS CloudFormation 预置 Chime webhook 配置。

AWS Chatbot 是一项全球服务,可用于所有商业 AWS 区域。您可以在单个 AWS Chatbot 配置中组合来自多个区域的 Amazon SNS 主题。有关可用性的详细信息,请访问 AWS 区域产品和服务表

AWS Chatbot 是一项全球性服务,我们可以在任何商业 AWS 区域存储或处理客户信息,如 Chatbot 配置与权限、Microsoft Teams 团队标识符、Slack 工作区标识符和频道名称、通知、用户输入和 AWS Chatbot 生成的响应与图像。

您可以联系 AWS Support,请求删除用于分析的数据,提高账户相关服务的质量。您的信任、隐私与数据安全性是我们最重视的问题,我们会采取适当并且先进的技术和物理控制措施(包括静态和动态加密)来防止他人未经授权访问或披露您的数据,并确保我们依照对您的承诺使用您的内容。有关更多信息,请参阅 https://thinkwithwp.com/compliance/data-privacy-faq/。 

如果选择不使用数据改进和提高 AWS Chatbot 以及其他 Amazon 机器学习/人工智能技术的质量,将从所有 AWS 区域移除您的数据。有关如何选择退出的更多信息,请联系 AWS Support。

聊天客户端集成

AWS Chatbot 支持 Microsoft Teams、Slack 和 Amazon Chime。目前仅 Microsoft Teams 和 Slack 支持运行命令。

AWS Chatbot 通过 Webhook 与 Amazon Chime 集成。

AWS Chatbot 使用 AWS Chatbot for Microsoft Teams 应用程序(可在 Microsoft Teams 中安装)与 Microsoft Teams 集成。您在 AWS Chatbot 控制台中创建 Microsoft Teams 频道配置,并授权 AWS Chatbot 向已配置的频道发送通知以及在聊天频道中处理 AWS 命令。安装是通过浏览器中的点击式流或使用 AWS CloudFormation 模板执行的,需要几分钟才能完成设置。

AWS Chatbot 通过 AWS Chatbot Slack 应用程序与 Slack 集成,您可以从 AWS Chatbot 控制台将该应用程序安装到 Slack 工作区。安装是通过浏览器中的点击式 OAuth 2.0 流执行的,只需几秒钟即可完成。

AWS Chatbot 配置是 Microsoft Teams 频道、Slack 频道或 Amazon Chime 聊天室与 Amazon SNS 主题和具有相关防护机制策略的 AWS IAM 角色的映射。

来自 AWS 服务的通知

AWS Chatbot 通过 Amazon SNS 主题与支持的 AWS 服务集成。您需要将服务配置为将通知发布到 SNS 主题,然后创建将主题映射到 Amazon Chime、Microsoft Teams 或 Slack 频道的 AWS Chatbot 配置。

要从具有 AWS Chatbot 的支持的服务接收 EventBridge 事件通知,请使用 Amazon SNS 主题作为 EventBridge 事件规则的目标,然后在 AWS Chatbot 配置中使用该主题。EventBridge 接收与规则定义的事件模式匹配的事件后,事件规则触发,将事件通知发送到配置的聊天频道。有关支持的服务的完整列表,请参阅 AWS Chatbot 文档

单击通知的标题以导航到 AWS 管理控制台页面以获取通知源。例如,如果您单击 AWS Budgets 通知上的标题,您将进入该特定预算的详细信息页面,可以在其中查看并分析预算绩效。

不可以。AWS Chatbot 仅支持文档中列出的服务的通知。来自不受支持的来源的活动将不会发送到聊天频道。Amazon EventBridge 事件通知发送到聊天频道,带有原始事件消息内容。如果修改此消息内容(如使用 EventBridge InputTransformers),AWS Chatbot 无法将任意通知发送到您的聊天频道。

不可以。只能使用托管 AWS Chatbot 配置的 AWS 账户的 SNS 主题。但是,您可以在其他 AWS 账户中创建 Chatbot 配置,将这些配置映射到一个聊天室。由于每个 AWS Chatbot 配置链接到单独的 AWS 账户,因此配置将彼此独立。或者,您可以使用一个 AWS Chatbot 配置和一个 Amazon SNS 主题,接收 Amazon Chime、Microsoft Teams 和 Slack 频道中 AWS 账户与区域之间的 EventBridge 事件通知。有关接收 AWS 账户与区域之间的 EventBridge 事件通知的更多信息,请参阅 AWS Chatbot 文档。

符合。您可以在同一 AWS Chatbot 配置中使用来自多个公共 AWS 区域的 SNS 主题。

您可以使用 Amazon SNS 筛选策略或 Amazon CloudWatch 事件规则筛选有关支持筛选的事件的通知。对于其他事件,筛选不可用。

不可以,无法自定义 AWS Chatbot 通知的格式。

是的,AWS Chatbot 受 Microsoft Teams、Slack 和 Amazon Chime 的速率限制。有关详细信息,请参阅 Microsoft Teams 开发人员文档Slack Web API 文档Amazon Chime Webhook 文档

AWS Chatbot 支持 Amazon EventBridge 处理的 AWS 服务事件的通知。如果 AWS Chatbot 当前不支持您需要的服务,将无法用于 AWS Chatbot。请使用 AWS Chatbot 控制台页脚中的“反馈”按钮提交请求以供考虑。

要从通知取消订阅频道或聊天室,可以移除相应配置。如果您只想取消订阅频道或聊天室中的某些通知,则可以从 AWS Chatbot 配置中移除特定的 Amazon SNS 主题。

您可以在 Amazon CloudWatch 指标和日志中看到通知尝试和失败的详细信息。有关故障排除的更多详细信息,请参阅 AWS Chatbot 文档

运行命令和操作

要在 Microsoft Teams 或 Slack 频道中运行命令,请先使用 AWS Chatbot 控制台创建频道配置。要开始在 Microsoft Teams 或 Slack 中与 AWS Chatbot 进行交互,请键入“@aws”,然后输入使用标准 AWS CLI 语法的命令。例如,要获取 CloudWatch 告警的列表和图表,请键入“@aws cloudwatch describe-alarms”。您可以在 Microsoft Teams 和 Slack 频道中运行只读和变化 CLI 命令。请参阅 AWS Chatbot 文档,了解与 AWS CLI 相比的限制。如果不记得命令语法,AWS Chatbot 将提供命令线索,要求提供需要的其他命令参数,完成命令。

AWS Chatbot 支持大多数 AWS 服务的命令,其权限范围由 AWS Chatbot 配置中使用的 IAM 角色和频道 IAM policy 防护机制定义。无论 IAM 角色权限如何,都将禁用对某些服务和命令(例如 IAM 和 AWS Key Management Service (KMS))的访问,以防止在聊天频道中公开凭证。请参阅 AWS Chatbot 文档,了解有关权限的详细信息。

直接消息目前不受支持。您可以创建一个仅包含您自己及 AWS Chatbot 的私有频道,并将其用作直接消息通信的频道。

消息操作是快捷方式,通过单击 AWS Chatbot 发送的通知和消息上的按钮,可以快速执行操作。例如,针对 Lambda 函数和 API Gateway 阶段的 CloudWatch 告警通知具有“Show Logs”(显示日志)和“Show Error Logs”(显示错误日志)按钮,这些按钮将在聊天频道中显示受影响资源的日志。

目前,你可以在 Microsoft Teams 和 Slack 中使用命令和操作。

安全性

AWS Chatbot 配置使用该服务在代表 AWS Chatbot 用户进行 API 调用和运行命令时承担的 IAM 角色。可以对分区频道 IAM 角色或单个用户 IAM 角色设置 AWS Chatbot 权限范围。对于分区频道角色,所有频道成员使用共享 IAM 角色运行命令。或者,可以配置 AWS Chatbot 要求频道成员选择 IAM 角色以运行命令。权限范围由频道防护机制 IAM 策略进一步控制。请参阅 AWS Chatbot 文档,了解有关权限的详细信息。 

有关详细信息,请参阅 AWS Chatbot 文档。 

AWS Chatbot 提供其在 CloudWatch Logs 中执行的命令的审计日志。该日志包含执行的命令及其聊天工作区 ID、频道 ID 和频道用户 ID 属性。CloudWatch Logs 中的审计日志始终启用,无法禁用。有关详细信息,请参阅 AWS Chatbot 文档