Spec-Zone.ru › Elasticsearch 8
›Руководство по Elasticsearch [8.17] ›Ввод контента с помощью подключений Elastic ›Справочная информация по подключениям

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

Подключение Elastic OneDrive — это подключение для OneDrive. Это подключение написано на Python с использованием фреймворка подключений Elastic.

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

Выберите справочную информацию по подключению

Вы используете управляемое подключение в Elastic Cloud или самостоятельное подключение? Разверните документацию в зависимости от метода развертывания.

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

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

Этот коннектор доступен в качестве управляемого коннектора начиная с версии Elastic 8.11.0.

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

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

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

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

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

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

Использовать API

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

Например:

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-onedrive-connector
{
  "index_name": "my-elasticsearch-index",
  "name": "Content synced from OneDrive",
  "service_type": "onedrive",
  "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 Elasticsearch для получения подробной информации обо всех доступных API коннекторов.

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

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

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

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

Для подключения к OneDrive вам нужно создать приложение и службу-принципал Azure Active Directory, которые могут получить доступ к ресурсам.

Выполните следующие шаги:

  1. Перейдите на портал Azure и войдите в систему с помощью своей учетной записи Azure.
  2. Перейдите к службе Azure Active Directory.
  3. Выберите Регистрации приложений в левом меню.
  4. Нажмите кнопку Новая регистрация, чтобы зарегистрировать новое приложение.
  5. Укажите имя приложения и (необязательно) выберите поддерживаемые типы учетных записей (например, однодоменные, многодоменные).
  6. Нажмите кнопку Зарегистрировать, чтобы создать регистрацию приложения.
  7. После завершения регистрации вы будете перенаправлены на страницу обзора приложения. Запишите значение Идентификатор приложения (клиента), оно вам понадобится позже.
  8. Прокрутите вниз до раздела Разрешения API и нажмите кнопку Добавить разрешение.
  9. В окне Запрос разрешений API выберите Microsoft Graph как API.
  10. Выберите разрешения приложения и выберите следующие разрешения на вкладке Приложение: User.Read.All, File.Read.All
  11. Нажмите кнопку Добавить разрешения, чтобы добавить выбранные разрешения к вашему приложению. Наконец, нажмите кнопку Предоставить согласие администратора, чтобы предоставить необходимые разрешения приложению. Этот шаг требует прав администратора. ПРИМЕЧАНИЕ: если вы не являетесь администратором, вам необходимо попросить администратора предоставить согласие через портал Azure.
  12. Нажмите на вкладку Сертификаты и секреты. Перейдите к Раздел Секреты клиента. Сгенерируйте новый секрет клиента и сохраните строку, присутствующую в столбце Value.
Конфигурация

Следующие поля конфигурации обязательны:

Идентификатор клиента приложения Azure

Уникальный идентификатор вашего приложения Azure, найденный на странице обзора приложения. Пример:

  • ab123453-12a2-100a-1123-93fd09d67394
Секрет клиента приложения Azure

Строковое значение, которое приложение использует для подтверждения своей личности при запросе токена, доступно на вкладке Certificates & Secrets меню вашего приложения Azure. Пример:

  • eyav1~12aBadIg6SL-STDfg102eBfCGkbKBq_Ddyu
Идентификатор клиента приложения Azure

Уникальный идентификатор вашей учетной записи Azure Active Directory. Пример:

  • 123a1b23-12a3-45b6-7c8d-fc931cfb448d
Включить безопасность на уровне документов

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

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

Включение DLS для вашего коннектора приведет к значительному снижению производительности, так как API-вызовы к источнику данных, необходимые для этой функции, ограничены по частоте. Это влияет на скорость получения вашего контента.

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

См. Извлечение содержимого для получения дополнительной информации.

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

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

  • Файлы

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

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

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

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

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

Дополнительную информацию о данной функции см. в разделе безопасности на уровне документов.

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

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

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

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

Этот коннектор поддерживает расширенные правила синхронизации для удалённой фильтрации. Эти правила охватывают сложные сценарии запросов и фильтрации, которые невозможно выразить с помощью базовых правил синхронизации. Расширенные правила синхронизации определяются с помощью специфичного для источника фрагмента DSL JSON.

Для того чтобы расширенные правила синхронизации вступили в силу, требуется полная синхронизация.

Ниже приведены несколько примеров расширенных правил синхронизации для этого коннектора.

Пример 1

Это правило пропускает индексирование файлов с расширениями .xlsx и .docx. Все остальные файлы и папки будут проиндексированы.

[
  {
    "skipFilesWithExtensions": [".xlsx" , ".docx"]
  }
]

Пример 2

Это правило фокусируется на индексировании файлов и папок, принадлежащих user1-domain@onmicrosoft.com и user2-domain@onmicrosoft.com, но исключает файлы с расширением .py.

[
  {
    "owners": ["user1-domain@onmicrosoft.com", "user2-domain@onmicrosoft.com"],
    "skipFilesWithExtensions": [".py"]
  }
]

Пример 3

Это правило индексирует только файлы и папки, находящиеся непосредственно внутри корневой папки, исключая любые файлы .md.

[
  {
    "skipFilesWithExtensions": [".md"],
    "parentPathPattern": "/drive/root:"
  }
]

Пример 4

Это правило индексирует файлы и папки, принадлежащие user1-domain@onmicrosoft.com и user3-domain@onmicrosoft.com, которые находятся непосредственно внутри папки abc, являющейся подпапкой любой папки в каталоге hello в корне. Исключаются файлы с расширениями .pdf и .py.

[
  {
    "owners": ["user1-domain@onmicrosoft.com", "user3-domain@onmicrosoft.com"],
    "skipFilesWithExtensions": [".pdf", ".py"],
    "parentPathPattern": "/drive/root:/hello/**/abc"
  }
]

Пример 5

Этот пример содержит два правила. Первое правило индексирует все файлы и папки, принадлежащие пользователям user1-domain@onmicrosoft.com и user2-domain@onmicrosoft.com. Второе правило индексирует файлы всех остальных пользователей, но пропускает файлы с расширением .py.

[
  {
    "owners": ["user1-domain@onmicrosoft.com", "user2-domain@onmicrosoft.com"]
  },
  {
    "skipFilesWithExtensions": [".py"]
  }
]

Пример 6

Этот пример содержит два правила. Первое правило индексирует все файлы, принадлежащие user1-domain@onmicrosoft.com и user2-domain@onmicrosoft.com, исключая файлы .md. Второе правило рекурсивно индексирует файлы и папки внутри папки abc.

[
  {
    "owners": ["user1-domain@onmicrosoft.com", "user2-domain@onmicrosoft.com"],
    "skipFilesWithExtensions": [".md"]
  },
  {
    "parentPathPattern": "/drive/root:/abc/**"
  }
]
Извлечение содержимого

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

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

    Включение DLS для вашего коннектора приведет к существенному снижению производительности, так как API-вызовы к источнику данных, необходимые для этой функциональности, имеют ограничения по скорости. Это влияет на скорость получения вашего содержимого.

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

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

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

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

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

Коннектор с собственным управлением

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

Этот коннектор доступен как самостоятельный самостоятельный коннектор.

Этот самостоятельный коннектор совместим с версиями Elastic 8.10.0+.

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

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

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

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

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

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

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

Например:

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-onedrive-connector
{
  "index_name": "my-elasticsearch-index",
  "name": "Content synced from OneDrive",
  "service_type": "onedrive"
}
Вам также потребуется создать ключ 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.

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

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

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

Для подключения к OneDrive необходимо создать приложение и управляющего принципала Azure Active Directory, которые могут получать доступ к ресурсам.

Выполните следующие действия:

  1. Перейдите на портал Azure и войдите в систему с помощью вашей учетной записи Azure.
  2. Перейдите к службе Azure Active Directory.
  3. Выберите Регистрации приложений в левом меню.
  4. Нажмите кнопку Новая регистрация, чтобы зарегистрировать новое приложение.
  5. Введите имя для приложения и необязательно выберите поддерживаемые типы учетных записей (например, единый арендатор, многоарендатор).
  6. Нажмите кнопку Зарегистрировать, чтобы создать регистрацию приложения.
  7. После завершения регистрации вы будете перенаправлены на страницу обзора приложения. Запомните значение Идентификатор приложения (клиента), так как вам потребуется позже.
  8. Прокрутите вниз до раздела Разрешения API и нажмите кнопку Добавить разрешение.
  9. В области Запрос разрешений API выберите Microsoft Graph в качестве API.
  10. Выберите разрешения приложения и выберите следующие разрешения на вкладке Приложение: User.Read.All, File.Read.All
  11. Нажмите кнопку Добавить разрешения, чтобы добавить выбранные разрешения к вашему приложению. Наконец, нажмите кнопку Предоставить согласие администратора, чтобы предоставить требуемые разрешения приложению. Этот шаг требует административных привилегий. ПРИМЕЧАНИЕ: если вы не являетесь администратором, вам необходимо запросить согласие администратора через их портал Azure.
  12. Нажмите на вкладку Сертификаты и секреты. Перейдите к Клиентским секретам. Сгенерируйте новый секрет клиента и запишите строку, присутствующую в столбце Value.
Развертывание с помощью Docker

Самостоятельные коннекторы выполняются на вашей собственной инфраструктуре.

Вы можете развернуть коннектор OneDrive как самостоятельный коннектор с помощью 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: onedrive
    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 для получения дополнительной информации.

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

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

client_id

Идентификатор клиента приложения Azure, уникальный идентификатор вашего приложения Azure, найденный на странице обзора приложения. Пример:

  • ab123453-12a2-100a-1123-93fd09d67394
client_secret

Секрет клиента приложения Azure, строковое значение, используемое приложением для подтверждения своей личности при запросе маркера. Доступно на вкладке Certificates & Secrets меню вашего приложения Azure. Пример:

  • eyav1~12aBadIg6SL-STDfg102eBfCGkbKBq_Ddyu
tenant_id

Идентификатор клиента приложения Azure: уникальный идентификатор вашего экземпляра Azure Active Directory. Пример:

  • 123a1b23-12a3-45b6-7c8d-fc931cfb448d
retry_count
Количество попыток повторной отправки запроса после неудачного запроса к OneDrive. Значение по умолчанию равно 3.
use_document_level_security

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

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

    Включение DLS для вашего коннектора приведет к существенному снижению производительности, так как API-запросы к источнику данных, необходимые для этой функциональности, ограничены по скорости. Это влияет на скорость получения вашего содержимого.

use_text_extraction_service
Требует отдельного развертывания службы извлечения текста Elasticsearch. Требует, чтобы настройки конвейера загрузки отключали извлечение текста. Значение по умолчанию равно False.
Извлечение контента

Для получения более подробной информации обратитесь к Извлечению контента.

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

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

  • Файлы

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

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

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

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

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

Для получения более подробной информации об этой функции обратитесь к безопасности на уровне документов.

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

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

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

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

Этот подключенный модуль поддерживает расширенные правила синхронизации для удаленного фильтрации. Эти правила охватывают сложные сценарии запросов и фильтрации, которые не могут быть выражены с помощью базовых правил синхронизации. Расширенные правила синхронизации определяются с помощью специфичного для источника фрагмента JSON DSL.

Для применения расширенных правил синхронизации требуется полная синхронизация.

Вот несколько примеров расширенных правил синхронизации для этого подключенного модуля.

Пример 1

Это правило пропускает индексирование файлов с расширениями .xlsx и .docx. Все остальные файлы и папки будут проиндексированы.

[
  {
    "skipFilesWithExtensions": [".xlsx" , ".docx"]
  }
]

Пример 2

Это правило фокусируется на индексировании файлов и папок, принадлежащих user1-domain@onmicrosoft.com и user2-domain@onmicrosoft.com, но исключает файлы с расширением .py.

[
  {
    "owners": ["user1-domain@onmicrosoft.com", "user2-domain@onmicrosoft.com"],
    "skipFilesWithExtensions": [".py"]
  }
]

Пример 3

Это правило индексирует только файлы и папки, находящиеся непосредственно внутри корневой папки, исключая любые файлы .md.

[
  {
    "skipFilesWithExtensions": [".md"],
    "parentPathPattern": "/drive/root:"
  }
]

Пример 4

Это правило индексирует файлы и папки, принадлежащие user1-domain@onmicrosoft.com и user3-domain@onmicrosoft.com, которые находятся непосредственно внутри папки abc, которая является подпапкой любой папки в каталоге hello в корне. Исключаются файлы с расширениями .pdf и .py.

[
  {
    "owners": ["user1-domain@onmicrosoft.com", "user3-domain@onmicrosoft.com"],
    "skipFilesWithExtensions": [".pdf", ".py"],
    "parentPathPattern": "/drive/root:/hello/**/abc"
  }
]

Пример 5

Этот пример содержит два правила. Первое правило индексирует все файлы и папки, принадлежащие user1-domain@onmicrosoft.com и user2-domain@onmicrosoft.com. Второе правило индексирует файлы для всех остальных пользователей, но пропускает файлы с расширением .py.

[
  {
    "owners": ["user1-domain@onmicrosoft.com", "user2-domain@onmicrosoft.com"]
  },
  {
    "skipFilesWithExtensions": [".py"]
  }
]

Пример 6

Этот пример содержит два правила. Первое правило индексирует все файлы, принадлежащие user1-domain@onmicrosoft.com и user2-domain@onmicrosoft.com, исключая файлы .md. Второе правило рекурсивно индексирует файлы и папки внутри папки abc.

[
  {
    "owners": ["user1-domain@onmicrosoft.com", "user2-domain@onmicrosoft.com"],
    "skipFilesWithExtensions": [".md"]
  },
  {
    "parentPathPattern": "/drive/root:/abc/**"
  }
]
Извлечение контента

См. Извлечение контента.

Операции с подключенным модулем под управлением пользователя
Тестирование «от конца до конца»

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

Для выполнения тестирования «от конца до конца» для подключенного модуля GitHub выполните следующую команду:

$ make ftest NAME=onedrive

Для ускорения тестов добавьте флаг DATA_SIZE=small:

make ftest NAME=onedrive DATA_SIZE=small
Известные проблемы
  • Включение безопасности на уровне документов влияет на производительность.

    Включение DLS для подключенного модуля приведет к значительному снижению производительности, поскольку API-вызовы к источнику данных, необходимые для этой функции, ограничены по скорости. Это влияет на скорость получения контента.

Список известных проблем для всех подключенных модулей см. в Известные проблемы.

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

См. Поиск и устранение неисправностей.

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

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

© 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-onedrive.html

Spec-Zone.ru

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