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 のどこに置くべきかを判断します。
コードカバレッジ
近日公開
Aikido のカバレッジレポートは近日公開予定です。
Quality Profile
今でも有用なルールだけを移行してください。Aikido はすでに多くのノイズの少ないチェックを除外しています。
//NOSONAR 抑制
レビュー可能な判断には UI での無視を優先してください。 NOAIKIDO 例外をリポジトリ内に置くべき場合は、を使ってください。
セキュリティホットスポット
SAST, SAST 自動トリアージ、および 到達可能性分析
これは 1 対 1 の対応表ではありません。Aikido は実行可能なセキュリティ検出に重点を置き、トリアージ信号を使って低リスク結果の手動レビューを減らします。
移行チェックリスト
リポジトリを接続する
まず、ソースコード管理(SCM)連携を通じて Aikido にスキャンさせたいリポジトリを接続します。通常、各リポジトリに最初からスキャナー設定ファイルを追加する必要はありません。Aikido を SCM に接続すると、push 時、毎日の再スキャン、プルリクエストのアクティビティでスキャンできます。
SCM のセットアップガイドを使用してください:
参照: ソースコードを接続する すべてのセットアップオプションについて。
Sonar のワークフローに合わせる
現在 Sonar がそのリポジトリで行っていることに対応する Aikido ワークフローを有効にします:
コードとインフラのセキュリティのための SAST と IaC スキャン
CVE とライセンスリスクのためのオープンソース依存関係スキャン
有効性チェック付きのシークレットスキャン
保守性とチーム固有の標準のための Code Quality
プルリクエストをブロックするための PR ゲーティング
IDE で Sonar を使っている場合は、 Aikido IDE プラグイン を確認して、開発者がコミット前に問題を見つけられるようにしましょう。
有用なカスタムルールを移行する
Sonar Quality Profile のルールをすべてそのままコピーしないでください。まず、Aikido がすでにそのリスクやパターンをカバーしているか確認します。Aikido は標準でより広い範囲をカバーしていることが多いため、多くの Sonar ルールにはカスタムの置き換えが不要です。
環境固有のセキュリティ、アーキテクチャ、またはチーム標準の判断を表すルールなど、今も価値を追加するルールだけを移行してください。
使用します カスタム SAST および IaC ルール はセキュリティパターンとインフラチェックに使用します。 カスタムコードルール はチーム固有のコード品質要件に使用します。
受け入れ済みリスクの判断を移行する
False Positive、Won't Fix、Accepted とマークされた Sonar の問題を見直します。今も同意できる判断は Aikido で再作成してください。
使用します 問題を無視する は UI ベースの判断に使用します。 .aikido ファイル または NOAIKIDO コメント 例外をリポジトリに残すべき場合は、を使用します。
PR とリリースのゲーティングを設定する
Sonar の Quality Gate チェックを、Aikido の PR ゲーティングまたはリリースゲーティングに置き換えて、新しいセキュリティ問題とコード品質問題を判定します。
Aikido では、重大度のしきい値を設定し、どのスキャンタイプでチェックを失敗させるかを選べます。また、マージをブロックする前に可視化だけしたい場合は、常にグリーンの設定から始めることもできます。 PRゲーティングの概要 と Aikido CLI: リリースゲーティング.
切り替えチェックリスト
リポジトリから Sonar を削除する前に、以下を確認してください:
Aikido がそのリポジトリと正しいブランチをスキャンしている。
PR ゲーティングが、チームが望む重大度のしきい値で設定されている。
必須のブランチ保護チェックが Aikido を参照している。
重要なカスタムルールが再作成されているか、意図的に削除されている。
受け入れ済みリスクの判断が Aikido で確認されている。
チームが今も必要としている場合は、専用 CI チェックが引き続き維持されている。
開発者が検出結果の確認方法、無視のリクエスト方法、AutoFix の使い方を知っている。
お困りですか?
Sonar からの移行は、セキュリティ、エンジニアリング、コンプライアンスのワークフローに影響することがあります。Sonar のルール、ゲート、レポートを Aikido にどう対応付ければよいかわからない場合は、 Intercomチャット を開いてください。私たちのチームがサポートします。
最終更新
役に立ちましたか?