ローカルコードスキャンのためのBitbucket Pipelineセットアップ
最終更新
役に立ちましたか?
Aikido Security Local Scanner は、コードが組織外に出ることなく、環境内で Aikido Security スキャンを実行できるようにするツールです。スキャンはローカルで行われ、その後結果は Aikido Security プラットフォームにアップロードされます。この構成により、レポート目的で Local Scanner を Bitbucket プロジェクトに簡単に統合できます。
前提条件: ローカルスキャンを許可するアカウントが作成済みであることを確認してください。 ローカルスキャンアカウントの作成に関する詳細.
次へ移動し、 ローカルスキャナーの設定ページ.
認証トークンを生成してコピーします。このトークンは一度しか表示できないので注意してください。
認証トークンを Bitbucket のリポジトリ変数に追加して、パイプラインで使用できるようにします。これを行うには、リポジトリ設定に移動する必要があります。次に、 Pipelines > リポジトリ変数。 そこで、認証トークンを次のように追加できます AIKIDO_API_KEY をキーとして、コピーしたトークンの内容を値として追加できます。
ローカルスキャナーがデフォルトブランチでのみ起動されるようにしてください。デフォルトでは、Aikido はリポジトリ内の 1 つのブランチのみを対象に、依存関係やコードの問題をスキャンできます。通常は main ブランチまたは master ブランチです。そのため、Aikido プラットフォーム上でスキャン結果が混在しないよう、ローカルスキャナーはそのブランチでのみ実行することを推奨します。
Bitbucket Pipelines でローカルスキャナーを使う最も簡単な方法は、Docker イメージを使用することです。
例 bitbucket-pipelines.yml:
image: aikidosecurity/local-scanner:latest
pipelines:
branches:
main:
- step:
name: Aikido スキャンを実行
script:
- aikido-local-scanner scan . --repositoryname my-bitbucket-app --branchname main --apikey $AIKIDO_API_KEYコマンドを実行する際に、 --branchname オプションを使って、希望するブランチを指定してください。
このリポジトリで最初のスキャンである場合、Aikido は指定した名前でリポジトリを作成し、すべてのスキャン結果をその中に保存します。以後のスキャン結果は、Aikido 内でこのリポジトリ名の下に集約されます。
既定ではすべてのスキャンタイプが実行されます。特定のスキャンだけを実行したい場合(例: SAST のみ)、 --scan-types オプション。CLI オプションの詳細は こちら.
でスキャンタイプを指定できます。リリース前にリポジトリをスキャンする際に役立つ、リリースゲーティングモードや PR ゲーティングモードでもスキャナーを実行できます。リリースゲーティングモードでは、リリース候補に未解決の問題がないことを確認できます。このモードで実行すると、スキャン完了後に選択した重大度以上の未解決の問題がある場合、スキャナープロセスは失敗します。PR ゲーティングモードは、PR で新たに導入された可能性のある問題をスキャンするために使用できます。
リリースゲーティングモードまたは PR ゲーティングモードの詳細は、 この記事.
最初のスキャンが完了したら、Aikido Feed に移動して結果を確認できます。指定した名前のリポジトリが作成され、スキャンのすべての結果が含まれます。
最終更新
役に立ちましたか?
役に立ちましたか?