---
author: OOMOL
author_url: https://oomol.com/ja/about/
title: OpenConnector 用の GitHub OAuth app を作成する
description: GitHub OAuth app を作成して callback URL を設定し、GitHub を self-hosted OOMOL
  OpenConnector runtime に接続します。
lang: ja
canonical_url: https://oomol.com/ja/docs/openconnector-github-oauth-app/
markdown_url: https://oomol.com/ja/docs/openconnector-github-oauth-app.md
---

# OpenConnector 用の GitHub OAuth app を作成する

OpenConnector で user-authorized GitHub connection が必要な場合は、GitHub OAuth app を使用します。OAuth app は browser authorization flow を提供します。personal access token は administrator-managed token configuration に使用できます。

## OpenConnector サービス

| サービス ID | プロバイダー | 認証方式 |
| --- | --- | --- |
| `github` | GitHub | OAuth2 |

OpenConnector の GitHub OAuth provider は、`read:user`、`user:email`、`repo`、`workflow`、`delete_repo` などの scopes を要求できます。実行予定の actions に必要な scopes だけを許可してください。

## 前提条件

- 実行中の OpenConnector runtime。
- OAuth apps を作成できる GitHub account または organization。
- users が browser で開く OpenConnector origin（`http://localhost:3000`、`https://connect.example.com` など）。

## 手順 1：OpenConnector callback URL を設定する

OpenConnector origin に `/oauth/callback` を追加して callback URL を作成します。local test では `http://localhost:3000/oauth/callback` を使用します。public deployment では `OOMOL_CONNECT_ORIGIN` を設定して OpenConnector を再起動し、`https://connect.example.com/oauth/callback` などの public callback URL を使用します。

## 手順 2：GitHub OAuth app を登録する

GitHub で次の操作を行います。

1. **Settings** を開きます。
2. **Developer settings** を開きます。
3. **OAuth Apps** を開きます。
4. **New OAuth App** を選択します。
5. app name と homepage URL を入力します。
6. **Authorization callback URL** に OpenConnector callback URL を正確に設定します。
7. app を登録します。

GitHub の公式ガイドは [Creating an OAuth app](https://docs.github.com/en/apps/oauth-apps/building-oauth-apps/creating-an-oauth-app) です。GitHub OAuth app に設定できる authorization callback URL は 1 つだけです。local、staging、production の callback URL が異なる場合は、環境ごとに app を作成してください。

## 手順 3：client credentials をコピーする

GitHub OAuth app page から次の値をコピーします。

| GitHub の値 | OpenConnector のフィールド |
| --- | --- |
| クライアント ID | `clientId` |
| クライアントシークレット | `clientSecret` |

## 手順 4：GitHub client を OpenConnector に保存する

OpenConnector web console を使用します。

1. `http://localhost:3000` などの OpenConnector web console を開きます。
2. **Providers** を開いて **GitHub** を選択します。
3. **Configure OAuth Client** または **Edit OAuth Client** を選択します。
4. GitHub client ID と client secret を貼り付けます。
5. **Save OAuth Client** を選択します。

## 手順 5：接続してテストする

OAuth client を保存した後、GitHub provider page で **Connect** を選択します。GitHub OAuth app を承認し、OpenConnector に戻って、provider page に account が connected と表示されることを確認します。

console action list から `github.get_current_user` を low-risk test action として使用します。

## トラブルシューティング

| 症状 | 確認事項 |
| --- | --- |
| Redirect URI mismatch | GitHub の authorization callback URL が `<openconnector-origin>/oauth/callback` と完全に一致している必要があります。 |
| 誤った account が app を認証した | authorization を開始する前に GitHub からサインアウトするか、新しい browser profile を使用します。 |
| Repo actions が失敗する | connection に `repo` scope がないか、user が対象 repository にアクセスできない可能性があります。 |
| Workflow actions が失敗する | connection に `workflow` scope がない可能性があります。requested scopes を調整して再接続します。 |
| Delete actions が失敗する | destructive repository actions が明確に必要な場合を除き、`delete_repo` は避けてください。 |
