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

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

Используйте GitHub OAuth app, когда OpenConnector требуется авторизованное пользователем подключение GitHub. OAuth app предоставляет процесс авторизации в браузере; personal access token подходит для настройки токена администратором.

Сервис OpenConnector

ID сервисаПровайдерТип авторизации
githubGitHubOAuth2

OAuth-провайдер GitHub в OpenConnector может запрашивать scopes read:user, user:email, repo, workflow и delete_repo. Предоставляйте только scopes, необходимые для запланированных actions.

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

  • Запущенный runtime OpenConnector.
  • Аккаунт или организация GitHub, где вы можете создавать OAuth apps.
  • 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. Зарегистрируйте GitHub OAuth app

В GitHub:

  1. Откройте Settings.
  2. Откройте Developer settings.
  3. Откройте OAuth Apps.
  4. Выберите New OAuth App.
  5. Укажите название app и URL домашней страницы.
  6. В поле Authorization callback URL укажите точный callback URL OpenConnector.
  7. Зарегистрируйте app.

Официальное руководство GitHub: Creating an OAuth app. GitHub OAuth app поддерживает один authorization callback URL, поэтому создайте отдельные apps для локального окружения, staging и production, если URL различаются.

Шаг 3. Скопируйте client credentials

На странице GitHub OAuth app скопируйте:

Значение GitHubПоле OpenConnector
Идентификатор клиентаclientId
Секрет клиентаclientSecret

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

Используйте web console OpenConnector:

  1. Откройте web console OpenConnector, например http://localhost:3000.
  2. Откройте Providers и выберите GitHub.
  3. Выберите Configure OAuth Client или Edit OAuth Client.
  4. Вставьте client ID и client secret GitHub.
  5. Выберите Save OAuth Client.

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

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

Используйте github.get_current_user как безопасный тестовый action из списка actions в console.

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

СимптомЧто проверить
Redirect URI mismatchAuthorization callback URL в GitHub должен точно совпадать с <openconnector-origin>/oauth/callback.
App авторизовал неверный аккаунтВыйдите из GitHub или используйте чистый профиль браузера перед началом авторизации.
Actions с репозиториями не выполняютсяУ подключения может отсутствовать scope repo, либо у пользователя нет доступа к целевому репозиторию.
Actions workflow не выполняютсяУ подключения может отсутствовать scope workflow. Измените запрашиваемые scopes и подключитесь повторно.
Actions удаления не выполняютсяНе используйте delete_repo, если разрушительные операции с репозиториями не нужны намеренно.