1 Автоматизированные типы медиа для Gmail/Office365

Обзор

Пользователи Gmail или Office365 могут воспользоваться автоматизированными возможностями в настройке типа оповещения.

Конфигурация

Поле Поставщик электронной почты в конфигурации типа медиа позволяет выбрать предварительно настроенные варианты для Gmail и Office 365.

При выборе вариантов, связанных с Gmail/Office365, для создания рабочего типа медиа требуется указать только адрес электронной почты отправителя/пароль.

Как только адрес электронной почты/пароль указаны, Zabbix сможет автоматически заполнить все необходимые настройки для типов медиа Gmail/Office365 актуальными/рекомендуемыми значениями, а именно: SMTP server, SMTP server port, SMTP helo и Connection security. Благодаря этой автоматизации эти поля даже не отображаются, однако можно увидеть SMTP-сервер и сведения об электронной почте в списке типов медиа (см. столбец Details).

Также обратите внимание:

  • Для вариантов relay пароль не требуется.
  • Для Office365 relay доменное имя указанного адреса электронной почты будет использоваться для динамического заполнения SMTP-сервера (то есть, замены "example.com" в example-com.mail.protection.outlook.com на реальное значение).

Токены OAuth

Получение токенов OAuth имеет автоматизированные возможности для почтовых провайдеров Gmail, Gmail relay и Office365.

Для получения доступа OAuth и токена обновления необходимо указать только ограниченный набор параметров — Redirection endpoint, Client ID и Client secret. Zabbix автоматически заполнит остальные необходимые значения (см. URL OAuth по умолчанию в зависимости от провайдера).

Обратите внимание, что для настройки авторизации OAuth для этих провайдеров также можно использовать форму Generic SMTP.

SmtpClientAuthentication должен быть включен либо для каждого пользователя/общего почтового ящика, либо для всего арендатора в Office365 (по умолчанию не включен).

Значения OAuth URL по умолчанию в зависимости от провайдера

В следующей таблице перечислены значения OAuth URL и параметры по умолчанию для каждого провайдера, используемые Zabbix.

Параметр Gmail Office365 Generic SMTP
Конечная точка авторизации https://accounts.google.com/o/oauth2/v2/auth https://login.microsoftonline.com/common/oauth2/v2.0/authorize Нет значения по умолчанию
scope https://mail.google.com https://outlook.office.com/SMTP.Send, offline_access Нет значения по умолчанию
access_type offline Не используется Нет значения по умолчанию
prompt consent Не используется Нет значения по умолчанию
redirect_uri Значение поля Redirection endpoint автоматически добавляется кодом. Не указано в параметрах Authorization endpoint.
state Уникальный хеш для идентификации способа оповещения, обновляемого с помощью OAuth-токена, автоматически добавляется кодом. Не указан в параметрах Authorization endpoint.
Конечная точка токена https://oauth2.googleapis.com/token https://login.microsoftonline.com/common/oauth2/v2.0/token Нет значения по умолчанию
grant_type authorization_code authorization_code Нет значения по умолчанию
redirect_uri Значение поля Redirection endpoint автоматически добавляется кодом. Не указано в параметрах Token endpoint.
state Уникальный хеш для идентификации способа оповещения, обновляемого с помощью OAuth-токена, автоматически добавляется кодом. Не указан в параметрах Token endpoint.

Обходное решение Office365 для личных учетных записей

Личные учетные записи Office365 не поддерживают строки запроса в URL перенаправления.

Чтобы обойти эту проблему, администратор веб-сервера Apache может добавить следующее правило rewrite в файл .htaccess:

RewriteEngine On
RewriteRule ^/oauth\.authorize$ /zabbix.php?action=oauth.authorize [QSA,L,PT]

Это позволяет использовать упрощенный URL перенаправления, например:

http://server-name/zabbix/oauth.authorize

вместо URL с параметрами запроса, обеспечивая совместимость с личными учетными записями Office365.