GitHub アプリの OAuth 2.0 認証情報 - 認証コード

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:6分
  • 認証コードを使用して GitHub Apps を統合するには、次の手順を実行します。

    事前準備

    必要なロール:
    • oauth_admin DevOps チェンジベロシティ
    • GitHub のアドミンアカウント。
    注:
    ユーザーレベルのリポジトリのみがサポートされています。認証コードを使用してDevOps チェンジベロシティで設定するすべてのGitHubリポジトリにアクセスできる必要があります。

    OAuth 認証コード権限許可タイプは、GitHub および MID サーバーを使用する GitHub Enterprise でサポートされています。

    GitHub アカウントで GitHub アプリを構成する (認証コード)

    GitHub アカウントからカスタム GitHub アプリを作成し、ServiceNow インスタンスで OAuth 2.0 認証を有効にします。

    始める前に

    GitHub 要件: GitHub アプリと統合するように構成された ServiceNow

    必要なロール:インスタンスロールは不要

    このタスクについて

    GitHub アカウントから、次の手順を完了します。「」を参照してください。 建物 GitHub アプリ カスタムアプリケーションを作成および構成する方法については、 GitHub Developer サイトのページを参照してください。

    手順

    1. GitHub アカウントから、次の場所に移動して GitHub アプリを作成します 開発者設定 > GitHub アプリ.
    2. [ホームページ URL (Homepage URL)] フィールドに「https://<instance-name>.service-now.com」と入力します。
    3. [ユーザー認証コールバック URL (User authorization callback URL)] フィールドに、「https://<instance-name>.service-now.com/oauth_redirect.do」と入力します。
    4. [ユーザーの識別と認証 (Identifying and authorizing users)] セクションで、[ユーザー認証トークンの有効期限 (Expire user authorization tokens)] フィールドの選択を解除します。
    5. [ Webhook ] セクションで、[ アクティブ ] フィールドの選択を解除します。
    6. 残りのフィールドは空のままにします (デフォルト)。
    7. [ リポジトリ権限 ] セクションで、これらの設定を構成します。
      アクション 読み取り専用
      チェック 読み取り専用
      コンテンツ 読み取り専用
      展開 読み取りと書き込み
      環境 読み取り専用
      メタデータ 読み取り専用
      プル要求 読み取り専用
      シークレット 読み取り専用
      Webhook 読み取りと書き込み
      注:
      ServiceNowから Webhook を構成するには、読み取り権限と書き込み権限が必要です。
    8. 残りの権限は [アクセスなし] (デフォルト) のままにします 。
    9. 新しく作成した GitHub アプリを選択したアカウントにインストールします。

    クライアント ID を DevOps プロパティに追加

    GitHub アプリを構成した後、クライアント ID プレフィックス (ID の最初の 3 文字以上) が DevOps プロパティ ( GitHub アプリのクライアント ID 指定子) に追加されていることを確認する必要があります。

    始める前に

    必要なロール:sn_devops.admin

    手順

    1. 次のように移動する。 ワークスペース > DevOps 変更ワークスペース > アドミニストレーション > システム構成 > プロパティ.
    2. アプリケーションスコープを DevOps データモデルに変更します。
    3. GitHub アプリのクライアント ID 指定子 [sn_devops.github_oauth_client_id_specifier] プロパティを検索します。
    4. GitHub アプリのクライアント ID プレフィックス (ID の最初の 3 文字以上) をプロパティに入力します。
    5. [Save (保存)] を選択します。

    GitHub を OAuth プロバイダーとして登録する (認証コード)

    GitHub アプリアカウントの構成中に生成された情報を使用し、GitHub を OAuth プロバイダーとして登録して、インスタンスが OAuth 2.0 トークンを要求できるようにします。

    始める前に

    必要なロール:admin、sn_devops.admin

    手順

    1. 次のように移動する。 All (すべて) > システム OAuth > アプリケーションレジストリー.
    2. [New] をクリックします。
      どのような OAuth アプリケーションですか?」というメッセージが表示されます。
    3. [サードパーティ OAuth プロバイダーに接続します] を選択します。
      空欄のアプリケーション登録フォームが表示されます。
    4. フォームを完了します。
      フィールド 必要な値
      名前 レコードを一意に識別する名前を入力します。たとえば、「 My GitHub App Provider」と入力します。
      クライアント ID GitHubアプリのクライアント ID を入力します (ヒント:GitHubGitHub アプリ構成の [関連情報] セクションにあります)。
      クライアントシークレット GitHub アプリのクライアントシークレットを入力します (ヒント:GitHubGitHub アプリ構成の [関連情報] セクションで利用可能です)。
      OAuth API スクリプト [OAuthDevOpsGitHubHandler] を選択します。
      デフォルトの権限許可タイプ [認証コード] を選択します。
      認証 URL

      https://github.com/login/oauth/authorize を入力します。

      オンプレミス展開の場合は、適切な GitHub ホスト URL を使用します。

      トークン URL

      https://github.com/login/oauth/access_token を入力します。

      オンプレミス展開の場合は、適切な GitHub ホスト URL を使用します。

    5. フォームの残りのフィールドはデフォルトのままにします。
      アプリケーションレジストリフォーム
    6. フォームヘッダーを右クリックし、[保存] をクリックします。
      • OAuth 認証情報が検証され、リダイレクト URL が入力されます (ヒント:以前に GitHub アプリ構成で提供されたユーザー認証コールバック URL と一致する必要があります)。
      • OAuth エンティティプロファイルに [権限許可タイプ] が [認証コード] として入力されます。たとえば、OAuth エンティティプロファイルは、デフォルトMy GitHub App Provider default_profile で作成されます

    GitHub アプリプロバイダーの認証情報レコードの作成 (認証コード)

    アクションを許可するために、以前に作成した GitHub アプリプロバイダーに認証情報レコードを作成します。

    始める前に

    必要なロール:admin、credential_admin

    手順

    1. 次のように移動する。 All (すべて) > 接続 & 認証情報 > 認証情報.
    2. [New] をクリックします。
      作成する認証情報のタイプは?」というメッセージが表示されます。
    3. [OAuth 2.0 認証情報] を選択します。
      ポップアップウィンドウに、空の OAuth 2.0 認証情報フォームが表示されます。
    4. 次の値を入力します。
      フィールド 必要な値
      名前 レコードを一意に識別する名前を入力します。たとえば、「 My GitHub App Credential」と入力します。
      アクティブ 有効化
      OAuth エンティティプロファイル 以前に作成したデフォルトの OAuth エンティティプロファイルを選択します。
      適用先 この認証情報を使用できる MID サーバーを選択します。たとえば、[すべての MID サーバー] を選択します。
      注:
      この認証情報を使用するには、MID サーバーを使用して GitHub ツールインスタンスに接続する必要があります。
      順序 この認証情報を適用する順番を選択します。たとえば、「100」と入力します。
    5. レコードを保存します。
    6. OAuth トークンを生成するには、[OAuth トークンを取得] 関連リンクをクリックします。