View a markdown version of this page

AWS セキュリティエージェントを GitHub リポジトリに接続する - AWS セキュリティエージェント

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS セキュリティエージェントを GitHub リポジトリに接続する

AWS セキュリティエージェントを GitHub リポジトリに接続して、コードレビュー、脅威モデリング、侵入テスト、自動修復機能を有効にします。AWS セキュリティエージェントは、クラウドホスト GitHub とクラウドホスト GitHub Enterprise の両方をサポートしています。開始する前に、エージェントスペースとの統合の仕組み「」を参照して、登録がエージェントスペース間でどのように再利用され、機能間でどのように共有されるかを理解してください。

GitHub 統合には複数の目的があります。

注記

このページでは、クラウドホスト型 GitHub (github.com) とクラウドホスト型 GitHub Enterprise について説明します。セルフホスト型 GitHub Enterprise Server については、「」を参照してくださいAWS セキュリティエージェントを GitHub Enterprise Server に接続する

  • コードレビュー - 各プルリクエストのコード変更を組織のセキュリティ要件に照らして自動的に分析し、オンデマンドのフルリポジトリスキャンを実行します。

  • 脅威モデリング - ソースコード、データフロー、アーキテクチャを分析してアプリケーションの理解を提供します

  • 侵入テストコンテキスト - ソースコードを分析して、侵入テストに関するアプリケーションの理解を提供します

  • 自動修復 - セキュリティ評価中に検出された脆弱性の修正を含むプルリクエストを送信する

GitHub を AWS セキュリティエージェントに接続するには、GitHub 組織またはユーザーアカウントの AWS セキュリティエージェント GitHub アプリを承認してから、AWS コンソールに接続を登録する必要があります。

GitHub 統合の仕組み

プルリクエスト分析は GitHub 内で行われます。GitHub アプリを承認し、リポジトリを接続し、AWS マネジメントコンソールでコードレビューコメントを有効にすると、AWS セキュリティエージェントは新しいプルリクエスト (変更されたコードのみの差分スキャン) ごとに変更を自動的にスキャンし、結果をプルリクエストコメントとして投稿します。

リポジトリのコードベース全体をスキャンする完全なコードレビューは、GitHub ではなく AWS Security Agent ウェブアプリケーションで作成して実行します。

侵入テスト脅威モデリングは、AWS セキュリティエージェントウェブアプリケーション内で開始されます。ユーザーは、接続されたリポジトリを選択してアプリケーションコンテキストを提供し、ペネトレーションテストのターゲットドメインを指定します。自動修復を有効にすると、ユーザーは接続されたリポジトリへのプルリクエストを開いて、AWS セキュリティエージェントに検出結果の修正をリクエストできます。

前提条件

開始する前に、以下があることを確認してください。

  • GitHub 組織の管理者アクセスまたは GitHub ユーザーアカウント所有者アクセス

  • AWS マネジメントコンソールでエージェントスペースの統合を設定するアクセス許可

  • コードレビュー、脅威モデリング、侵入テストのために接続するリポジトリを理解する

重要

GitHub アプリは、GitHub アカウントまたは GitHub 組織に一度だけインストールできます。同じ GitHub 組織を AWS セキュリティエージェントに接続する必要がある場合は、統合が最初に登録されたのと同じ AWS アカウントを使用する必要があります。

注記

GitHub エンタープライズ組織が IP 許可リストを有効にしている場合は、GitHub アプリで許可された IP アドレスを受け入れる必要があります。IP アドレスを許可リストに自動的に追加することもできます。詳細については、GitHub ドキュメントの「GitHub Apps によるアクセスの許可」および「許可された IP アドレスの有効化GitHub 」を参照してください。

GitHub リソースへのアクセスには、次の IP アドレスが使用されます。

  • 米国東部 (バージニア北部) (us-east-1)

    • 34.228.181.128

    • 44.219.176.187

    • 54.226.244.221

  • 米国西部 (オレゴン) (us-west-2)

    • 34.212.16.133

    • 52.89.67.212

    • 54.187.135.61

  • アジアパシフィック (ムンバイ) (ap-south-1)

    • 13.126.209.199

    • 13.234.6.24

    • 35.154.102.216

  • アジアパシフィック (シンガポール) (ap-southeast-1)

    • 18.139.13.125

    • 47.130.240.215

    • 54.179.238.173

  • アジアパシフィック (シドニー) (ap-southeast-2)

    • 13.237.95.197

    • 13.238.84.102

    • 52.64.174.242

  • アジアパシフィック (東京) (ap-northeast-1)

    • 13.192.12.233

    • 35.74.181.230

    • 57.183.50.158

  • ヨーロッパ (フランクフルト) (eu-central-1)

    • 18.158.110.140

    • 52.57.96.160

    • 52.59.55.56

  • 欧州 (アイルランド) (eu-west-1)

    • 34.251.85.24

    • 52.30.157.157

    • 52.51.192.222

  • 南米 (サンパウロ) (sa-east-1)

    • 54.94.247.213

    • 54.207.222.14

    • 54.232.201.242

AWS Security Agent GitHub アプリの承認と登録

AWS セキュリティエージェント GitHub アプリが GitHub 組織またはユーザーアカウントにアクセスすることを許可し、AWS コンソールに接続を登録します。

重要

ブラウザを閉じたり、移動したりせずに、このプロセスのすべてのステップを完了します。登録プロセスが中断された場合は、GitHub アプリをアンインストールして最初からやり直す必要がある場合があります。

  1. AWS セキュリティエージェントマネジメントコンソールで、統合に移動します。

  2. [Add integration] (統合の追加) を選択します。

  3. GitHub を選択します。

  4. [次へ] を選択します。

  5. インストールと認可を選択します。

    認可を完了するには、GitHub にリダイレクトされます。接続する組織またはユーザーアカウントへの管理者アクセス権を持つアカウントで GitHub にログインしていることを確認します。

  6. GitHub で、AWS セキュリティエージェント GitHub アプリをインストールするアカウントまたは組織を選択します。

  7. AWS セキュリティエージェントがアクセスできるリポジトリを選択します。

    • すべてのリポジトリ - 組織またはユーザーアカウント内のすべての現在および将来のリポジトリへのアクセスを許可します。

    • リポジトリのみを選択する - ドロップダウンから特定のリポジトリを選択します。複数のリポジトリを一度に 1 つずつ選択できます。

      注記

      GitHub 組織またはユーザーアカウント設定の GitHub アプリ設定にアクセスして、リポジトリへのアクセスをいつでも変更できます。

  8. インストールと認可を選択します。

  9. AWS マネジメントコンソールにリダイレクトされて、登録を完了します。

  10. 登録の詳細セクションで、次のフィールドを設定します。

    1. 登録名 - この GitHub 接続のわかりやすい名前を入力します。Acme-Corp-Org」や「Production-Repos」など、GitHub 組織またはユーザーアカウントを識別する名前を使用します。

    2. アカウントタイプ - ドロップダウンから次のいずれかを選択します。

      • Organization - GitHub 組織アカウントを接続した場合

      • ユーザー - 個人用 GitHub ユーザーアカウントを接続した場合

    3. Organization name (Organization を選択した場合のみ表示されます) - GitHub に表示される GitHub 組織の正確な名前を入力します。

  11. 接続 を選択します。

  12. 確認メッセージが表示され、統合ページに戻り、新しい GitHub 接続が登録名とともに表示されます。追加の GitHub 組織またはユーザーアカウントを接続するには、統合を再度追加を選択してこのプロセスを繰り返します。

GitHub 統合のトラブルシューティング

GitHub 統合プロセス中に問題が発生した場合は、次のガイダンスを使用して一般的な問題を解決します。

登録を完了できません

登録プロセスを完了できなかった場合 (ブラウザが閉じられた、登録ページから移動した、セッションが中断された場合など)、AWS セキュリティエージェント GitHub アプリが GitHub 組織にインストールされているが、AWS コンソールに登録されていない可能性があります。

症状:

  • GitHub アプリを再度認可しようとすると、GitHub には「インストール」ではなく「設定」が表示されます。

  • AWS コンソールで登録を完了できない

  • 統合が統合リストに表示されない

解決策:

  1. GitHub 組織またはユーザーアカウントから AWS セキュリティエージェント GitHub アプリをアンインストールします。

  2. AWS セキュリティエージェントコンソールに戻り、最初から統合プロセスを再開します。

同じ GitHub 組織を統合しようとする複数の AWS アカウント

GitHub アプリは、GitHub アカウントまたは GitHub 組織に一度だけインストールできます。別の AWS セキュリティエージェントアカウントと既に統合されている GitHub 組織のリポジトリを使用する必要がある場合は、統合が最初に登録された AWS アカウントを使用する必要があります。

解決策:

  • GitHub 統合が登録されている AWS セキュリティエージェントアカウントを特定する

  • その AWS アカウントを使用してエージェントスペースを作成し、リポジトリを接続する

  • 統合を別の AWS アカウントに移動する必要がある場合は、まず元の AWS アカウントから GitHub アプリをアンインストールしてから、新しいアカウントと統合します。

次の手順

GitHub を AWS セキュリティエージェントに接続した後:

  • これらのリポジトリを使用するエージェントスペースに移動します。

  • コードレビューを有効にするまたはペネトレーションテストを設定を選択して、特定のリポジトリをエージェントスペースに接続し、その使用状況を設定します。

  • 自動修復を有効にして、AWS セキュリティエージェントが脆弱性修正を含むプルリクエストを送信できるようにします。

  • GitHub 組織設定で GitHub アプリのアクセス許可とリポジトリアクセスを確認する