Открыть документацию

Создание Microsoft OAuth app для OpenConnector

Используйте регистрацию Microsoft Entra app, когда OpenConnector нужно подключить провайдеры Microsoft Graph, например Outlook, OneDrive или Excel.

Сервисы OpenConnector

ID сервисаПровайдерДополнительное поле клиента
outlookOutlooktenant
one_driveOneDrivetenant
excelExceltenant

Значение tenant — это сегмент tenant Microsoft identity platform, используемый в URL авторизации и токена. Распространённые значения: common, organizations, consumers или конкретный tenant ID.

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

  • Запущенный runtime OpenConnector.
  • Доступ к Microsoft Entra admin center или регистрациям apps Azure.
  • Разрешение на регистрацию app и создание client secret.
  • Origin OpenConnector, который пользователи открывают в браузере, например http://localhost:3000 или https://connect.example.com.

Шаг 1. Настройте callback URL OpenConnector

Добавьте /oauth/callback к origin OpenConnector. Для локального тестирования используйте http://localhost:3000/oauth/callback. Для публичного deployment задайте OOMOL_CONNECT_ORIGIN, перезапустите OpenConnector и используйте публичный callback URL, например https://connect.example.com/oauth/callback.

Шаг 2. Зарегистрируйте Microsoft app

В Microsoft Entra admin center:

  1. Откройте App registrations.
  2. Создайте новую регистрацию.
  3. Выберите supported account type, соответствующий вашим пользователям.
  4. Добавьте redirect URI типа Web с точным callback URL OpenConnector.
  5. Зарегистрируйте app.
  6. Откройте Certificates & secrets и создайте client secret.
  7. Откройте API permissions и добавьте delegated permissions Microsoft Graph, необходимые сервису OpenConnector.

Официальное руководство Microsoft: Register an application with the Microsoft identity platform. Microsoft также указывает, что redirect URI в auth request должен совпадать с зарегистрированным redirect URI в authorization code flow.

Шаг 3. Скопируйте значения клиента

Значение MicrosoftПоле OpenConnector
Идентификатор клиента приложенияclientId
Значение секрета клиентаclientSecret
Сегмент tenantextra.tenant

Скопируйте значение client secret при создании. Microsoft не покажет полное значение секрета повторно.

Шаг 4. Сохраните клиент в OpenConnector

Провайдерам Microsoft в OpenConnector требуется дополнительное значение tenant. Перед выполнением этого руководства используйте версию console OpenConnector, где поле tenant отображается в форме OAuth client.

  1. Откройте web console OpenConnector, например http://localhost:3000.
  2. Откройте Providers и выберите Outlook, OneDrive или Excel.
  3. Выберите Configure OAuth Client или Edit OAuth Client.
  4. Вставьте application client ID Microsoft и значение client secret.
  5. В поле Tenant укажите common, organizations, consumers или свой tenant ID.
  6. Выберите Save OAuth Client.

Повторите эти шаги для one_drive или excel при настройке соответствующих сервисов.

Шаг 5. Подключите и проверьте

После сохранения конфигурации OAuth client выберите Connect на странице провайдера Microsoft. Войдите с аккаунтом Microsoft, подтвердите consent, вернитесь в OpenConnector и убедитесь, что аккаунт отображается как подключённый.

Перед выполнением actions Microsoft Graph просмотрите сведения об action в console. Выберите read action, доступный в вашей версии каталога, например outlook.list_messages, если он присутствует.

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

СимптомЧто проверить
Microsoft сообщает о недействительном redirect URIДобавьте точный URL <openconnector-origin>/oauth/callback как Web redirect URI в регистрации app.
Вход целевого пользователя не выполняетсяПроверьте supported account type app и значение tenant, сохранённое в OpenConnector.
Требуется admin consentНекоторые permissions Microsoft Graph или политики tenant требуют согласия администратора. Попросите tenant admin проверить app.
Token request не выполняетсяУбедитесь, что сохранено текущее значение client secret; secret ID лишь идентифицирует запись секрета.
Actions не выполняются из-за отсутствующих разрешенийДобавьте необходимые delegated API permissions, предоставьте consent и подключите аккаунт Microsoft повторно.