---
sourceDocument: Xanadu IT Service Management
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/xanadu/it-service-management

 Release :

    - xanadu

ft:locale :

    - ja-JP

ft:publication_title :

    - Xanadu IT Service Management

ft:clusterId :

    - itsm

bundleId :

    - itsm

workflow :

    - Technology


---

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

# GitHub アプリの OAuth 2.0 認証情報 - 認証コード {#ariaid-title1}

* リリースバージョン: Xanadu
* 
* 更新日 2024年08月01日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：6分

認証コードを使用して GitHub アプリを統合するには、次の手順を実行します。

事前準備  
必要なロール：

* oauth_admin DevOps チェンジベロシティ。
* GitHub のアドミンアカウント。

{#dev-ops-github-apps-oauth-auth__ul_rxd_mpy_jsb}  
注:  
ユーザーレベルのリポジトリのみがサポートされています。認証コードを使用してDevOps チェンジベロシティで構成するすべてのGitHubリポジトリにアクセスできる必要があります。  
注:  
GitHub Enterprise Server (オンプレミスインスタンス) の場合、MID サーバーを使用して接続している場合、OAuth はサポートされません。

## GitHub アカウントで GitHub アプリを構成する (認証コード) {#ariaid-title2}

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

### 始める前に

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

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

### このタスクについて

GitHub アカウントから、次の手順を完了します。「」を参照してください。 [建物 GitHub アプリ](https://developer.github.com/apps/building-github-apps/) カスタムアプリケーションの作成と構成の手順については、 GitHub 開発者サイトを参照してください。

### 手順

1. GitHub アカウントから、次の場所に移動して GitHub アプリを作成します 開発者設定GitHub アプリ.
2. \[ホームページ URL (Homepage URL)\] フィールドに「<kbd class="ph userinput">https://&lt;instance-name&gt;.service-now.com</kbd>」と入力します。
3. \[ユーザー認証コールバック URL (User authorization callback URL)\] フィールドに、「<kbd class="ph userinput">https://&lt;instance-name&gt;.service-now.com/oauth_redirect.do</kbd>」と入力します。
4. \[ユーザーの識別と認証 (Identifying and authorizing users)\] セクションで、\[ユーザー認証トークンの有効期限 (Expire user authorization tokens)\] フィールドの選択を解除します。
5. \[ Webhook \] セクションで、\[ アクティブ \] フィールドの選択を解除します。
6. 残りのフィールドは空のままにします (デフォルト)。
7. \[ リポジトリのアクセス許可 \] セクションで、次の設定を構成します。  

   |-|-|
   | アクション | 読み込み専用 |
   | チェック | 読み込み専用 |
   | コンテンツ | 読み込み専用 |
   | 展開 | 読み取りと書き込み |
   | 環境 | 読み込み専用 |
   | メタデータ | 読み込み専用 |
   | プル要求 | 読み込み専用 |
   | シークレット | 読み込み専用 |
   | Webhook | 読み取りと書き込み 注: ServiceNow から Webhook を構成するには、読み取りおよび書き込み権限が必要です。 |
   [ ]

   {#dev-ops-config-github-acct-auth__table_j5m_wcs_4mb}
8. 残りの権限は <kbd class="ph userinput">[アクセスなし]</kbd> (デフォルト) のままにします 。
9. 新しく作成した GitHub アプリを選択したアカウントにインストールします。
{#dev-ops-config-github-acct-auth__steps_yy3_bls_4mb}

## DevOps プロパティにクライアント ID を追加 {#ariaid-title3}

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. \[保存\] を選択します。

## OAuth プロバイダー (認証コード) として GitHub を登録 {#ariaid-title4}

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

### 始める前に

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

### 手順

1. 移動先 すべてシステム OAuthアプリケーションレジストリ.
2. \[新規\] をクリックします。  
   「どのような OAuth アプリケーションですか？」というメッセージが表示されます。
3. \[サードパーティ OAuth プロバイダーに接続します\] を選択します。  
   空欄のアプリケーション登録フォームが表示されます。
4. フォームに入力します。  
   {#dev-ops-reg-github-oauth-prov-auth__table_fd2_2xr_4mb__entry__2}

   | フィールド | 必要な値 |
   |-|-|
   | 名前 | レコードを一意に識別する名前を入力します。たとえば、「 <kbd class="ph userinput">My GitHub App Provider</kbd>」と入力します。 |
   | クライアント ID | GitHub アプリのクライアント ID を入力します (ヒント:GitHub の GitHub アプリ構成の \[バージョン情報\] セクションで利用可能です)。 |
   | クライアントシークレット | GitHub アプリのクライアントシークレットを入力します (ヒント:GitHub の GitHub アプリ構成の \[バージョン情報\] セクションにあります)。 |
   | OAuth API スクリプト | \[OAuthDevOpsGitHubHandler\] を選択します。 |
   | デフォルトの権限許可タイプ | \[認証コード\] を選択します。 |
   | 認証 URL | <kbd class="ph userinput">https://github.com/login/oauth/authorize</kbd> を入力します。 オンプレミス展開の場合は、適切な GitHub ホスト URL を使用します。 |
   | トークン URL | <kbd class="ph userinput">https://github.com/login/oauth/access_token</kbd> を入力します。 オンプレミス展開の場合は、適切な GitHub ホスト URL を使用します。 |
   [ ]

   {#dev-ops-reg-github-oauth-prov-auth__table_fd2_2xr_4mb}
5. フォームの残りのフィールドはデフォルトのままにします。  
6. フォームヘッダーを右クリックし、\[保存\] をクリックします。  
   * OAuth認証情報が検証され、リダイレクトURLが入力されます(ヒント:GitHubアプリ構成で以前に指定したユーザー認証コールバックURLと一致する必要があります)。
   * OAuth エンティティプロファイル の \[ 権限許可タイプ \] が \[認証コード\] として入力されます。たとえば、OAuth エンティティプロファイルは、デフォルトの名前「My GitHub App Provider default_profile で作成されます
   {#dev-ops-reg-github-oauth-prov-auth__ul_id2_2xr_4mb}
{#dev-ops-reg-github-oauth-prov-auth__steps_ed2_2xr_4mb}

## GitHubアプリプロバイダー (認証コード) の認証情報レコードを作成します {#ariaid-title5}

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

### 始める前に

必要なロール:admin、credential_admin

### 手順

1. 移動先 すべて接続 \& 認証情報認証情報.
2. \[新規\] をクリックします。  
   「作成する認証情報のタイプは？」というメッセージが表示されます。
3. \[OAuth 2.0 認証情報\] を選択します。  
   ポップアップウィンドウに、空の OAuth 2.0 認証情報フォームが表示されます。
4. 値を入力します。  
   {#dev-ops-create-cred-github-auth__table_sxv_zgp_gfb__entry__2}

   | Field (フィールド) | 必要な値 |
   |-|-|
   | 名前 | レコードを一意に識別する名前を入力します。たとえば、「 <kbd class="ph userinput">My GitHub App Credential</kbd>」と入力します。 |
   | アクティブ | 有効化 |
   | OAuth エンティティプロファイル | 以前に作成したデフォルトの OAuth エンティティプロファイルを選択します。 |
   | 適用先 | この認証情報を使用できる MID サーバーを選択します。たとえば、\[すべての MID サーバー\] を選択します。 注: この認証情報を使用するには、MID サーバーを使用して GitHub ツールインスタンスに接続する必要があります。 |
   | 注文 | この認証情報を適用する順番を選択します。たとえば、「<kbd class="ph userinput">100</kbd>」と入力します。 |
   [ ]

   {#dev-ops-create-cred-github-auth__table_sxv_zgp_gfb}
5. レコードを保存します。
6. OAuth トークンを生成するには、\[OAuth トークンを取得\] 関連リンクをクリックします。
{#dev-ops-create-cred-github-auth__steps_o5h_52j_qfb}
**関連概念**   

* [GitHub Actions構成](https://servicenow-prod.fluidtopics.net/Ikv9aMPIyISZ1YQdAtoH~Q#github-actions-integration-with-devops "シークレット、ワークフロー、制限など、 GitHub Actionsに関する構成情報。")
* [GitHub マーケットプレイスの ServiceNow DevOps カスタムアクション](https://servicenow-prod.fluidtopics.net/BLZBEZcnY8xw78JBsvkMxQ#servicenow-devops-custom-actions-from-github-marketplace "GitHub マーケットプレイスのカスタムアクションを使用して、SonarQube スキャンデータ、セキュリティデータの収集、ワークフローの一時停止または再開、インスタンスで変更要求が承認または却下されるまでのワークフローの再開、変更要求の詳細の取得と更新などを行います。")

