コンテンツにスキップ

署名付きコミット

Aikidoは、コード変更の真正性を保証するため、GitHubGitLab の両方で署名付きコミットをサポートしています。GitHubでは設定不要ですが、GitLabユーザーはAikidoが提供する特定のSSHキーをプロフィールに追加する必要があります。

署名付きコミットを使用する理由

Section titled “署名付きコミットを使用する理由”

署名付きコミットは、コード変更がAikidoによって行われ、改ざんされていないことを証明する暗号学的な保証を提供します。これは以下の点で不可欠です。

  • ID検証: コミットが実際に正規のサービスによって行われたことを保証します。
  • 信頼性とセキュリティ: 悪意のある第三者が信頼できるコントリビューターになりすます「コミットのなりすまし」を防ぎます。
  • 監査対応: SOC2ISO 27001HIPAA などのセキュリティコンプライアンスフレームワークへの対応に役立ちます。

設定は不要です。 GitHubはAikido連携経由で行われたコミットを自動的に認識し、署名します。これらはコミット履歴に即座に 「Verified」 バッジ付きで表示されます。

GitLabで署名付きコミットを有効にするには、個人アクセストークン(PAT) 認証を使用する必要があります。この機能はOAuth経由では利用できません。

ユーザーに関する重要な注意点: GitLabは実在するユーザーアカウントの署名付きコミットのみをサポートしており、サービスアカウントはサポートしていません。Aikidoで使用するPATは、実在するユーザーに属している必要があります。

セットアップ手順:

  1. 設定ページへ移動: Aikidoで AutoFix設定ページ に移動し、Authorize(初回設定時)または Manage Personal Access Token(トークンが既に設定されている場合)をクリックします。
  2. PATを設定: GitLabのユーザー設定で生成した個人アクセストークンをAikidoに入力します。
  3. SSHキーを生成: Aikido内で Generate SSH key をクリックし、固有の署名用キーを作成します。
  4. GitLabに追加:
    • Aikidoから提供された公開鍵をコピーします。
    • GitLabで、右上の ユーザーアイコン をクリックし > Edit profile > SSH Keys > Add new key と進みます。
    • キーを貼り付け、Usage type「Authentication & Signing」 に設定されていることを確認します。
  5. 検証: Aikidoに戻り、Validate SSH key をクリックして接続が有効であることを確認します。

これで、Aikidoによるコミットに Verified バッジが表示されるようになります。

Aikidoはアカウントごとに固有のSSHキーを作成します。このSSHキーは、Delete SSH Key をクリックして新しいキーを作成することで再生成できます。