GitHub Enterprise Server との統合

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:10分
  • ソフトウェア資産管理 アプリケーションを GitHub Enterprise Server アプリケーションと統合すると、ソフトウェアサブスクリプションを追跡し、未使用のライセンスを再利用するのに役立ちます。

    重要:
    必要なユーザーまたは API 権限のみにアクセス権を付与することで、セキュリティリスクを最小限に抑え、情報を保護します。
    表 : 1. 最小限のユーザー権限
    責任を担います。 GitHub Enterprise Server アプリケーションで必要なユーザーロール 認証スコープ
    サブスクリプションをダウンロード サイトアドミニストレーター site_admin
    サブスクリプションを再利用 サイトアドミニストレーター site_admin

    GitHub Enterprise Server の API アクセストークンの生成

    GitHub Enterprise Server API へのアクセスに使用できるトークンを生成します。

    始める前に

    GitHub 必要なロール:サイトアドミニストレーター

    このタスクについて

    GitHub リポジトリホスティングサービスは、個人用アクセストークンを使用して、ユーザーに GitHub API へのアクセス権を付与します。個人アクセストークンは、API 要求を許可することで、OAuth アクセストークンと同様に機能します。個人アクセストークンを生成して GitHub Enterprise Server API 要求を許可することで、 GitHub Enterprise Server API にアクセスできるようになります。

    手順

    1. Web ブラウザーから、 GitHub Enterprise Server インスタンスを開きます。
    2. GitHub アカウントにサインインします。
    3. GitHubページのヘッダーで、プロファイル写真を選択し、[設定] を選択します。
      プロファイル設定が開きます。
    4. 左側のナビゲーション ウィンドウで、[ 開発者設定] を選択します。
      開発者設定が開きます。
    5. 左側のナビゲーションペインで、[ 個人用アクセストークン] を選択します。
    6. [個人用アクセス トークン] ページで、 [新しいトークンの生成] を選択します。
    7. 続行する前にパスワードの確認を求められた場合は、 GitHub パスワードを入力し、[ パスワードの確認] を選択します。
    8. [新しい個人アクセストークン] フォームの [ メモ ] フィールドにトークンの目的を記述します。
    9. [スコープを選択] フォームセクションで、[ site_admin ] チェックボックスをオンにして、site_admin OAuth スコープを有効にします。
      OAuth スコープは、保護されたリソースに対してアプリケーションが持つアクセスレベルを制限します。site_admin OAuth スコープを使用すると、Enterprise ユーザー、組織、リポジトリを管理できます。
    10. [トークンの生成] を選択します。
      個人アクセストークンが生成されます。
    11. アクセストークンをコピーし、後で使用するために安全な場所に保存します。

    GitHub Enterprise Server 接続の作成

    GitHub Enterprise Server アプリケーションと ServiceNow インスタンス間の接続を作成します。

    始める前に

    ServiceNow インスタンスと GitHub Enterprise Server アプリケーションの間の通信にMID サーバーを使用する場合は、まずインスタンスでMID サーバーを設定する必要があります。詳細な手順については、「 MID サーバー 」を参照してください。

    ServiceNow 必要なロール:admin

    手順

    1. ServiceNowインスタンスから、 プロセス自動化 > Flow Designer (フローデザイナー).
      フローデザイナーが新しいタブで起動します。
    2. [Connections (接続)] タブを選択します。
    3. GitHub Server 接続の [詳細を表示] を選択します。
    4. 使用可能な接続の一覧から GitHub Server を見つけて、 構成 を選択します。
    5. [接続を設定] ダイアログボックスで、フィールドに入力します。
      表 : 2. [接続の設定] ダイアログボックス
      フィールド 説明
      接続名 GitHub サーバー接続の名前。
      接続 URL GitHubインスタンスの URL です。
      MID サーバー の使用 ServiceNow インスタンスが GitHub Enterprise Server アプリケーションとの通信にMID サーバーを使用できるようにするオプション。
      • インスタンスで MID サーバーが必要な場合は、このフィールドを true に設定します。
      • インスタンスで MID サーバーが必要ない場合は、このフィールドを空のままにします。
      重要:
      このオプションを有効にするには、インスタンスに MID サーバー が設定されている必要があります。詳細な手順については、「 MID サーバー 」を参照してください。
      API キー GitHub Enterprise Server API へのアクセスを可能にする個人用アクセストークン。<api-key> と入力します。<api-key> は GitHub Enterprise Server の API アクセストークンの生成 で生成した個人用アクセストークンです。
    6. [接続を設定] を選択します。

    GitHub Enterprise Server 統合プロファイルの作成

    GitHub Enterprise Server 統合プロファイルを作成して、ソフトウェアサブスクリプションを追跡し、GitHub Enterprise Server アプリケーションのライセンスを最適化します。

    始める前に

    GitHub Enterprise Server 統合プロファイルを作成するには、ServiceNow Store から ソフトウェア資産管理 - SaaS ライセンス管理 プラグイン (sn_sam_saas_int) を要求します。

    ServiceNow 必要なロール:sam_integrator または admin

    重要:
    [Application Manager] ページでオプション機能をインストールするときは、この統合の [GitHub スポーク] チェックボックスをオンにする必要があります。必要な SaaS アプリケーションの選択の詳細については、「 SaaS ライセンス管理の要求」を参照してください。

    このタスクについて

    ソフトウェア資産ワークスペースを使用している場合、コア UIGitHub Server 統合プロファイルを作成するオプションは非アクティブです。

    手順

    1. 統合プロファイルに移動します。
      インターフェイスアクション
      Core UI (コア UI)
      1. 次のように移動する。 All (すべて) > ソフトウェア資産 > SaaS ライセンス > 直接統合プロファイル.
      2. [New (新規)] を選択します。
      3. [GitHub Server Subscription Profile] を選択します。
      ソフトウェア資産ワークスペース
      1. 次のように移動する。 ライセンス操作 > ユーザー登録 > 直接統合プロファイル.
      2. [New (新規)] を選択します。
      3. ドロップダウンリストから [GitHub Server ] を選択します。
      4. [Continue (続行)] を選択します。
    2. フォームのフィールドに入力します。
      表 : 3. 統合プロファイルフォーム
      フィールド 説明
      表示名 データ連携プロファイルの名前例:GitHub サーバー統合
      ステータス 統合プロファイルのステータス。
      • 統合プロファイルを公開していない場合、このフィールドは自動的に [ドラフト] に設定されます。
      • 統合プロファイルを既に公開している場合、このフィールドは自動的に [公開済み] に設定されます。
      プロファイルタイプ 統合プロファイルのタイプ。このフィールドは自動的に github_server_subscription に設定されます。
    3. [プロセスの構成] セクションで、各プロセスの [ ベンダー構成 ] フィールドで指定された必要なユーザーロールまたは API 権限を確認して、セキュリティリスクを最小限に抑え、 SaaS ライセンスを最適化します。
      注:
      必要なロールとスコープの詳細については、「 最小限のユーザー権限 」テーブルを参照してください。
      • [ サブスクリプションをダウンロード ] チェックボックスはデフォルトでオンになっており、オフにすることはできません。

      • 注:
        [ ダウンロードアクティビティ ] チェックボックスはデフォルトでオンになっています。これをクリアすると、アクティビティのスケジュール済みジョブ SAM - Refresh <displayname> Activity は作成されません。
        [ ユーザーアクティビティを分析 ] フィールドで、ユーザーアクティビティを分析する開始日時を選択することもできます。デフォルトでは、現在の日付の 60 日前までのユーザーアクティビティを分析し、このプロファイルを作成したときから個々のユーザーが実行したイベントを表示できます。
        注:
        ソフトウェア資産管理 は、プロファイルの作成日に関係なく、ユーザーアクティビティの分析を開始した時点からのイベントをプルします。
        この値は、ソフトウェア再利用ルールの [前回のアクティビティしきい値] フィールドで変更できます。詳細については、「ソフトウェア再利用ルールのレビュー」を参照してください。
      • [ サブスクリプションを再利用 ] チェックボックスはデフォルトでオンになっています。サブスクリプションを再利用しない場合は、このチェックボックスをオフにします。これをクリアすると、削除候補は作成されますが、サブスクリプションの再利用サブフローがトリガーされないか、再利用プロセスが開始されません。

    4. [Save (保存)] をクリックする。
      ServiceNowインスタンスでドラフトの統合プロファイルが作成されます。

      [接続と資格情報] フィールドが表示され、自動的に sn_github_spoke に設定されます。GitHub_Server

    5. 統合プロファイルフォームで、[ 接続を検証 ] を選択して、この統合の接続と資格情報の詳細を確認します。

      接続を検証すると、Download Subscriptions API と Calculate Activity API は検証されますが、Reclaim Subscriptions API は検証されません。

    6. 接続が検証されたら、[ 公開] を選択します。
    7. 公開の確認 ダイアログ ボックスで、 OK を選択します。
      注:
      統合プロファイルの公開後に [ ダウンロードアクティビティ ] チェックボックスをオフにすると、次のイベントが発生するため、接続を再検証してから統合プロファイルを再公開する必要があります。
      • 統合プロファイルフォームの [ ステータス ] フィールドが [ドラフト] に変わります。
      • [ 接続を検証] ボタンがフォームに表示されます。
      • 現在の SAM - Refresh <displayname> Activity ジョブが削除されます。

    次のタスク

    統合が接続されると、 ServiceNow インスタンスでソフトウェアモデル、再利用ルール、ソフトウェアサブスクリプションが自動的に作成され、毎日更新されます。

    一意の接続を持つ複数の統合プロファイルを設定する場合は、子エイリアスを作成して、統合プロファイルごとに異なる構成と設定を管理します。詳細については、「子エイリアスを作成して複数の統合プロファイルを設定する」を参照してください。

    ユーザーサブスクリプションを再利用するために、自動的に生成されたすべての再利用ルールを確認します。詳細については、「ソフトウェア再利用ルールのレビュー」を参照してください。

    自動生成されたソフトウェアモデルのソフトウェアエンタイトルメントを作成して、使用済みソフトウェアを所有ソフトウェアに対して追跡します。
    調整は、サブスクリプションでもスケジュール済みジョブとして、またはオンデマンドで実行されます。調整結果は、 ライセンスワークベンチ (クラシックアプリケーションソフトウェア資産管理 ) または ライセンス使用状況ビュー (ソフトウェア資産ワークスペース) で表示できます。これらの結果を使用して、ライセンスコンプライアンスの状況を判断し、コンプライアンス違反を修正します。