翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS セキュリティエージェントを GitLab リポジトリに接続する
AWS セキュリティエージェントを GitLab クラウドリポジトリに接続して、コードレビュー、脅威モデリング、侵入テスト、自動修復機能を有効にします。開始する前に、エージェントスペースとの統合の仕組み「」を参照して、登録がエージェントスペース間でどのように再利用され、機能間でどのように共有されるかを理解してください。
GitLab 統合には複数の目的があります。
-
コードレビュー - 各マージリクエストのコード変更を組織のセキュリティ要件に照らして自動的に分析し、オンデマンドのフルリポジトリスキャンを実行します。
-
脅威モデリング - ソースコード、データフロー、アーキテクチャを分析してアプリケーションの理解を提供します
-
侵入テストコンテキスト - ソースコードを分析して、侵入テストに関するアプリケーションの理解を提供します。
-
自動修復 - セキュリティ評価中に検出された脆弱性の修正を含むマージリクエストを送信する
GitLab を AWS セキュリティエージェントに接続するには、適切なアクセス許可を持つ GitLab アクセストークンを提供し、接続を AWS コンソールに登録する必要があります。
GitLab 統合の仕組み
マージリクエストの分析は GitLab 内で行われます。アクセストークンを提供し、プロジェクトを接続し、AWS マネジメントコンソールでコードレビューコメントを有効にすると、AWS セキュリティエージェントは新しいマージリクエスト (変更されたコードのみの差分スキャン) ごとに変更を自動的にスキャンし、結果をマージリクエストコメントとして投稿します。
GitLab ではなく AWS Security Agent ウェブアプリケーションで、プロジェクト全体のコードベースをスキャンする完全なコードレビューを作成して実行します。
侵入テストと脅威モデリングは、AWS セキュリティエージェントウェブアプリケーション内で開始されます。ユーザーはターゲットドメインを指定し、接続されたリポジトリを選択してアプリケーションコンテキストを提供します。自動修復を有効にすると、ユーザーは接続されたリポジトリへのマージリクエストを開いて、AWS セキュリティエージェントに検出結果の修正をリクエストできます。
注記
脆弱性が修正される前に開示されないように、パブリック GitLab リポジトリでは自動修復を使用できません。
前提条件
開始する前に、以下があることを確認してください。
-
接続するプロジェクトへのメインテイナーまたは所有者アクセス権を持つ GitLab.com アカウント
-
接続タイプに必要なスコープを持つ GitLab アクセストークン:
-
Personal - すべての読み取りアクセス許可と
apiアクセス許可を持つ個人用アクセストークン。 -
グループ -
read_apiおよびread_repositoryスコープを持つグループアクセストークン。
-
-
AWS Security Agent Management Console で統合を設定するアクセス許可
重要
トークンの有効期限を現在の日付から最大 365 日に設定します。
注記
GitLab Personal Access Tokens は、複数の AWS アカウントで使用できます。GitHub と Atlassian の統合とは異なり、同じ GitLab アカウントを複数の AWS セキュリティエージェントインスタンスに接続することに制限はありません。
GitLab 接続を登録する
-
AWS セキュリティエージェントマネジメントコンソールで、統合に移動します。
-
[Add integration] (統合の追加) を選択します。
-
GitLab を選択し、次へを選択します。
-
アカウントタイプの選択で、次のいずれかを選択します。
-
Personal - 個々の GitLab ユーザーアカウントを接続します。
-
Group - 複数のプロジェクトを含む GitLab グループを接続します。グループ ID を入力します。
-
-
アクセストークンフィールドに、GitLab アクセストークンを貼り付けます。
-
登録名フィールドに、 など、この接続のわかりやすい名前を入力します
Engineering-Team-GitLab。有効な文字は、文字、数字、ピリオド、アンダースコア、ハイフンです。 -
接続 を選択します。
統合ページに戻り、新しい接続が登録名とともに表示されます。
GitLab 統合のトラブルシューティング
GitLab 統合プロセス中に問題が発生した場合は、次のガイダンスを使用して一般的な問題を解決します。
無効または期限切れのトークン
症状
-
統合が接続に失敗する
-
以前は機能していた統合が機能しなくなった
-
認証の失敗を示すエラーメッセージ
解像度
-
GitLab で、ユーザー設定に移動し、アクセストークンを選択します。
-
トークンの有効期限が切れていないことを確認します。
-
トークンのタイプに必要なスコープがあることを確認します。
-
トークンの有効期限が切れている場合は、新しいトークンを作成し、AWS コンソールで統合を更新します。
レート制限
症状
-
コードレビュー中の断続的な障害
-
遅延マージリクエスト分析
解像度
-
GitLab は API リクエストにレート制限を適用します。多数のリポジトリや頻繁なマージリクエストがある場合、一部のリクエストはスロットリングされる可能性があります。
-
レート制限ウィンドウがリセットされるまで待つか、GitLab サポートに連絡してレート制限を引き上げてください。
次の手順
GitLab を AWS セキュリティエージェントに接続した後:
-
これらのリポジトリを使用するエージェントスペースに移動します。
-
コードレビューを有効にするまたはペネトレーションテストを設定を選択して、特定のプロジェクトをエージェントスペースに接続し、その使用状況を設定します。
-
コード修復を有効にして、AWS セキュリティエージェントが脆弱性修正を含むマージリクエストを送信できるようにします
-
プライベートにホストされる GitLab インスタンスについては、「」を参照してください。 AWS セキュリティエージェントを GitLab セルフマネージドに接続する