For the complete documentation index, see llms.txt. This page is also available as Markdown.

ローカルコードスキャン用の AWS CodePipeline セットアップ

Aikido Security Local Scanner は、Aikido Security のスキャンを自社環境内で実行できるツールであり、コードが社外に出ることはありません。スキャンはローカルで実行され、その結果は Aikido Security プラットフォームにアップロードされます。この構成により、レポート用途で Local Scanner を AWS CodePipeline に簡単に統合できます。

Local Scanning の設定方法

前提条件:Local Scanning を利用できるアカウントを作成済みであることを確認してください。 Local Scanning アカウントの作成に関する詳細情報.

このガイドでは、AWS CodePipeline と AWS CodeBuild を使用して AWS 上に CI パイプラインを作成します。パイプラインは、コンテナイメージ内で Aikido Security のローカルスキャナーを使用してセキュリティスキャンを実行します。

1. CodeBuild プロジェクトを作成する

まず、スキャンを実行する CodeBuild プロジェクトを作成します。

CodeBuild に移動する

  1. AWS コンソールを開く

  2. CodeBuild に移動する

  3. 「ビルドプロジェクトを作成」をクリックする

作成する aikido-security-scan プロジェクト。

  • ソース: ソースなしを選択します。ソースは CodePipeline から提供されます。

  • 環境:

    • イメージ: カスタムイメージ

    • コンピュート: EC2

    • 環境タイプ: Linux コンテナ

    • イメージレジストリ: その他のレジストリ

    • 外部レジストリ URL: public.ecr.aws/z1o3v2w5/aikidosecurity/local-scanner:latest

  • Buildspec:

    version: 0.2
    
    phases:
      build:
        commands:
          - aikido-local-scanner scan . --apikey $AIKIDO_API_KEY --repositoryname MyRepo --branchname myDefaultBranch

API キーを CodeBuild プロジェクトに追加する

  • 認証トークンを生成してコピーします。このトークンは一度しか表示できないことに注意してください。

  • このトークンをキー AIKIDO_API_KEY で AWS Secrets Manager に追加し、aikido/local-scanner-api-key などの名前を付けます。完全なシークレット ARN を控えておいてください。すぐに必要になります。

  • CodeBuild プロジェクトは IAM サービスロールで実行されます。このロールには、シークレットを読み取る権限が必要です。次のポリシーを追加し、ARN はあなたのシークレットの ARN に置き換えてください

  • CodeBuild プロジェクトに戻り、「編集」>「環境」>「追加設定」をクリックします。環境変数を追加します:

    • 名前: AIKIDO_API_KEY

    • 値: aikido/local-scanner-api-key

    • タイプ: Secrets Manager

値の形式は <secret-name>:<json-key> です。CodeBuild はビルド時にこれを自動的に解決し、値を環境変数に注入します。詳細は AWS ドキュメント を参照してください。

2. CodePipeline を作成する

スキャンしたいリポジトリ用のパイプラインをセットアップします。 デフォルトブランチでの変更をトリガーするソースステージを追加します。ビルドステージでは、ビルドプロバイダーとして AWS CodeBuild を選択し、 aikido-security-scan ビルドプロジェクトを追加します。これにより、パイプラインは先ほど作成したビルドジョブに接続されます。

3. スキャン結果を確認する

最初のスキャンが完了したら、Aikido Feed に移動して結果を確認できます。リポジトリが作成され、スキャンによるすべての結果が含まれています。

最終更新

役に立ちましたか?