# Отправка электронной почты с помощью OAuth 2.0 в QlikView

QlikView может отправлять электронную почту через Microsoft Graph с использованием OAuth 2.0 с Microsoft 365. OAuth 2.0 — это дополнительный метод подключения почты; существующая конфигурация SMTP остается доступной.

Если выбран OAuth 2.0, QlikView не подключается напрямую к SMTP-серверу. Он получает токен доступа от `login.microsoftonline.com` и отправляет электронную почту через REST API Microsoft Graph по адресу `graph.microsoft.com/v1.0/users/{sender}/sendMail`.

## Предварительные требования

Перед настройкой QlikView зарегистрируйте приложение в Microsoft Entra ID:

1. Войдите на портал Azure и перейдите в раздел Microsoft Entra ID &gt; Регистрация приложений &gt; Новая регистрация.
2. Зарегистрируйте приложение.
3. В разделе Сертификаты и секреты создайте секрет клиента и скопируйте его значение. Значение отображается только один раз.
4. В разделе Разрешения API добавьте разрешение приложения Microsoft Graph Mail.Send.
5. Предоставьте согласие администратора для разрешения.
6. Запишите идентификатор приложения (клиента) и идентификатор каталога (клиента).

Приложение должно иметь разрешение Mail.Send для почтового ящика, используемого в качестве отправителя.

## Безопасность

QlikView шифрует Tenant ID, Client ID и Client Secret перед их сохранением. Учетные данные не хранятся в виде открытого текста.

## Тестирование почты OAuth 2.0

Используйте элемент управления test-mail на странице конфигурации:

* В QlikView Desktop нажмите Test на странице User Preferences &gt; Mail.
* В консоли управления QlikView введите адрес в поле Отправить тестовое электронное письмо на адрес и нажмите Отправить.

QlikView получает токен OAuth 2.0 и отправляет тестовое письмо через Microsoft Graph. Если шаг завершается сбоем, просмотрите сообщение об ошибке.

## Вложенные файлы

Когда QlikView отправляет электронные письма с вложениями, вложения включаются в запрос Microsoft Graph как встроенный контент, закодированный в Base64. Размер каждого вложения ограничен 3 МБ. Для файлов большего размера используйте другой способ доставки.

## Поиск и устранение неисправностей

| Ошибка | Причина | Разрешение |
| --- | --- | --- |
| `OAuth 2.0 Client ID, Tenant ID, and Client Secret are required.` | Одно или несколько полей OAuth не заполнены. | Убедитесь, что на странице настроек почты заполнены все три поля. |
| `OAuth token request failed: AADSTS7000215` | Секрет клиента недействителен. | Сгенерируйте новый секрет клиента в Microsoft Entra ID и обновите QlikView. |
| `OAuth token request failed: AADSTS700016` | Идентификатор приложения (клиента) указан неверно или приложение не существует в указанном клиенте. | Проверьте идентификатор приложения (клиента) и идентификатор каталога (клиента). |
| `Graph sendMail failed: ErrorAccessDenied` | У приложения нет разрешения `Mail.Send`, или не было предоставлено согласие администратора. | Добавьте разрешение приложения `Mail.Send` и предоставьте согласие администратора в Microsoft Entra ID. |
| `Graph sendMail failed: ErrorItemNotFound` | Адрес отправителя не соответствует действительному почтовому ящику в клиенте. | Убедитесь, что адрес отправителя соответствует существующему почтовому ящику Microsoft 365. |
| `Attachment too large` | Вложенный файл превышает встроенный лимит в 3 МБ. | Уменьшите размер файла или используйте другой способ доставки. |