日本語

Local Image ScanningのCircleCI設定

Aikido Security Local Scannerは、お使いの環境内でAikido Securityのスキャンを実行できるツールで、データが社外に出ることはありません。スキャンはローカルで実行され、その結果がAikido Securityプラットフォームにアップロードされます。このセットアップにより、イメージがレジストリに送信される前に、ご自身のマシン上またはCI/CDパイプライン内で任意のイメージをローカルでスキャンできます。

イメージのローカルスキャンのセットアップ方法

1. 認証トークンを取得する

  1. Local Scannerイメージのセットアップページに移動します

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

  3. プロジェクトでLocal Scannerを実行する際に、このトークンを引数 --apikey として追加します。

  4. CircleCIで Project Settings > Environment Variables > Add Environment Variable に移動し、このトークンを環境変数として保存します。

    値と作成タイムスタンプのオプションとともに追加されたAPIキーの環境変数。

2. Local Scannerを実行する

​
あとは、イメージに対してスキャナーを実行するだけです。

version: 2.1

jobs:
  run-aikido-scan:
    machine:
      image: ubuntu-2204:current

    steps:
      - run:
          name: "Your build step here"
          command: docker build .
      - run:
          name: "Run Aikido scan"
          command: docker run --rm -v /var/run/docker.sock:/var/run/docker.sock aikidosecurity/local-scanner image-scan your-local-image-name --apikey "$AIKIDO_API_KEY"
  my-workflow:
    jobs:
      - run-aikido-scan:
          filters:
            branches:
              only:
                - master

CIでこれを実行する場合は、本番環境とフィーチャーブランチの結果がAikido内で混在しないよう、フィーチャーブランチに基づくイメージに対してスキャンを実行しないように注意してください。

レジストリにプッシュする前にリリースゲート付きのスキャンを実行するには、次のようなパイプラインを実行できます。

version: 2.1

jobs:
  run-aikido-scan:
    machine:
      image: ubuntu-2204:current

    steps:
      - run:
          name: "Your build step here"
          command: docker build .
      - run:
          name: "Run Aikido scan"
          command: docker run --rm -v /var/run/docker.sock:/var/run/docker.sock aikidosecurity/local-scanner image-scan your-local-image-name --apikey "$AIKIDO_API_KEY" --fail-on critical
      - run:
          name: "Your push step here"
          command: docker image push ...
  my-workflow:
    jobs:
      - run-aikido-scan:
          filters:
            branches:
              only:
                - master

--fail-on で指定する重大度は、ニーズに合わせて調整してください。

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

最初のスキャンが完了したら、Aikido Feedに移動して結果を確認できます。指定した名前のイメージがAikido UIに作成され、スキャンのすべての結果が含まれています。