Spec-Zone.ru › Elasticsearch 8
›Elasticsearch Руководство [8.17] ›Обработка контента с помощью коннекторов Elastic ›Ссылки на коннекторы

Справочник по коннектору Elastic Outlook

Подключение Elastic Outlook создано на основе фреймворка Elastic connector и доступно как самостоятельно управляемое подключение.

Справочник по управляемому подключению Elastic

Просмотреть справочник по управляемому подключению Elastic
Доступность и предварительные условия

Это подключение доступно в виде управляемого подключения (управляемая служба) в Elastic Cloud.

Это подключение совместимо с версиями Elastic 8.13.0+.

Чтобы использовать это подключение, выполните все требования к управляемым подключениям.

Создать подключение Outlook

Использование пользовательского интерфейса

Чтобы создать новое подключение Outlook:

  1. В пользовательском интерфейсе Kibana перейдите на страницу Поиск → Содержание → Подключения из главного меню или используйте поле глобального поиска.
  2. Следуйте инструкциям для создания нового подключение к Outlook.

Для дополнительных операций см. Пользовательский интерфейс подключений в Kibana.

Использование API

Вы можете использовать Elasticsearch API для создания подключения для создания нового подключения к Outlook.

Например:

resp = client.connector.put(
    connector_id="my-{service-name-stub}-connector",
    index_name="my-elasticsearch-index",
    name="Content synced from {service-name}",
    service_type="{service-name-stub}",
    is_native=True,
)
print(resp)
const response = await client.connector.put({
  connector_id: "my-{service-name-stub}-connector",
  index_name: "my-elasticsearch-index",
  name: "Content synced from {service-name}",
  service_type: "{service-name-stub}",
  is_native: true,
});
console.log(response);
PUT _connector/my-outlook-connector
{
  "index_name": "my-elasticsearch-index",
  "name": "Content synced from Outlook",
  "service_type": "outlook",
  "is_native": true
}
Вам также потребуется создать ключ API для использования подключением.

Пользователю требуются привилегии кластера manage_api_key, manage_connector и write_connector_secrets для генерации ключей API программно.

Чтобы создать ключ API для подключения:

  1. Выполните следующую команду, заменив указанные значения. Обратите внимание на возвращаемые значения id и encoded из ответа:

    resp = client.security.create_api_key(
        name="my-connector-api-key",
        role_descriptors={
            "my-connector-connector-role": {
                "cluster": [
                    "monitor",
                    "manage_connector"
                ],
                "indices": [
                    {
                        "names": [
                            "my-index_name",
                            ".search-acl-filter-my-index_name",
                            ".elastic-connectors*"
                        ],
                        "privileges": [
                            "all"
                        ],
                        "allow_restricted_indices": False
                    }
                ]
            }
        },
    )
    print(resp)
    const response = await client.security.createApiKey({
      name: "my-connector-api-key",
      role_descriptors: {
        "my-connector-connector-role": {
          cluster: ["monitor", "manage_connector"],
          indices: [
            {
              names: [
                "my-index_name",
                ".search-acl-filter-my-index_name",
                ".elastic-connectors*",
              ],
              privileges: ["all"],
              allow_restricted_indices: false,
            },
          ],
        },
      },
    });
    console.log(response);
    POST /_security/api_key
    {
      "name": "my-connector-api-key",
      "role_descriptors": {
        "my-connector-connector-role": {
          "cluster": [
            "monitor",
            "manage_connector"
          ],
          "indices": [
            {
              "names": [
                "my-index_name",
                ".search-acl-filter-my-index_name",
                ".elastic-connectors*"
              ],
              "privileges": [
                "all"
              ],
              "allow_restricted_indices": false
            }
          ]
        }
      }
    }
  2. Используйте значение encoded для хранения секрета подключения и обратите внимание на возвращаемое значение id из этого ответа:

    resp = client.perform_request(
        "POST",
        "/_connector/_secret",
        headers={"Content-Type": "application/json"},
        body={
            "value": "encoded_api_key"
        },
    )
    print(resp)
    const response = await client.transport.request({
      method: "POST",
      path: "/_connector/_secret",
      body: {
        value: "encoded_api_key",
      },
    });
    console.log(response);
    POST _connector/_secret
    {
      "value": "encoded_api_key"
    }
  3. Используйте ключ API id и секрет подключения id для обновления подключения:

    resp = client.connector.update_api_key_id(
        connector_id="my_connector_id>",
        api_key_id="API key_id",
        api_key_secret_id="secret_id",
    )
    print(resp)
    const response = await client.connector.updateApiKeyId({
      connector_id: "my_connector_id>",
      api_key_id: "API key_id",
      api_key_secret_id: "secret_id",
    });
    console.log(response);
    PUT /_connector/my_connector_id>/_api_key_id
    {
      "api_key_id": "API key_id",
      "api_key_secret_id": "secret_id"
    }

Подробную информацию обо всех доступных API для подключения см. в документации API Elasticsearch.

Использование

Чтобы использовать это подключение как управляемое подключение в Elastic Cloud, воспользуйтесь рабочим процессом Подключения в пользовательском интерфейсе Kibana.

Чтобы создать новое подключение Outlook:

  1. Перейдите на страницу Поиск → Подключения в пользовательском интерфейсе Kibana.
  2. Нажмите кнопку Создать подключение.
  3. Выберите подключение Outlook.

Для дополнительных операций см. Пользовательский интерфейс подключений в Kibana.

Подключение к Outlook

Подключение Outlook поддерживает как облачные (Office365 Outlook), так и локальные (Exchange Server) платформы.

Подключение к Exchange Server

Для подключения к Exchange Server подключение извлекает пользователей Active Directory с помощью библиотеки python ldap3.

Подключение к Office365 Outlook (облачный Outlook)

Для интеграции с подключением Outlook с помощью Azure, выполните следующие шаги для создания и настройки приложения Azure:

  1. Перейдите в портал Azure и войдите в систему, используя свои учетные данные.
  2. Нажмите на Регистрация приложений для регистрации нового приложения.
  3. Перейдите на вкладку Обзор. Запишите Client ID и Tenant ID.
  4. Нажмите на вкладку Сертификаты и секреты и создайте новый секрет клиента. Сохраните этот секрет.
  5. Перейдите на вкладку Разрешения API.

    • Нажмите "Добавить разрешения".
    • Выберите "API, используемые моей организацией".
    • Найдите и выберите "Office 365 Exchange Online".
    • Добавьте разрешение приложения full_access_as_app.

Теперь вы можете использовать полученные Client ID, Tenant ID и Client Secret для настройки подключения Outlook.

Настройка
Источник данных Outlook (обязательно)
Выпадающий список для определения типа платформы Outlook: outlook_cloud или outlook_server. Значение по умолчанию — outlook_cloud.
Tenant ID
Требуется, если источник данных — outlook_cloud. Tenant ID учетной записи Azure, на которой размещен экземпляр Outlook.
Client ID
Требуется, если источник данных — outlook_cloud. Client ID для аутентификации с экземпляром Outlook.
Значение Client Secret
Требуется, если источник данных — outlook_cloud. Значение Client Secret для аутентификации с экземпляром Outlook.
Exchange Server
Требуется, если источник данных — outlook_server. IP-адрес для подключения к Exchange Server. Пример: 127.0.0.1
Сервер Active Directory
Требуется, если источник данных — outlook_server. IP-адрес для извлечения пользователей из Exchange Active Directory для извлечения данных. Пример: 127.0.0.1
Имя пользователя Exchange Server
Требуется, если источник данных — outlook_server. Имя пользователя для аутентификации с Exchange Server.
Пароль Exchange Server
Требуется, если источник данных — outlook_server. Пароль для аутентификации с Exchange Server.
Доменное имя Exchange Server
Требуется, если источник данных — outlook_server. Доменное имя для пользователей Exchange Server, например gmail.com или exchange.local.
Включить SSL
Включить или отключить проверку SSL. Значение по умолчанию — False. Примечание: Эта настройка применима только к Outlook Server.
Сертификат SSL

Требуется, если SSL включен. Содержимое сертификата SSL. Пример сертификата:

-----BEGIN CERTIFICATE-----
MIID+jCCAuKgAwIBAgIGAJJMzlxLMA0GCSqGSIb3DQEBCwUAMHoxCzAJBgNVBAYT
...
7RhLQyWn2u00L7/9Omw=
-----END CERTIFICATE-----

Примечание: Эта настройка применима только к Outlook Server.

Безопасность на уровне документов

Переключатель для включения Безопасности на уровне документов (DLS). При включении:

  • Полные синхронизации извлекут списки управления доступом для каждого документа и сохранят их в поле _allow_access_control.
  • Синхронизации управления доступом извлекают списки управления доступом пользователей и сохраняют их в отдельном индексе.
Извлечение содержимого

См. Извлечение содержимого.

Документы и синхронизации

Подключение синхронизирует следующие объекты и сущности:

  • Письма

    • Входящие письма
    • Отправленные письма
    • Архивные письма
    • Спам-письма
  • Контакты
  • События календаря
  • Задачи
  • Вложения

    • Вложения к письмам
    • Вложения к задачам
    • Вложения к событиям календаря
  • Контент файлов размером более 10 МБ не будет извлечен. (Самоуправляемые коннекторы могут использовать локальную службу извлечения самообслуживания для обработки больших бинарных файлов.)
  • Разрешения не синхронизируются. Все документы, индексированные в развертывании Elastic, будут видны всем пользователям с доступом к этому развертыванию Elastic.
Типы синхронизации

По умолчанию для всех коннекторов поддерживаются полные синхронизации.

Этот коннектор также поддерживает инкрементальные синхронизации.

Безопасность на уровне документов

Безопасность на уровне документов (DLS) позволяет ограничить доступ к документам на основе разрешений пользователя. Обратитесь к настройкам на этой странице, чтобы узнать, как включить DLS для этого коннектора.

Обратитесь к DLS в приложениях поиска, чтобы узнать, как импортировать данные из коннектора с включенной DLS при создании приложения поиска. В примере используется SharePoint Online в качестве источника данных, но те же шаги применимы ко всем коннекторам.

Правила синхронизации

Основные правила синхронизации одинаковы для всех коннекторов и доступны по умолчанию.

Расширенные правила синхронизации

Расширенные правила синхронизации недоступны для этого коннектора в текущей версии.

Операции клиента коннектора
Конечное тестирование

Примечание: Конечное тестирование недоступно в текущей версии коннектора.

Известные проблемы

В настоящее время для этого коннектора нет известных проблем. Обратитесь к Известным проблемам для получения списка известных проблем для всех коннекторов.

Устранение неполадок

См. Устранение неполадок.

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

См. Безопасность.

Фреймворк и исходный код

Этот коннектор написан на Python с использованием фреймворка Elastic connector.

Просмотреть исходный код этого коннектора (ветка 8.17, совместимая с Elastic 8.17).

Справочник по самоуправляемому коннектору

Просмотреть справочник по самоуправляемому коннектору
Доступность и предварительные требования

Этот коннектор доступен как самостоятельный самостоятельный коннектор. Для использования этого коннектора выполните все предварительные требования к самостоятельному коннектору.

Создать коннектор Outlook

Использование пользовательского интерфейса

Чтобы создать новый коннектор Outlook:

  1. В пользовательском интерфейсе Kibana перейдите на страницу Поиск → Содержание → Коннекторы из основного меню или используйте поле глобального поиска.
  2. Следуйте инструкциям для создания нового коннектора Outlook с самостоятельным управлением.

Использование API

Вы можете использовать Elasticsearch API создания коннектора, чтобы создать новый самостоятельный коннектор Outlook с самостоятельным управлением.

Например:

resp = client.connector.put(
    connector_id="my-{service-name-stub}-connector",
    index_name="my-elasticsearch-index",
    name="Content synced from {service-name}",
    service_type="{service-name-stub}",
)
print(resp)
const response = await client.connector.put({
  connector_id: "my-{service-name-stub}-connector",
  index_name: "my-elasticsearch-index",
  name: "Content synced from {service-name}",
  service_type: "{service-name-stub}",
});
console.log(response);
PUT _connector/my-outlook-connector
{
  "index_name": "my-elasticsearch-index",
  "name": "Content synced from Outlook",
  "service_type": "outlook"
}
Вам также потребуется создать ключ API для использования коннектором.

Пользователю необходимы права кластера manage_api_key, manage_connector и write_connector_secrets для программированного генерации ключей API.

Чтобы создать ключ API для коннектора:

  1. Выполните следующую команду, заменив указанные значения. Обратите внимание на encoded возвращаемые значения из ответа:

    resp = client.security.create_api_key(
        name="connector_name-connector-api-key",
        role_descriptors={
            "connector_name-connector-role": {
                "cluster": [
                    "monitor",
                    "manage_connector"
                ],
                "indices": [
                    {
                        "names": [
                            "index_name",
                            ".search-acl-filter-index_name",
                            ".elastic-connectors*"
                        ],
                        "privileges": [
                            "all"
                        ],
                        "allow_restricted_indices": False
                    }
                ]
            }
        },
    )
    print(resp)
    const response = await client.security.createApiKey({
      name: "connector_name-connector-api-key",
      role_descriptors: {
        "connector_name-connector-role": {
          cluster: ["monitor", "manage_connector"],
          indices: [
            {
              names: [
                "index_name",
                ".search-acl-filter-index_name",
                ".elastic-connectors*",
              ],
              privileges: ["all"],
              allow_restricted_indices: false,
            },
          ],
        },
      },
    });
    console.log(response);
    POST /_security/api_key
    {
      "name": "connector_name-connector-api-key",
      "role_descriptors": {
        "connector_name-connector-role": {
          "cluster": [
            "monitor",
            "manage_connector"
          ],
          "indices": [
            {
              "names": [
                "index_name",
                ".search-acl-filter-index_name",
                ".elastic-connectors*"
              ],
              "privileges": [
                "all"
              ],
              "allow_restricted_indices": false
            }
          ]
        }
      }
    }
  2. Обновите свой файл config.yml со значением ключа API encoded.

Подробные сведения обо всех доступных API коннекторов см. в документации API Elasticsearch.

Использование

Для использования этого коннектора как самостоятельного коннектора используйте плитку Outlook из списка коннекторов ИЛИ рабочие процессы настроенного коннектора.

Дополнительные операции см. в Пользовательском интерфейсе коннекторов в Kibana.

Подключение к Outlook

Коннектор Outlook поддерживает как облачные (Office365 Outlook), так и локальные (Exchange Server) платформы.

Подключение к Exchange Server

Для подключения к серверу Exchange коннектор извлекает пользователей Active Directory с помощью библиотеки Python ldap3.

Подключение к Office365 Outlook (облачный Outlook)

Для интеграции с коннектором Outlook с помощью Azure выполните эти шаги для создания и настройки приложения Azure:

  1. Перейдите в Портал Azure и выполните вход с помощью своих учетных данных.
  2. Нажмите Регистрации приложений, чтобы зарегистрировать новое приложение.
  3. Перейдите на вкладку Обзор. Запишите Client ID и Tenant ID.
  4. Перейдите на вкладку Сертификаты и секреты и создайте новый секрет клиента. Сохраните этот секрет.
  5. Перейдите на вкладку Разрешения API.

    • Нажмите «Добавить разрешения».
    • Выберите «API, используемые моей организацией».
    • Найдите и выберите «Office 365 Exchange Online».
    • Добавьте разрешение приложения full_access_as_app.

Теперь вы можете использовать идентификатор клиента, идентификатор клиента и секрет клиента, которые вы записали, для настройки коннектора Outlook.

Настройка
data_source
(обязательно) Выпадающий список для определения типа платформы Outlook: outlook_cloud или outlook_server. Значение по умолчанию — outlook_cloud.
tenant_id
(обязательно, если источник данных — outlook_cloud) Идентификатор клиента Azure, на котором размещен экземпляр Outlook.
client_id
(обязательно, если источник данных — outlook_cloud) Идентификатор клиента для аутентификации с экземпляром Outlook.
client_secret
(обязательно, если источник данных — outlook_cloud) Значение секрета клиента для аутентификации с экземпляром Outlook.
exchange_server
(обязательно, если источник данных — outlook_server) IP-адрес для подключения к серверу Exchange. Пример: 127.0.0.1
active_directory_server
(обязательно, если источник данных — outlook_server) IP-адрес для извлечения пользователей из Exchange Active Directory для извлечения данных. Пример: 127.0.0.1
username
(обязательно, если источник данных — outlook_server) Имя пользователя для аутентификации с сервером Exchange.
password
(обязательно, если источник данных — outlook_server) Пароль для аутентификации с сервером Exchange.
domain
(обязательно, если источник данных — outlook_server) Имя домена для пользователей сервера Exchange, таких как gmail.com или exchange.local.
ssl_enabled
Включить проверку SSL. Значение по умолчанию — False. Примечание: Эта настройка применима только для Outlook Server.
ssl_ca

(обязательно, если ssl включен) Содержимое сертификата SSL. Пример сертификата:

-----BEGIN CERTIFICATE-----
MIID+jCCAuKgAwIBAgIGAJJMzlxLMA0GCSqGSIb3DQEBCwUAMHoxCzAJBgNVBAYT
...
7RhLQyWn2u00L7/9Omw=
-----END CERTIFICATE-----
use_text_extraction_service
Использовать самостоятельно размещенную службу извлечения данных. Значение по умолчанию — False.
document_level_security

Переключатель для включения безопасности на уровне документов (DLS). При включении:

  • Полные синхронизации извлекут списки управления доступом для каждого документа и сохранят их в поле _allow_access_control.
  • Синхронизации списков управления доступом извлекут списки управления доступом пользователей и сохранят их в отдельном индексе.

Примечание: Эта настройка применима только для Outlook Server.

Развертывание с помощью Docker

Вы можете развернуть коннектор Outlook как самостоятельный коннектор с помощью Docker. Следуйте этим инструкциям.

Шаг 1: Скачать файл с образцом конфигурации

Скачайте файл с образцом конфигурации. Вы можете скачать его вручную или выполнить следующую команду:

curl https://raw.githubusercontent.com/elastic/connectors/main/config.yml.example --output ~/connectors-config/config.yml

Не забудьте обновить значение аргумента --output, если имя вашего каталога отличается или вы хотите использовать другое имя файла конфигурации.

Шаг 2: Обновить файл конфигурации для вашего самостоятельного коннектора

Обновите файл конфигурации следующими настройками, чтобы соответствовать вашей среде:

  • elasticsearch.host
  • elasticsearch.api_key
  • connectors

Если вы запускаете службу коннектора на Docker-изображении Elasticsearch и Kibana, ваш файл конфигурации будет выглядеть так:

# When connecting to your cloud deployment you should edit the host value
elasticsearch.host: http://host.docker.internal:9200
elasticsearch.api_key: <ELASTICSEARCH_API_KEY>

connectors:
  -
    connector_id: <CONNECTOR_ID_FROM_KIBANA>
    service_type: outlook
    api_key: <CONNECTOR_API_KEY_FROM_KIBANA> # Optional. If not provided, the connector will use the elasticsearch.api_key instead

Использование elasticsearch.api_key — рекомендуемый метод аутентификации. Однако вы также можете использовать elasticsearch.username и elasticsearch.password для аутентификации с вашим экземпляром Elasticsearch.

Примечание: Вы можете изменить другие настройки по умолчанию, просто раскомментировав определенные настройки в файле конфигурации и изменив их значения.

Шаг 3: Запустить Docker-образ

Запустите Docker-образ с помощью службы коннектора, используя следующую команду:

docker run \
-v ~/connectors-config:/config \
--network "elastic" \
--tty \
--rm \
docker.elastic.co/enterprise-search/elastic-connectors:8.17.3 \
/app/bin/elastic-ingest \
-c /config/config.yml

Дополнительные сведения см. в DOCKER.md в репозитории elastic/connectors.

Найдите все доступные Docker-образы в официальном реестре.

У нас также есть быстрый способ самостоятельной настройки с помощью Docker Compose, позволяющий сразу запустить все необходимые службы: Elasticsearch, Kibana и службу коннекторов. Дополнительную информацию см. в README в репозитории elastic/connectors.

Извлечение содержимого

См. извлечение содержимого.

Документы и синхронизация

Коннектор синхронизирует следующие объекты и сущности:

  • Почтовые сообщения

    • Входящие сообщения
    • Отправленные сообщения
    • Архивированные сообщения
    • Спам-сообщения
  • Контакты
  • События календаря
  • Задачи
  • Вложения

    • Вложения к почтовым сообщениям
    • Вложения к задачам
    • Вложения к событиям календаря
  • Содержимое файлов размером более 10 МБ по умолчанию не будет извлекаться. Вы можете использовать локальную службу извлечения содержимого, чтобы обработать большие двоичные файлы.
  • Разрешения не синхронизируются. Все документы, индексированные в развертывании Elastic, будут видны всем пользователям с доступом к этому развертыванию.
Типы синхронизации

Полные синхронизации поддерживаются по умолчанию для всех коннекторов.

Этот коннектор также поддерживает инкрементные синхронизации.

Безопасность на уровне документа

Безопасность на уровне документа (DLS) позволяет ограничивать доступ к документам на основе разрешений пользователя. Обратитесь к настройкам на этой странице, чтобы включить DLS для этого коннектора.

Обратитесь к DLS в приложениях поиска, чтобы узнать, как импортировать данные из коннектора с включенной DLS при создании приложения поиска. В примере используется SharePoint Online в качестве источника данных, но те же шаги применимы ко всем коннекторам.

Правила синхронизации

Основные правила синхронизации одинаковы для всех коннекторов и доступны по умолчанию.

Расширенные правила синхронизации

Расширенные правила синхронизации недоступны для этого коннектора в текущей версии.

Операции клиента коннектора
Конечные тесты

Примечание: Конечные тесты недоступны в текущей версии коннектора.

Известные проблемы

В настоящее время для этого коннектора нет известных проблем. Обратитесь к Известным проблемам для получения списка известных проблем для всех коннекторов.

Отладка

См. Отладку.

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

См. Безопасность.

Фреймворк и исходный код

Этот коннектор входит в фреймворк коннекторов Elastic.

Просмотреть исходный код этого коннектора (ветка 8.17, совместимая с Elastic 8.17).

© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/8.17/es-connectors-outlook.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API