> 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/wkufurtogaido/migrating-from-sonarqube-to-aikido.md).

# SonarQubeからAikidoへの移行

SonarQubeまたはSonarCloudからAikidoへ移行する方法を学びます。

Aikido は、セキュリティ検出結果、コード品質チェック、PR ゲーティングを 1 つのワークフローにまとめることで、SonarQube と SonarCloud からの移行を支援します。

このガイドを使って、Sonar のワークフローを Aikido にどう割り当てるかを判断し、開発者に驚かれずに移行を進めましょう。

## 移行パスを選ぶ

すべてのリポジトリに同じ移行パスは必要ありません。まずは、現在チームが Sonar にどれだけ依存しているかに合うパスから始めましょう。

| パス             | これを使う場面                                             | やること                                                                                  |
| -------------- | --------------------------------------------------- | ------------------------------------------------------------------------------------- |
| Aikido に直接移行する | あなたの Sonar 設定は、主に Aikido が標準で対応しているワークフローをカバーしています。 | リポジトリを Aikido に接続し、ゲーティングとカスタムルールを設定したうえで、対応する Sonar のチェックを終了します。                     |
| 一時的に両方を実行する    | 開発者のワークフローを変える前に、検出結果を比較したい。                        | まず Aikido を有効にし、短い検証期間だけ Sonar を CI に残して、チームが慣れたら重複する Sonar のチェックを削除します。              |
| 特殊なチェックを確認する   | ワークフロー上重要な、Sonar 固有のチェックやメトリクスに依存している。              | Sonar のワークフローを Aikido に移したうえで、その特殊なチェックを私たちに共有してください。代替機能を優先対応したり、別のワークフローを提案したりできます。 |

## Sonar の概念を Aikido に対応付ける

このマップを使って、各 Sonar ワークフローを Aikido のどこに当てはめるかを判断してください。

| Sonar の概念        | Aikido における対応項目                                                                                                                                                                                                                                                                    | 注記                                                                                   |
| ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
| セキュリティルールと脆弱性    | [SAST と IaC のスキャン](/docs/docs-ja/kdosukyan/scanning-practices/sast-by-aikido-supported-languages-and-security-focus.md)                                                                                                                                                            | Aikido はセキュリティ検出結果に重点を置き、SAST から非セキュリティ系のスタイルノイズを取り除きます。                             |
| 依存関係の検出結果        | [オープンソース依存関係スキャン](/docs/docs-ja/kdosukyan/scanning-practices/support-for-dependency-scanning-by-language.md)                                                                                                                                                                       | Aikido は到達可能性と悪用インテリジェンスも使って、重要なものの優先順位付けを支援します。                                     |
| シークレット           | [ライブシークレット検出](/docs/docs-ja/kdosukyan/scanning-practices/live-secret-detection.md)                                                                                                                                                                                                 | Aikido は漏えいしたシークレットが実際に有効かどうかを確認し、リスクに応じて重大度を調整します。                                  |
| IaC ルール          | [SAST と IaC のスキャン](/docs/docs-ja/kdosukyan/scanning-practices/sast-by-aikido-supported-languages-and-security-focus.md)                                                                                                                                                            | Aikido は Terraform、CloudFormation、Docker、Pulumi、その他の IaC ファイルをスキャンします。               |
| 品質ゲート            | [PR ゲーティング](/docs/docs-ja/prtorirsugtingu/aikido-ci-gating-functionality.md) および [リリースゲーティング](/docs/docs-ja/prtorirsugtingu/cli-for-pr-and-release-gating/aikido-cli-release-and-pr-gating.md)                                                                                     | Aikido は、新しい問題や重大度のしきい値に基づいて、プルリクエストやリリースチェックを失敗させることができます。                          |
| コードカバレッジ         | [Code Coverage](/docs/docs-ja/kdo/code-coverage.md)                                                                                                                                                                                                                                | CI からカバレッジレポートをアップロードし、Aikido でカバレッジを確認します。PR のカバレッジゲートは近日対応予定です。                    |
| プルリクエストの装飾       | [インラインの PR コメントと AutoFix の提案](/docs/docs-ja/prtorirsugtingu/aikido-ci-gating-functionality/autofix-suggestions-and-inline-commenting-for-pr-checks.md)                                                                                                                             | Aikido はプルリクエストにコメントし、開発者を関連するスキャン結果へ誘導します。                                          |
| 品質プロファイル         | [カスタム SAST および IaC ルール](/docs/docs-ja/kdosukyan/scanning-practices/add-custom-sast-iac-rules.md) および [カスタムコードルール](/docs/docs-ja/kdo/add-custom-code-rules.md)                                                                                                                      | まだ役立つルールだけを移行してください。Aikido はすでに、多くの低シグナルなチェックを除外しています。                               |
| コードの臭いと保守性       | [コード品質](/docs/docs-ja/kdo/code-quality-overview.md)                                                                                                                                                                                                                                | Aikido Code Quality は、PR チェック、リポジトリスキャン、チーム固有の標準をカバーします。                             |
| 誤検知、修正しない、受け入れ済み | [課題を無視する](/docs/docs-ja/hajimeni/core-functionalities/ignore-issues-to-remove-issues-from-main-feed.md) および [課題をスヌーズする](/docs/docs-ja/hajimeni/core-functionalities/snooze-issues-for-later.md)                                                                                    | 受け入れ済みのリスクや誤検知には無視を使ってください。後で見直したい課題にはスヌーズを使ってください。                                  |
| `//NOSONAR` 抑制   | [`NOAIKIDO` コメント](/docs/docs-ja/kdosukyan/scanning-practices/excluding-sast-findings-using-comments.md) および [`.aikido` ファイル](/docs/docs-ja/kdosukyan/scanning-practices/ignore-via-code-with-aikido-files.md)                                                                      | レビュー可能な判断には UI での無視を優先してください。使用してください `NOAIKIDO` 例外がリポジトリ内にあるべき場合に。                  |
| セキュリティホットスポット    | [SAST](/docs/docs-ja/kdosukyan/scanning-practices/sast-by-aikido-supported-languages-and-security-focus.md), [SAST AutoTriage](/docs/docs-ja/aikido-agent/sast-autotriage.md)、および [到達可能性分析](/docs/docs-ja/hajimeni/reachability-analysis/introduction-to-reachability-analysis.md) | これは 1 対 1 の対応ではありません。Aikido は実行可能なセキュリティ検出結果に焦点を当て、トリアージシグナルを使って低リスク結果の手動レビューを減らします。 |
| レポートとダッシュボード     | [セキュリティ監査レポート](/docs/docs-ja/konpuraiansutorepto/reports/security-audit-report.md) および [経時的トレンドレポート](/docs/docs-ja/konpuraiansutorepto/reports/trends-over-time-report.md)                                                                                                         | Aikido のレポートは、セキュリティレビュー、コンプライアンス証跡、トレンド追跡に使用できます。                                   |
| 修復ガイダンス          | [AutoFix](/docs/docs-ja/autofixto/overview-aikido-autofix.md)                                                                                                                                                                                                                      | Aikido はオープンソース依存関係、SAST、IaC、コンテナの修正を作成できます。                                         |

## 移行チェックリスト

{% stepper %}
{% step %}

### リポジトリを接続する

まず、ソースコード管理（SCM）統合を通じて Aikido にスキャンさせたいリポジトリを接続します。通常、最初に各リポジトリへスキャナ設定ファイルを追加する必要はありません。Aikido を SCM に接続すると、push 時、毎日の再スキャン、プルリクエストのアクティビティでスキャンできます。

お使いの SCM のセットアップガイドを使用してください：

* [GitHub](/docs/docs-ja/kdosukyan/connect-your-source-code/connect-github-account-to-aikido.md)
* [GitLab](/docs/docs-ja/kdosukyan/connect-your-source-code/connect-gitlab-account-to-aikido.md)
* [Bitbucket](/docs/docs-ja/kdosukyan/connect-your-source-code/connect-bitbucket-account-to-aikido.md)
* [Azure DevOps](/docs/docs-ja/kdosukyan/connect-your-source-code/connect-azure-devops-projects-to-aikido.md)

参照 [ソースコードを接続する](/docs/docs-ja/kdosukyan/connect-your-source-code.md) すべてのセットアップオプションについて。
{% endstep %}

{% step %}

### Sonar のワークフローに合わせる

現在そのリポジトリで Sonar が行っている内容に一致する Aikido ワークフローを有効にします：

* コードとインフラのセキュリティ向けの SAST および IaC スキャン
* CVE とライセンスリスク向けのオープンソース依存関係スキャン
* 有効性チェック付きシークレットスキャン
* 保守性とチーム固有の標準向けの Code Quality
* CI からのテストカバレッジレポート向け Code Coverage
* プルリクエストをブロックするための PR ゲーティング

IDE で Sonar を使っている場合は、 [Aikido IDE プラグイン](/docs/docs-ja/aitotsru/ide-plugins-overview.md) を確認し、開発者がコミット前に問題を見つけられるようにしてください。
{% endstep %}

{% step %}

### 役立つカスタムルールを移行する

Sonar の品質プロファイルのルールを、最初からすべてコピーしないでください。まず、Aikido がそのリスクやパターンをすでにカバーしているか確認しましょう。Aikido は標準でより広い範囲をカバーしていることが多いため、多くの Sonar ルールにはカスタム代替が不要です。

環境固有のセキュリティ、アーキテクチャ、またはチーム標準の判断を表すルールなど、まだ価値のあるルールだけを移行してください。

使用してください [カスタム SAST および IaC ルール](/docs/docs-ja/kdosukyan/scanning-practices/add-custom-sast-iac-rules.md) セキュリティパターンとインフラのチェック向けに。 [カスタムコードルール](/docs/docs-ja/kdo/add-custom-code-rules.md) チーム固有のコード品質要件向けに使用します。
{% endstep %}

{% step %}

### 受け入れ済みリスクの判断を移行する

False Positive、Won't Fix、または Accepted とマークされた Sonar の課題を確認します。今も同意できる判断を Aikido で再現してください。

使用してください [課題を無視する](/docs/docs-ja/hajimeni/core-functionalities/ignore-issues-to-remove-issues-from-main-feed.md) UI ベースの判断には [`.aikido` ファイル](/docs/docs-ja/kdosukyan/scanning-practices/ignore-via-code-with-aikido-files.md) または [`NOAIKIDO` コメント](/docs/docs-ja/kdosukyan/scanning-practices/excluding-sast-findings-using-comments.md) 例外をリポジトリに置くべき場合に使用します。
{% endstep %}

{% step %}

### PR とリリースのゲートを設定する

Sonar の品質ゲートチェックを、Aikido の PR ゲーティングまたはリリースゲーティングに置き換えて、新しいセキュリティおよびコード品質の問題を対象にします。

Aikido では、重大度のしきい値を設定し、どのスキャンタイプでチェックを失敗させるかを選べます。また、マージをブロックする前に可視性を確保したい場合は、常にグリーンの設定から始めることもできます。参照： [PRゲーティングの概要](/docs/docs-ja/prtorirsugtingu/aikido-ci-gating-functionality.md) および [Aikido CLI: リリースゲーティング](/docs/docs-ja/prtorirsugtingu/cli-for-pr-and-release-gating/aikido-cli-release-and-pr-gating.md).
{% endstep %}

{% step %}

### CI とブランチ保護を更新する

リポジトリで Aikido の設定が完了したら、CI から対応する Sonar のスキャナジョブを削除し、代わりに Aikido のチェックを必須にするようブランチ保護ルールを更新します。

リポジトリが Aikido の設定外の特殊なチェックに依存している場合は、それを共有してください。代替を優先対応するか、別のワークフローを提案できます。
{% endstep %}

{% step %}

### レポートと所有権を確認する

セキュリティ、エンジニアリング、コンプライアンスの各チームが、Aikido で新しいビューをどこで見つけるか把握していることを確認してください。

日常のトリアージにはメインフィードを、開発者のワークフローには PR スキャン結果を、監査やトレンドレビューにはレポートを使ってください。Jira、Linear、Slack、Microsoft Teams に検出結果をルーティングしている場合は、古い Sonar 通知を削除する前にそれらのワークフローを接続してください。
{% endstep %}
{% endstepper %}

## 切り替えチェックリスト

リポジトリから Sonar を削除する前に、次の点を確認してください：

* Aikido がそのリポジトリと正しいブランチをスキャンしている。
* Sonar のカバレッジを使っていた場合、カバレッジレポートが Aikido にアップロードされる。
* PR ゲーティングが、チームが求める重大度しきい値で設定されている。
* 必須のブランチ保護チェックが Aikido を指している。
* 重要なカスタムルールが再作成されているか、意図的に削除されている。
* 受け入れ済みリスクの判断が Aikido でレビューされている。
* チームがまだ必要とする場合、専用の CI チェックが残っている。
* 開発者が、検出結果の確認方法、無視のリクエスト方法、AutoFix の使い方を知っている。

## ヘルプが必要ですか？

Sonar からの移行は、セキュリティ、エンジニアリング、コンプライアンスのワークフローに関わる可能性があります。Sonar のルール、ゲート、レポートを Aikido にどう対応付けるか分からない場合は、 **Intercomチャット** を開いてください。私たちのチームがお手伝いします。


---

# 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/wkufurtogaido/migrating-from-sonarqube-to-aikido.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.
