> For the complete documentation index, see [llms.txt](https://help.aikido.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.aikido.dev/docs/docs-ja/kdosukyan/local-code-scanning/bamboo-setup-for-local-code-scanning.md).

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

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

## ローカルスキャンの設定方法 <a href="#how-to-set-up-local-scanning" id="how-to-set-up-local-scanning"></a>

**前提条件**: Local Scanning を許可するアカウントを作成済みであることを確認してください。 [Local Scanning アカウントの作成方法の詳細](https://help.aikido.dev/en/articles/9070345-how-to-create-an-account-for-local-scanning-on-aikido).

## 1. 認証トークンを取得する <a href="#id-1-get-your-authentication-token" id="id-1-get-your-authentication-token"></a>

1. 次へ移動します： [Local Scanner の設定ページ](https://app.aikido.dev/settings/integrations/localscan).
2. 認証トークンを生成してコピーします。このトークンを表示できるのは一度だけであることに注意してください。
3. 認証トークンを Bitbucket の Plan 変数に追加して、plan で使用できるようにします。これを行うには、plan configuration > Variables に移動する必要があります。そこで、認証トークンを次のように追加できます。 `AIKIDO_API_KEY` をキーとして、コピーしたトークンの内容を値として設定します。変数を Project または Global レベルで定義することもできます（参照 [こちら](https://confluence.atlassian.com/bamboo/bamboo-variables-289277087.html)).

## 2. Local Scanner の実行 <a href="#id-2-running-the-local-scanner" id="id-2-running-the-local-scanner"></a>

ローカルスキャナーがデフォルトブランチでのみトリガーされるようにしてください。既定では、Aikido は依存関係とコードの問題についてリポジトリ内の 1 つのブランチのみをスキャンすることをサポートしており、通常は main または master ブランチです。そのため、Aikido プラットフォーム上でスキャン結果が混在しないように、ローカルスキャナーはそのブランチでのみ実行することをおすすめします。

## Docker を使用する <a href="#using-docker" id="using-docker"></a>

エージェントが Docker を実行できる場合は、Aikido Local Scanner の Docker イメージを使用してスキャンを実行できます。まず、コードをスキャンできるように 'Source Code Checkout' タスクがあることを確認してください。その後、次のように 'Docker' タスクを追加します:

![Atlassian の統合タスク選択ウィンドウで Docker タスクタイプを検索します。](/files/f8fd8ab21e4a463214e7591269ce3823971c9463)

コマンドとして 'Run a Docker container' を選択します。イメージは次で見つけることができます [Docker Hub](https://hub.docker.com/r/aikidosecurity/local-scanner) または [AWS Elastic Container Registry](https://gallery.ecr.aws/z1o3v2w5/aikidosecurity/local-scanner).

コンテナコマンド欄に次のように入力します: `scan . --apikey ${bamboo.AIKIDO_API_KEY} --repositoryname ${bamboo.planRepository.1.name} --branchname ${bamboo.planRepository.1.branch}`

## バイナリを使用する <a href="#using-the-binary" id="using-the-binary"></a>

エージェントに Docker を実行する機能がない場合は、Aikido Local Scanner のバイナリを直接使用できます。これを行うには、正しいバイナリを次からダウンロードしてください [Local Scanner Setup ページ](https://app.aikido.dev/settings/integrations/localscan).\
次に、これをエージェントに機能として追加する必要があります。

* **対象のエージェントに移動する:**
  * Bamboo で、 **ビルドリソース** > **エージェント**.
  * 機能を追加したいエージェントを選択します。
* **実行可能な機能を追加する:**
  * で **エージェント固有の機能** セクションで、 **機能を追加**.
  * を選択 **機能タイプ** > **実行可能**.
  * で **実行可能ラベル**に、Aikido Local Scanner など実行ファイルの名前を入力します。
  * で **パス** フィールドに、エージェントマシン上の aikido-local-scanner バイナリへのパスを指定します。

これで、Aikido Local scanner を Plan の Task として使用できます。まず、コードをスキャンできるように 'Source Code Checkout' タスクがあることを確認してください。その後、次のように 'Command' タスクを追加します:

![ビルド自動化ツールにおけるコマンド実行オプションを示すタスクタイプメニューのスクリーンショット。](/files/a3dab98670915fae94079ea05b2517d8ac26f3e7)

実行ファイルとして 'Aikido Local Scanner' を選択し、Argument フィールドにコマンドパラメータを追加します:

```shellscript
scan . --apikey ${bamboo.AIKIDO_API_KEY} --repositoryname ${bamboo.planRepository.1.name} --branchname ${bamboo.planRepository.1.branch}
```

これがこのリポジトリに対する最初のスキャンである場合、Aikido は指定した名前でリポジトリを作成し、すべてのスキャン結果をそこに保存します。その後のスキャン結果は、Aikido 内でこのリポジトリ名の下に集約されます。

既定ではすべてのスキャンタイプが実行されます。スキャンの一部のみ（例: SAST スキャンのみ）を実行したい場合は、次の `--scan-types` オプションを指定して実行できます。CLI オプションの詳細は次で確認できます [こちら](https://help.aikido.dev/en/articles/9027526-local-scanner-cli-options).

release gating mode または PR gating mode で scanner を実行することもできます。release gating mode は、リリース前にリポジトリをスキャンする際に役立ちます。潜在的なリリースの前に未解決の問題がないことを確認できるためです。release gating mode で実行すると、スキャン完了後に選択した重大度以上の未解決の問題がある場合、scanner プロセスは失敗します。PR gating mode は、PR 内で新たに導入された可能性のある問題をスキャンするために使用できます。

release または PR gating mode に関する詳細は、次で確認できます [この記事](/docs/docs-ja/kdosukyan/local-code-scanning/pr-gating-for-code-using-local-scanner.md).

### 3. スキャン結果を確認する <a href="#id-3-check-your-scanning-results" id="id-3-check-your-scanning-results"></a>

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


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.aikido.dev/docs/docs-ja/kdosukyan/local-code-scanning/bamboo-setup-for-local-code-scanning.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
