Local Image ScanningのCircleCI設定
Aikido Security Local Scannerは、お使いの環境内でAikido Securityのスキャンを実行できるツールで、データが社外に出ることはありません。スキャンはローカルで実行され、その結果がAikido Securityプラットフォームにアップロードされます。このセットアップにより、イメージがレジストリに送信される前に、ご自身のマシン上またはCI/CDパイプライン内で任意のイメージをローカルでスキャンできます。
イメージのローカルスキャンのセットアップ方法
1. 認証トークンを取得する
-
認証トークンを生成してコピーします。このトークンは一度しか表示できないことに注意してください。
-
プロジェクトでLocal Scannerを実行する際に、このトークンを引数
--apikeyとして追加します。 -
CircleCIで Project Settings > Environment Variables > Add Environment Variable に移動し、このトークンを環境変数として保存します。

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:
- masterCIでこれを実行する場合は、本番環境とフィーチャーブランチの結果が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に作成され、スキャンのすべての結果が含まれています。