Skip to main content

自社で GitHub Advanced Security を有効にする

GitHub Enterprise Server を構成して、GitHub Advanced Security を含めることができます。 これにより、ユーザーがコード内のセキュリティ問題を検出して修正するのに役立つ追加機能が提供されます。

この機能を使用できるユーザーについて

{data variables.product.prodname_GH_advanced_security %} は、GitHub Enterprise Cloud と GitHub Enterprise Server のエンタープライズアカウントで使用できます。{data variables.product.prodname_GH_advanced_security %}の一部の機能は、GitHub.comのパブリック・リポジトリでも使用できます。詳細については、「GitHub のプラン」を参照してください。

GitHub Advanced Security for Azure DevOps の詳細については、Microsoft Learn の「GitHub Advanced Security for Azure DevOps を構成する」を参照してください。

GitHub Advanced Security の有効化について

GitHub Advanced Securityは、開発者がコードのセキュリティ及び品質を改善し、維持するための役に立ちます。 詳しくは、「GitHub Advanced Security について」を参照してください。

エンタープライズの GitHub Advanced Security を有効にすると、アクセスを制限するポリシーを設定しない限り、すべての組織のリポジトリ管理者が機能を有効にできます。 詳しくは、「エンタープライズのコード セキュリティと分析のためのポリシーの適用」を参照してください。

API を使って Advanced Security の機能を有効または無効にすることもできます。 詳しくは、REST API ドキュメントの「シークレット スキャン」をご覧ください。

GitHub Advanced Security の段階的なデプロイについては、「大規模な GitHub Advanced Security の導入の概要」を参照してください。

ライセンスに GitHub Advanced Security が含まれているかどうかを確認する

  1. GitHub Enterprise Server の右上で、ご自分のプロフィール フォトをクリックしてから、 [Enterprise 設定] をクリックします。

    GitHub Enterprise Server のプロファイル写真をクリックしたときに表示されるドロップダウン メニューのスクリーンショット。 [エンタープライズ設定] オプションが濃いオレンジ色の枠線で強調表示されています。

  2. Enterprise アカウントのサイドバーで、 [設定] をクリックします。

  3. [設定] で、 [ライセンス] をクリックします。

  4. お使いのライセンスに GitHub Advanced Security が含まれている場合、ライセンス ページには現在の使用状況を詳しく示すセクションが含まれます。

GitHub Advanced Security の有効化の前提条件

  1. GitHub Enterprise Server ライセンスをアップグレードして、GitHub Advanced Security を含めることができます。 ライセンスのしくみについて詳しくは、「GitHub Advanced Security の課金について」を参照してください。

  2. 次に、新しいライセンス ファイルをダウンロードします。 詳しくは、「GitHub Enterpriseのライセンスのダウンロード」を参照してください。

  3. 新しいライセンス ファイルを お使いの GitHub Enterprise Server インスタンス にアップロードします。 詳しくは、「GitHub Enterprise Serverへの新しいライセンスのアップロード」を参照してください。

  4. 有効にする機能の前提条件を確認します。

GitHub Advanced Security 機能の有効化と無効化

警告: この設定を変更すると、GitHub Enterprise Server 上のユーザーが利用するサービスが再起動されます。 ユーザーのダウンタイムを最小限に抑えるために、この変更のタイミングは慎重に選ぶ必要があります。

  1. GitHub Enterprise Server の管理アカウントから、任意のページの右上隅で をクリックします。

  2. [サイト管理者] ページにまだ表示されていない場合は、左上隅の [サイト管理者] をクリックします。

  3. [ サイト管理者] サイドバーで [Management Console] をクリックします。

  4. [設定] サイドバーで [セキュリティ] をクリックします。

  5. [セキュリティ] で、有効にする機能を選び、無効にする機能は選択を解除してください。

  6. [設定] サイドバーで [設定の保存] をクリックします。

    注: [Management Console] に設定を保存すると、システム サービスが再起動され、ユーザーに表示されるダウンタイムが発生する可能性があります。

  7. 設定の実行が完了するのを待ってください。

GitHub Enterprise Server の再起動が終了したら、新しく有効になった機能に必要な追加リソースを設定する準備は完了です。 詳しくは、「アプライアンス用コードスキャンの構成」を参照してください。

管理シェル (SSH) を介した GitHub Advanced Security の有効化または無効化

お使いの GitHub Enterprise Server インスタンス に対しプログラムで機能を有効または無効にすることができます。 GitHub Enterprise Server の管理シェルおよびコマンドライン ユーティリティの詳細については、「管理シェル (SSH) にアクセスする」および「コマンド ライン ユーティリティ」を参照してください。

たとえば、ステージングまたはディザスター リカバリーのためにインスタンスをデプロイする場合は、コードとしてのインフラストラクチャ ツールを使用して、GitHub Advanced Security 機能を有効にすることができます。

  1. お使いの GitHub Enterprise Server インスタンス に SSH で接続します。 インスタンスが複数のノードで構成されている場合は (高可用性や geo レプリケーションが構成されている場合など)、プライマリ ノードに SSH 接続します。 クラスターを使用する場合は、任意のノードに SSH 接続できます。 HOSTNAME をインスタンスのホスト名、またはノードのホスト名または IP アドレスに置き換えます。 詳しくは、「管理シェル (SSH) にアクセスする」を参照してください。

    Shell
    ssh -p 122 admin@HOSTNAME
    
  2. GitHub Advanced Security の機能を有効にします。

    • code scanning を有効にするには、次のコマンドを入力します。

      Shell
      ghe-config app.minio.enabled true
      ghe-config app.code-scanning.enabled true
      
    • secret scanning を有効にするには、次のコマンドを入力します。

      Shell
      ghe-config app.secret-scanning.enabled true
      
    • 依存関係グラフを有効にするには、次のコマンドを入力します。

      Shell
      ghe-config app.dependency-graph.enabled true
      
  3. 必要に応じて GitHub Advanced Security の機能を無効にしてください。

    • code scanning を無効にするには、次のコマンドを入力します。

      Shell
      ghe-config app.code-scanning.enabled false
      
      • 必要に応じて、code scanning を無効にした場合、GitHub Advanced Security の内部 MinIO サービスを無効にすることもできます。 インスタンスに対して Dependabot updates が有効になっていて、このサービスを無効にする場合は、Dependabot updates も無効にする必要があります。 サービスを無効にしても、GitHub Actions または GitHub Packages の MinIO ストレージには影響しません。 Dependabot updates について詳しくは、「エンタープライズ向けの Dependabot の有効化」をご覧ください。

        • Dependabot updates を無効にするには、次のコマンドを入力します。

          Shell
          ghe-config app.dependabot.enabled false
          
        • MinIO を無効にするには、次のコマンドを入力します。

          Shell
          ghe-config app.minio.enabled false
          
    • secret scanning を無効にするには、次のコマンドを入力します。

      Shell
      ghe-config app.secret-scanning.enabled false
      
    • 依存関係グラフを無効にするには、次のコマンドを入力します。

      ghe-config app.dependency-graph.enabled false
      
  4. 構成を適用するには、次のコマンドを実行します。

    : 構成の実行中に、お使いの GitHub Enterprise Server インスタンス 上のサービスが再起動する可能性があり、これによりユーザーに短時間のダウンタイムが発生する場合があります。

    Shell
    ghe-config-apply
    
  5. 設定の実行が完了するのを待ってください。