电子邮件连接器和操作

编辑

电子邮件连接器和操作

编辑

电子邮件连接器使用 SMTP 协议发送邮件消息。电子邮件消息文本以纯文本和 HTML 文本形式发送。

  • 要使电子邮件包含指向 Kibana 的页脚链接,请设置 server.publicBaseUrl 配置设置。
  • 当使用 xpack.actions.email.domain_allowlist 配置设置时,用于所有“发件人(来自)”、“收件人”、“抄送”和“密送”属性的电子邮件地址必须具有配置设置中指定的电子邮件域。

在 Kibana 中创建连接器

编辑

您可以在 堆栈管理 > 连接器 中创建连接器,也可以在创建规则时根据需要创建。例如

Email connector
连接器配置
编辑

电子邮件连接器具有以下配置属性

名称
连接器的名称。该名称用于在管理 UI 连接器列表中或在配置操作时连接器列表中标识连接器。
发件人
使用此连接器发送的所有电子邮件的“发件人”地址。必须以 user@host-name 格式指定。有关更多信息,请参阅 Nodemailer 地址文档
服务
电子邮件服务的名称。如果 service 是 Nodemailer 的知名电子邮件服务提供商之一,则 hostportsecure 属性将使用默认值定义,并且禁用修改。如果 serviceMS Exchange Server,则 hostportsecure 属性将被忽略,并且需要 tenantIdclientIdclientSecret。如果 serviceother,则必须定义 hostport 属性。
主机
服务提供商的主机名。如果您正在使用 xpack.actions.allowedHosts 设置,请确保将此主机名添加到允许的主机中。
端口
要连接到服务提供商的端口。
安全
如果为 true,则连接到服务提供商时将使用 TLS。有关更多信息,请参阅 Nodemailer TLS 文档。如果为 false,则连接将首先通过 TCP 连接,然后尝试通过 SMTP STARTTLS 命令切换到 TLS。
租户 ID
应用程序计划针对其运行的目录租户,采用 GUID 格式。
客户端 ID
分配给您的应用程序的应用程序 ID,采用 GUID 格式。您可以在注册应用程序的门户中找到此信息。
客户端密钥
您在应用程序注册门户中为应用程序生成的客户端密钥。客户端密钥在发送之前必须进行 URL 编码。还支持每个 RFC 6749 在授权标头中提供凭据的基本身份验证模式。
需要身份验证
如果为 true,则必须提供登录类型身份验证的用户名和密码。
用户名
登录类型身份验证的用户名。
密码
登录类型身份验证的密码。

测试连接器

编辑

您可以在 Kibana 中创建或编辑连接器时测试连接器。例如

Email params test

电子邮件操作具有以下配置属性。

收件人、抄送、密送
每个项目都是一个地址列表。地址可以 user@host-name 格式指定,也可以 name <user@host-name> 格式指定。“收件人”、“抄送”或“密送”中必须包含一个条目。
主题
电子邮件的主题行。
消息
电子邮件的消息文本。支持 Markdown 格式。

连接器网络配置

编辑

使用 操作配置设置 来自定义连接器网络配置,例如代理、证书或 TLS 设置。您可以设置适用于所有连接器的配置,或使用 xpack.actions.customHostSettings 设置每个主机的配置。

配置知名服务的电子邮件帐户

编辑

电子邮件连接器使用 Nodemailer 的集成从许多流行的 SMTP 电子邮件服务发送电子邮件。对于 Microsoft Exchange 电子邮件,它使用 Microsoft Graph API。

对于其他电子邮件服务器,您可以检查 Nodemailer 在 JSON 文件 well-known/services.json 中支持的知名服务列表。这些文件中对象的属性——hostportsecure——与相同的电子邮件连接器配置属性相对应。“well-known/services.json”文件中缺少的 secure 属性被视为 false。通常,port: 465 使用 secure: true,而 port: 25port: 587 使用 secure: false

Elastic Cloud
编辑

使用预配置的电子邮件连接器 (Elastic-Cloud-SMTP) 从 Elastic Cloud 发送电子邮件。

有关预配置电子邮件连接器的更多信息,请参阅 Elastic Cloud 电子邮件服务限制

Gmail
编辑

要创建从 Gmail SMTP 服务发送电子邮件的连接器,请将 服务 设置为 Gmail

如果您收到身份验证错误,指示您需要在操作尝试发送电子邮件时从 Web 浏览器继续登录过程,则需要将 Gmail 配置为 允许安全性较低的应用程序访问您的帐户

如果为您的帐户启用了两步验证,则必须生成并使用唯一的应用密码才能从 Kibana 发送电子邮件。有关更多信息,请参阅 使用应用密码登录

Outlook.com
编辑

要创建从 Outlook.com SMTP 服务发送电子邮件的连接器,请将 服务 设置为 Outlook

发送电子邮件时,必须提供 from 地址,可以是连接器配置中的默认地址,也可以是规则中电子邮件操作的一部分。

如果启用了两步验证,则必须使用唯一的应用密码。有关更多信息,请参阅 应用密码和两步验证

Amazon SES
编辑

要创建从 Amazon Simple Email Service (SES) SMTP 服务发送电子邮件的连接器,请将 服务 设置为 Amazon SES

您必须使用您的 Amazon SES SMTP 凭据才能通过 Amazon SES 发送电子邮件。有关更多信息,请参阅 获取您的 Amazon SES SMTP 凭据。您可能还需要在 AWS 上验证 您的电子邮件地址您的整个域

使用基本身份验证的 Microsoft Exchange
编辑

[7.16.0] 在 7.16.0 中已弃用。此 Microsoft Exchange 配置已弃用,稍后将被删除,因为 Microsoft 正在弃用基本身份验证。

要为删除基本身份验证做好准备,您必须使用基于 OAuth 2.0 客户端凭据身份验证的新配置更新所有现有的 Microsoft Exchange 连接器。

使用 OAuth 2.0 的 Microsoft Exchange
编辑

电子邮件连接器使用 Microsoft Graph REST API v1.0,特别是 sendMail 端点。它仅支持 Microsoft Graph 全局服务根端点 (https://graph.microsoft.com)。

在为 Microsoft Exchange 创建电子邮件连接器之前,您必须在 Azure 门户上创建并注册客户端集成应用程序。

Register client application for MS Exchange

接下来,打开 管理 > API 权限,然后定义已注册的应用程序发送电子邮件的权限。请参阅 Microsoft Graph API 的 文档

MS Exchange API permissions

为 Microsoft Graph 添加“Mail.Send”权限。该权限在列表中显示,状态为“未授予 <您的 Azure 活动目录>”

MS Exchange "Mail.Send" not granted

单击 授予 <您的 Azure 活动目录> 的管理员同意

MS Exchange grant confirmation

确认“Mail.Send”权限的状态现在已授予。

MS Exchange grant confirmation
配置 Microsoft Exchange 客户端密钥
编辑

要配置 Microsoft Exchange 客户端密钥,请打开 管理 > 证书和机密

MS Exchange secrets configuration

添加新的客户端密钥,然后复制该值并将其放入 Microsoft Exchange 电子邮件连接器中的相应字段。

配置 Microsoft Exchange 客户端和租户标识符
编辑

要查找 Microsoft Exchange 客户端和租户 ID,请打开 概述 页面

MS Exchange Client ID and Tenant ID configuration

创建一个连接器并将 服务 设置为 MS Exchange Server。将值复制并粘贴到相应的字段中。